* Fix #201: Account archive download * Export actor and private key in the archive * Optimize BackupService - Add conversation to cached associations of status, because somehow it was forgotten and is source of N+1 queries - Explicitly call GC between batches of records being fetched (Model class allocations are the worst offender) - Stream media files into the tar in 1MB chunks (Do not allocate media file (up to 8MB) as string into memory) - Use #bytesize instead of #size to calculate file size for JSON (Fix FileOverflow error) - Segment media into subfolders by status ID because apparently GIF-to-MP4 media are all named "media.mp4" for some reason * Keep uniquely generated filename in Paperclip::GifTranscoder * Ensure dumped files do not overwrite each other by maintaing directory partitions * Give tar archives a good name * Add scheduler to remove week-old backups * Fix code style issue
		
			
				
	
	
		
			60 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
%table.email-table{ cellspacing: 0, cellpadding: 0 }
 | 
						|
  %tbody
 | 
						|
    %tr
 | 
						|
      %td.email-body
 | 
						|
        .email-container
 | 
						|
          %table.content-section{ cellspacing: 0, cellpadding: 0 }
 | 
						|
            %tbody
 | 
						|
              %tr
 | 
						|
                %td.content-cell.hero
 | 
						|
                  .email-row
 | 
						|
                    .col-6
 | 
						|
                      %table.column{ cellspacing: 0, cellpadding: 0 }
 | 
						|
                        %tbody
 | 
						|
                          %tr
 | 
						|
                            %td.column-cell.text-center.padded
 | 
						|
                              %table.hero-icon{ align: 'center', cellspacing: 0, cellpadding: 0 }
 | 
						|
                                %tbody
 | 
						|
                                  %tr
 | 
						|
                                    %td
 | 
						|
                                      = image_tag full_pack_url('icon_file_download.png'), alt: ''
 | 
						|
 | 
						|
                              %h1= t 'user_mailer.backup_ready.title'
 | 
						|
 | 
						|
%table.email-table{ cellspacing: 0, cellpadding: 0 }
 | 
						|
  %tbody
 | 
						|
    %tr
 | 
						|
      %td.email-body
 | 
						|
        .email-container
 | 
						|
          %table.content-section{ cellspacing: 0, cellpadding: 0 }
 | 
						|
            %tbody
 | 
						|
              %tr
 | 
						|
                %td.content-cell.content-start
 | 
						|
                  .email-row
 | 
						|
                    .col-6
 | 
						|
                      %table.column{ cellspacing: 0, cellpadding: 0 }
 | 
						|
                        %tbody
 | 
						|
                          %tr
 | 
						|
                            %td.column-cell.text-center
 | 
						|
                              %p= t 'user_mailer.backup_ready.explanation'
 | 
						|
 | 
						|
%table.email-table{ cellspacing: 0, cellpadding: 0 }
 | 
						|
  %tbody
 | 
						|
    %tr
 | 
						|
      %td.email-body
 | 
						|
        .email-container
 | 
						|
          %table.content-section{ cellspacing: 0, cellpadding: 0 }
 | 
						|
            %tbody
 | 
						|
              %tr
 | 
						|
                %td.content-cell
 | 
						|
                  %table.column{ cellspacing: 0, cellpadding: 0 }
 | 
						|
                    %tbody
 | 
						|
                      %tr
 | 
						|
                        %td.column-cell.button-cell
 | 
						|
                          %table.button{ align: 'center', cellspacing: 0, cellpadding: 0 }
 | 
						|
                            %tbody
 | 
						|
                              %tr
 | 
						|
                                %td.button-primary
 | 
						|
                                  = link_to full_asset_url(@backup.dump.url) do
 | 
						|
                                    %span= t 'exports.archive_takeout.download'
 |