Sha256: b3fc153a014c054428cdd06144888629f0a5e3e7cf27202628ff444775ebd18b

Contents?: true

Size: 1.29 KB

Versions: 34

Compression:

Stored size: 1.29 KB

Contents

module S3Website
  class Tasks
    def self.push(config_file_dir, site_dir, in_headless_mode = false)
      ConfigLoader.check_project site_dir
      ConfigLoader.check_s3_configuration config_file_dir
      config = S3Website::ConfigLoader.load_configuration config_file_dir
      new_files_count, changed_files_count, deleted_files, changed_files, changed_redirects =
        Uploader.run(site_dir, config, in_headless_mode)
      invalidated_items_count =
        invalidate_cf_dist_if_configured(config, changed_files + deleted_files + changed_redirects)
      {
        :new_files_count => new_files_count,
        :changed_files_count => changed_files_count,
        :deleted_files_count => deleted_files.size,
        :invalidated_items_count => invalidated_items_count,
        :changed_redirects_count => changed_redirects.size
      }
    end

    def self.config_create(dir)
      ConfigLoader.check_s3_configuration dir
    end

    private

    def self.invalidate_cf_dist_if_configured(config, changed_files)
      cloudfront_configured = config['cloudfront_distribution_id'] &&
        (not config['cloudfront_distribution_id'].empty?)
      invalidated_items_count = if cloudfront_configured
        Cloudfront::Invalidator.invalidate(config, changed_files)
      else
        0
      end
    end
  end
end

Version data entries

34 entries across 34 versions & 2 rubygems

Version Path
s3_website-1.8.2 lib/s3_website/tasks.rb
s3_website-1.8.1 lib/s3_website/tasks.rb
s3_website-1.8.0 lib/s3_website/tasks.rb
s3_website_monadic-0.0.15 lib/s3_website/tasks.rb
s3_website_monadic-0.0.14 lib/s3_website/tasks.rb
s3_website_monadic-0.0.13 lib/s3_website/tasks.rb
s3_website_monadic-0.0.12 lib/s3_website/tasks.rb
s3_website_monadic-0.0.11 lib/s3_website/tasks.rb
s3_website_monadic-0.0.9 lib/s3_website/tasks.rb
s3_website_monadic-0.0.8 lib/s3_website/tasks.rb
s3_website_monadic-0.0.7 lib/s3_website/tasks.rb
s3_website_monadic-0.0.6 lib/s3_website/tasks.rb
s3_website_monadic-0.0.5 lib/s3_website/tasks.rb
s3_website-1.7.6 lib/s3_website/tasks.rb
s3_website_monadic-0.0.4 lib/s3_website/tasks.rb
s3_website_monadic-0.0.3 lib/s3_website/tasks.rb
s3_website-1.7.5 lib/s3_website/tasks.rb
s3_website_monadic-0.0.2 lib/s3_website/tasks.rb
s3_website_monadic-0.0.1 lib/s3_website/tasks.rb
s3_website-1.7.4 lib/s3_website/tasks.rb