Sha256: ec09831615867a721bba7ce02e5d640aed21f526a37aba44ccbd3b97b9741bdf

Contents?: true

Size: 789 Bytes

Versions: 10

Compression:

Stored size: 789 Bytes

Contents

# frozen_string_literal: true
require 'aws-sdk'

module Hako
  class Scheduler
    class ValidationError < Error
    end

    def initialize(_app_id, _options)
    end

    def deploy(_containers, _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.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

10 entries across 10 versions & 1 rubygems

Version Path
hako-0.8.5 lib/hako/scheduler.rb
hako-0.8.4 lib/hako/scheduler.rb
hako-0.8.3 lib/hako/scheduler.rb
hako-0.8.2 lib/hako/scheduler.rb
hako-0.8.1 lib/hako/scheduler.rb
hako-0.8.0 lib/hako/scheduler.rb
hako-0.7.4 lib/hako/scheduler.rb
hako-0.7.3 lib/hako/scheduler.rb
hako-0.7.2 lib/hako/scheduler.rb
hako-0.7.1 lib/hako/scheduler.rb