Sha256: 20a70b19f14254f668f5be92bc06ab1de7aa4964df0d5cd53d6e93f59e634e28

Contents?: true

Size: 1.61 KB

Versions: 14

Compression:

Stored size: 1.61 KB

Contents

module Aptible
  module CLI
    module Subcommands
      module Restart
        def self.included(thor)
          thor.class_eval do
            include Helpers::Operation
            include Helpers::App

            desc 'restart', 'Restart all services associated with an app'
            option :simulate_oom,
                   type: :boolean,
                   desc: 'Add this flag to simulate an OOM restart and test ' \
                         "your app's response (not recommended on production " \
                         'apps).'
            option :force,
                   type: :boolean,
                   desc: 'Add this flag to use --simulate-oom in a ' \
                         'production environment, which is not allowed by ' \
                         'default.'
            app_options
            def restart
              app = ensure_app(options)
              type = 'restart'

              if options[:simulate_oom]
                type = 'captain_comeback_restart'

                if app.account.type == 'production' && !options[:force]
                  e = 'This operation is designed for test purposes only, ' \
                      "but #{app.handle} is deployed in a production " \
                      'environment. Are you sure you want to do this? If ' \
                      'so, use the --force flag.'
                  raise Thor::Error, e
                end
              end

              operation = app.create_operation!(type: type)
              puts 'Restarting app...'
              attach_to_operation_logs(operation)
            end
          end
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
aptible-cli-0.14.1 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.14.0 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.13.0 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.12.0 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.11.2 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.11.1 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.11.0 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.10.0 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.9.0 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.8.6 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.8.5 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.8.4 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.8.3 lib/aptible/cli/subcommands/restart.rb
aptible-cli-0.8.2 lib/aptible/cli/subcommands/restart.rb