Sha256: beebb01ba85430ed7a7dbcdbe331f8b06c541925efeb3cd7cce04aaab1976f22

Contents?: true

Size: 1.21 KB

Versions: 2

Compression:

Stored size: 1.21 KB

Contents

# frozen_string_literal: true

module Capistrano
  module ASG
    module Rolling
      # Base class for exceptions.
      class Exception < StandardError
      end

      class NoAutoScalingGroup < Capistrano::ASG::Rolling::Exception
      end

      class NoLaunchTemplate < Capistrano::ASG::Rolling::Exception
      end

      class StartInstanceRefreshError < Capistrano::ASG::Rolling::Exception
      end

      # Exception when the instance refresh failed on one of the ASGs.
      class InstanceRefreshFailed < Capistrano::ASG::Rolling::Exception
        def initialize
          super('Failed to update Auto Scaling Group(s)')
        end
      end

      # Exception when instance terminate has failed.
      class InstanceTerminateFailed < Capistrano::ASG::Rolling::Exception
        attr_reader :instance

        def initialize(instance, exception)
          @instance = instance
          super(exception)
        end
      end

      # Exception when no instances could be launched.
      class NoInstancesLaunched < Capistrano::ASG::Rolling::Exception
        def initialize
          super('No instances have been launched. Are you using a configuration with rolling deployments?')
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
capistrano-asg-rolling-0.5.1 lib/capistrano/asg/rolling/exception.rb
capistrano-asg-rolling-0.5.0 lib/capistrano/asg/rolling/exception.rb