Module: StackMaster

Extended by:
StackMaster
Included in:
StackMaster
Defined in:
lib/stack_master.rb,
lib/stack_master/cli.rb,
lib/stack_master/diff.rb,
lib/stack_master/stack.rb,
lib/stack_master/utils.rb,
lib/stack_master/config.rb,
lib/stack_master/ctrl_c.rb,
lib/stack_master/command.rb,
lib/stack_master/version.rb,
lib/stack_master/identity.rb,
lib/stack_master/prompter.rb,
lib/stack_master/validator.rb,
lib/stack_master/change_set.rb,
lib/stack_master/commands/nag.rb,
lib/stack_master/role_assumer.rb,
lib/stack_master/stack_differ.rb,
lib/stack_master/stack_states.rb,
lib/stack_master/stack_status.rb,
lib/stack_master/aws_driver/s3.rb,
lib/stack_master/commands/diff.rb,
lib/stack_master/commands/init.rb,
lib/stack_master/commands/lint.rb,
lib/stack_master/commands/tidy.rb,
lib/stack_master/commands/apply.rb,
lib/stack_master/commands/drift.rb,
lib/stack_master/resolver_array.rb,
lib/stack_master/template_utils.rb,
lib/stack_master/test_driver/s3.rb,
lib/stack_master/commands/delete.rb,
lib/stack_master/commands/events.rb,
lib/stack_master/commands/status.rb,
lib/stack_master/commands/compile.rb,
lib/stack_master/commands/outputs.rb,
lib/stack_master/parameter_loader.rb,
lib/stack_master/sns_topic_finder.rb,
lib/stack_master/stack_definition.rb,
lib/stack_master/commands/validate.rb,
lib/stack_master/template_compiler.rb,
lib/stack_master/commands/resources.rb,
lib/stack_master/parameter_resolver.rb,
lib/stack_master/parameter_validator.rb,
lib/stack_master/commands/list_stacks.rb,
lib/stack_master/stack_events/fetcher.rb,
lib/stack_master/security_group_finder.rb,
lib/stack_master/stack_events/streamer.rb,
lib/stack_master/stack_events/presenter.rb,
lib/stack_master/parameter_resolvers/env.rb,
lib/stack_master/commands/terminal_helper.rb,
lib/stack_master/parameter_resolvers/ejson.rb,
lib/stack_master/aws_driver/cloud_formation.rb,
lib/stack_master/paged_response_accumulator.rb,
lib/stack_master/test_driver/cloud_formation.rb,
lib/stack_master/parameter_resolvers/ami_finder.rb,
lib/stack_master/parameter_resolvers/latest_ami.rb,
lib/stack_master/sparkle_formation/template_file.rb,
lib/stack_master/parameter_resolvers/one_password.rb,
lib/stack_master/parameter_resolvers/stack_output.rb,
lib/stack_master/parameter_resolvers/security_group.rb,
lib/stack_master/parameter_resolvers/sns_topic_name.rb,
lib/stack_master/parameter_resolvers/acm_certificate.rb,
lib/stack_master/parameter_resolvers/parameter_store.rb,
lib/stack_master/parameter_resolvers/latest_container.rb,
lib/stack_master/parameter_resolvers/latest_ami_by_tags.rb,
lib/stack_master/sparkle_formation/compile_time/state_builder.rb,
lib/stack_master/sparkle_formation/compile_time/value_builder.rb,
lib/stack_master/sparkle_formation/compile_time/empty_validator.rb,
lib/stack_master/sparkle_formation/compile_time/value_validator.rb,
lib/stack_master/sparkle_formation/compile_time/number_validator.rb,
lib/stack_master/sparkle_formation/compile_time/string_validator.rb,
lib/stack_master/sparkle_formation/compile_time/max_size_validator.rb,
lib/stack_master/sparkle_formation/compile_time/min_size_validator.rb,
lib/stack_master/sparkle_formation/compile_time/max_length_validator.rb,
lib/stack_master/sparkle_formation/compile_time/min_length_validator.rb,
lib/stack_master/sparkle_formation/compile_time/parameters_validator.rb,
lib/stack_master/sparkle_formation/compile_time/definitions_validator.rb,
lib/stack_master/sparkle_formation/compile_time/value_validator_factory.rb,
lib/stack_master/sparkle_formation/compile_time/allowed_values_validator.rb,
lib/stack_master/sparkle_formation/compile_time/allowed_pattern_validator.rb

Defined Under Namespace

Modules: AwsDriver, Command, Commands, ParameterResolvers, Prompter, SparkleFormation, StackEvents, StackStates, TemplateCompilers, TemplateUtils, TestDriver, Utils Classes: CLI, ChangeSet, Config, CtrlC, Diff, Identity, PagedResponseAccumulator, ParameterLoader, ParameterResolver, ParameterValidator, RoleAssumer, SecurityGroupFinder, SnsTopicFinder, Stack, StackDefinition, StackDiffer, StackStatus, TemplateCompiler, Validator

Constant Summary collapse

NON_INTERACTIVE_DEFAULT =
false
DEBUG_DEFAULT =
false
QUIET_DEFAULT =
false
SKIP_ACCOUNT_CHECK_DEFAULT =
false
VERSION =
"2.13.0"

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#non_interactive_answerObject

Returns the value of attribute non_interactive_answer.



163
164
165
# File 'lib/stack_master.rb', line 163

def non_interactive_answer
  @non_interactive_answer
end

Instance Method Details

#base_dirObject



166
167
168
# File 'lib/stack_master.rb', line 166

def base_dir
  File.expand_path(File.join(File.dirname(__FILE__), ".."))
end

#cloud_formation_driverObject



170
171
172
# File 'lib/stack_master.rb', line 170

def cloud_formation_driver
  @cloud_formation_driver ||= AwsDriver::CloudFormation.new
end

#cloud_formation_driver=(value) ⇒ Object



174
175
176
# File 'lib/stack_master.rb', line 174

def cloud_formation_driver=(value)
  @cloud_formation_driver = value
end

#colorize(text, color) ⇒ Object



206
207
208
209
210
211
212
# File 'lib/stack_master.rb', line 206

def colorize(text, color)
  if colorize?
    Rainbow(text).color(color)
  else
    text
  end
end

#colorize?Boolean

Returns:

  • (Boolean)


214
215
216
# File 'lib/stack_master.rb', line 214

def colorize?
  ENV.fetch('COLORIZE') { 'true' } == 'true'
end

#debug(message) ⇒ Object



135
136
137
138
# File 'lib/stack_master.rb', line 135

def debug(message)
  return unless debug?
  stderr.puts Rainbow("[DEBUG] #{message}").color(:green)
end

#debug!Object



126
127
128
# File 'lib/stack_master.rb', line 126

def debug!
  @debug = true
end

#debug?Boolean

Returns:

  • (Boolean)


131
132
133
# File 'lib/stack_master.rb', line 131

def debug?
  @debug
end

#interactive?Boolean

Returns:

  • (Boolean)


113
114
115
# File 'lib/stack_master.rb', line 113

def interactive?
  !non_interactive?
end

#non_interactive!Object



122
123
124
# File 'lib/stack_master.rb', line 122

def non_interactive!
  @non_interactive = true
end

#non_interactive?Boolean

Returns:

  • (Boolean)


117
118
119
# File 'lib/stack_master.rb', line 117

def non_interactive?
  @non_interactive
end

#quiet!Object



140
141
142
# File 'lib/stack_master.rb', line 140

def quiet!
  @quiet = true
end

#quiet?Boolean

Returns:

  • (Boolean)


145
146
147
# File 'lib/stack_master.rb', line 145

def quiet?
  @quiet
end

#reset_flagsObject



149
150
151
152
# File 'lib/stack_master.rb', line 149

def reset_flags
  @quiet = QUIET_DEFAULT
  @skip_account_check = SKIP_ACCOUNT_CHECK_DEFAULT
end

#s3_driverObject



178
179
180
# File 'lib/stack_master.rb', line 178

def s3_driver
  @s3_driver ||= AwsDriver::S3.new
end

#s3_driver=(value) ⇒ Object



182
183
184
# File 'lib/stack_master.rb', line 182

def s3_driver=(value)
  @s3_driver = value
end

#skip_account_check!Object



154
155
156
# File 'lib/stack_master.rb', line 154

def 
  @skip_account_check = true
end

#skip_account_check?Boolean

Returns:

  • (Boolean)


159
160
161
# File 'lib/stack_master.rb', line 159

def 
  @skip_account_check
end

#stderrObject



198
199
200
# File 'lib/stack_master.rb', line 198

def stderr
  @stderr || $stderr
end

#stderr=(io) ⇒ Object



202
203
204
# File 'lib/stack_master.rb', line 202

def stderr=(io)
  @stderr = io
end

#stdinObject



194
195
196
# File 'lib/stack_master.rb', line 194

def stdin
  $stdin
end

#stdoutObject



186
187
188
# File 'lib/stack_master.rb', line 186

def stdout
  @stdout || $stdout
end

#stdout=(io) ⇒ Object



190
191
192
# File 'lib/stack_master.rb', line 190

def stdout=(io)
  @stdout = io
end