Sha256: b5bfaec70357d90af74a7b3317054d6977d61a66de7583be84ee3371faf9442b

Contents?: true

Size: 797 Bytes

Versions: 1

Compression:

Stored size: 797 Bytes

Contents

require 'aws-sdk'

module Hako
  class Scheduler
    class ValidationError < Error
    end

    def initialize(_app_id, _options)
    end

    def deploy(_image_tag, _env, _app_port, _front_config, _options)
      raise NotImplementedError
    end

    def status
      raise NotImplementedError
    end

    def remove
      raise NotImplementedError
    end

    def upload_front_config(app_id, front, app_port)
      front_conf = front.generate_config(app_port)
      s3_config = front.config.s3
      s3 = Aws::S3::Client.new(region: s3_config.region)
      s3.put_object(
        body: front_conf,
        bucket: s3_config.bucket,
        key: s3_config.key(app_id),
      )
    end

    private

    def validation_error!(message)
      raise ValidationError.new(message)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
hako-0.2.0 lib/hako/scheduler.rb