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.2"

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#non_interactive_answerObject

Returns the value of attribute non_interactive_answer.



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

def non_interactive_answer
  @non_interactive_answer
end

Instance Method Details

#base_dirObject



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

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

#cloud_formation_driverObject



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

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

#cloud_formation_driver=(value) ⇒ Object



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

def cloud_formation_driver=(value)
  @cloud_formation_driver = value
end

#colorize(text, color) ⇒ Object



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

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

#colorize?Boolean

Returns:

  • (Boolean)


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

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

#debug(message) ⇒ Object



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

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

#debug!Object



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

def debug!
  @debug = true
end

#debug?Boolean

Returns:

  • (Boolean)


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

def debug?
  @debug
end

#interactive?Boolean

Returns:

  • (Boolean)


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

def interactive?
  !non_interactive?
end

#non_interactive!Object



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

def non_interactive!
  @non_interactive = true
end

#non_interactive?Boolean

Returns:

  • (Boolean)


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

def non_interactive?
  @non_interactive
end

#quiet!Object



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

def quiet!
  @quiet = true
end

#quiet?Boolean

Returns:

  • (Boolean)


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

def quiet?
  @quiet
end

#reset_flagsObject



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

def reset_flags
  @quiet = QUIET_DEFAULT
  @skip_account_check = SKIP_ACCOUNT_CHECK_DEFAULT
end

#s3_driverObject



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

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

#s3_driver=(value) ⇒ Object



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

def s3_driver=(value)
  @s3_driver = value
end

#skip_account_check!Object



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

def 
  @skip_account_check = true
end

#skip_account_check?Boolean

Returns:

  • (Boolean)


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

def 
  @skip_account_check
end

#stderrObject



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

def stderr
  @stderr || $stderr
end

#stderr=(io) ⇒ Object



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

def stderr=(io)
  @stderr = io
end

#stdinObject



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

def stdin
  $stdin
end

#stdoutObject



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

def stdout
  @stdout || $stdout
end

#stdout=(io) ⇒ Object



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

def stdout=(io)
  @stdout = io
end