module CartBinaryUploader

Constants

VERSION

Public Class Methods

copy_template_yaml() click to toggle source
# File lib/cartup.rb, line 58
def self.copy_template_yaml
  from_source_file = './lib/template.yaml'.freeze
  to_destination_file = './cart_uploader.yaml'.freeze

  if File.file?(to_destination_file)
    throw :cart_up_already_initialized
  end

  CartBinaryUploader.copy_with_path from_source_file, to_destination_file
end
copy_with_path(src, dst) click to toggle source
# File lib/cartup.rb, line 69
def self.copy_with_path(src, dst)
  FileUtils.mkdir_p(File.dirname(dst))
  FileUtils.cp(src, dst)
end
get_config() click to toggle source
# File lib/cartup.rb, line 74
def self.get_config
  begin
    CartLogger.log_info 'Creating project config'
    path = FileUtils.pwd + '/cart_uploader.yaml'
    yaml_file = YAML.load_file(path)
    object = JSON.parse(yaml_file.to_json, object_class: OpenStruct)
    CartLogger.log_info 'project config Created'
    object
  rescue SystemCallError
    CartLogger.log_error 'Problem to find or pase yaml file'
    exit
  end

end
init() click to toggle source
# File lib/cartup.rb, line 54
def self.init
  CartBinaryUploader.copy_template_yaml
end
run() click to toggle source
# File lib/cartup.rb, line 14
def self.run
  config = get_config

  framework_version = config.project.framework.version

  git_helper = GitHelper.new

  cloud_storage = setup config
  cloud_storage.upload_framework
  git_helper.tag_to framework_version
  git_helper.push
end
setup(config) click to toggle source
# File lib/cartup.rb, line 27
def self.setup config
  if !config.project.google.nil?
    CartLogger.log_info 'Starting with google cloud'
    setup_google_cloud config
  else
    CartLogger.log_info 'Starting with s3 cloud'
    setup_s3_cloud config
  end
end
setup_google_cloud(config) click to toggle source
# File lib/cartup.rb, line 37
def self.setup_google_cloud(config)
  GoogleCloudStorage.new(config.project.google.project_id,
                         config.project.google.credentials_file,
                         config.project.google.bucket,
                         config.project.framework.name,
                         config.project.framework.version)
end
setup_s3_cloud(config) click to toggle source
# File lib/cartup.rb, line 45
def self.setup_s3_cloud(config)
  S3CloudStorage.new(config.project.s3.bucket_name,
                     config.project.s3.bucket_access_key,
                     config.project.s3.bucket_secret_key,
                     config.project.s3.region,
                     config.project.framework.name,
                     config.project.framework.version)
end