Class: Jekyll::S3::Uploader

Inherits:
Object
  • Object
show all
Defined in:
lib/jekyll-s3/uploader.rb

Class Method Summary collapse

Class Method Details

.run(site_dir, config, in_headless_mode = false) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/jekyll-s3/uploader.rb', line 4

def self.run(site_dir, config, in_headless_mode = false)
  puts "Deploying _site/* to #{config['s3_bucket']}"

  s3 = AWS::S3.new(:access_key_id => config['s3_id'],
                   :secret_access_key => config['s3_secret'],
                   :s3_endpoint => Endpoint.new(config['s3_endpoint']).hostname )

  new_files_count, changed_files_count, changed_files = upload_files(
    s3, config, site_dir
  )

  deleted_files_count = remove_superfluous_files(s3, { :s3_bucket => config['s3_bucket'],
                                                       :site_dir => site_dir,
                                                       :in_headless_mode => in_headless_mode,
                                                       :ignore_on_server => config["ignore_on_server"] })

  print_done_report config

  [new_files_count, changed_files_count, deleted_files_count, changed_files]
end