Sha256: d29aa5c647ced20ebe58309dacf07142ca1a7d9426a273fe80fba5f565265cc9

Contents?: true

Size: 1.37 KB

Versions: 1

Compression:

Stored size: 1.37 KB

Contents

# frozen_string_literal: true

require 'set'

module Capistrano
  module ASG
    module Rolling
      # Singleton that holds the configuration.
      module Configuration
        extend Capistrano::DSL

        module_function

        # Registered Auto Scaling Groups.
        def autoscale_groups
          @autoscale_groups ||= AutoscaleGroups.new
        end

        # Launched Instances.
        def instances
          @instances ||= Instances.new
        end

        # Updated Launch Templates.
        def launch_templates
          @launch_templates ||= Set.new
        end

        def aws_access_key_id
          fetch(:aws_access_key_id)
        end

        def aws_secret_access_key
          fetch(:aws_secret_access_key)
        end

        def aws_region
          fetch(:aws_region)
        end

        def auto_scaling_group_name
          fetch(:asg_rolling_group_name)
        end

        def ssh_options
          fetch(:asg_rolling_ssh_options, fetch(:ssh_options))
        end

        def instance_overrides
          fetch(:asg_rolling_instance_overrides)
        end

        def use_private_ip_address?
          fetch(:asg_rolling_use_private_ip_address)
        end

        def keep_versions
          fetch(:asg_rolling_keep_versions, fetch(:keep_releases))
        end

        def verbose?
          fetch(:asg_rolling_verbose)
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
capistrano-asg-rolling-0.1.0 lib/capistrano/asg/rolling/configuration.rb