lono 3.5.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +15 -4
- data/.rspec +1 -0
- data/CHANGELOG.md +15 -1
- data/Gemfile +3 -3
- data/Guardfile +17 -8
- data/{LICENSE → LICENSE.txt} +1 -1
- data/README.md +20 -12
- data/Rakefile +1 -2
- data/{bin → exe}/lono +1 -0
- data/lib/lono.rb +12 -9
- data/lib/lono/cfn.rb +7 -9
- data/lib/lono/cfn/{aws_services.rb → aws_service.rb} +1 -1
- data/lib/lono/cfn/base.rb +41 -38
- data/lib/lono/cfn/create.rb +6 -2
- data/lib/lono/cfn/delete.rb +2 -2
- data/lib/lono/cfn/diff.rb +1 -1
- data/lib/lono/cfn/preview.rb +26 -15
- data/lib/lono/cfn/update.rb +11 -9
- data/lib/lono/cfn/util.rb +3 -3
- data/lib/lono/clean.rb +1 -1
- data/lib/lono/cli.rb +71 -39
- data/lib/lono/command.rb +42 -18
- data/lib/lono/completer.rb +162 -0
- data/lib/lono/completer/script.rb +6 -0
- data/lib/lono/completer/script.sh +10 -0
- data/lib/lono/completion.rb +15 -0
- data/lib/lono/core.rb +23 -9
- data/lib/lono/core/config.rb +20 -0
- data/lib/lono/default/settings.yml +33 -13
- data/lib/lono/help.rb +6 -79
- data/lib/lono/help/cfn.md +6 -0
- data/lib/lono/help/cfn/create.md +22 -0
- data/lib/lono/help/cfn/delete.md +5 -0
- data/lib/lono/help/cfn/diff.md +5 -0
- data/lib/lono/help/cfn/download.md +5 -0
- data/lib/lono/help/cfn/preview.md +11 -0
- data/lib/lono/help/cfn/update.md +21 -0
- data/lib/lono/help/completion.md +22 -0
- data/lib/lono/help/completion_script.md +3 -0
- data/lib/lono/help/generate.md +7 -0
- data/lib/lono/help/hello.md +5 -0
- data/lib/lono/help/import.md +7 -0
- data/lib/lono/help/inspect.md +4 -0
- data/lib/lono/help/inspect/depends.md +3 -0
- data/lib/lono/help/inspect/summary.md +3 -0
- data/lib/lono/help/new.md +8 -0
- data/lib/lono/help/param.md +3 -0
- data/lib/lono/{param/help.rb → help/param/generate.md} +1 -9
- data/lib/lono/help/script/build.md +5 -0
- data/lib/lono/help/script/upload.md +8 -0
- data/lib/lono/help/template.md +4 -0
- data/lib/lono/help/template/bashify.md +4 -0
- data/lib/lono/help/template/generate.md +7 -0
- data/lib/lono/help/user_data.md +3 -0
- data/lib/lono/importer.rb +43 -20
- data/lib/lono/inspector.rb +2 -19
- data/lib/lono/inspector/base.rb +2 -2
- data/lib/lono/inspector/{depends.rb → graph.rb} +3 -3
- data/lib/lono/inspector/summary.rb +1 -1
- data/lib/lono/new.rb +79 -26
- data/lib/lono/new/helper.rb +16 -0
- data/lib/lono/new/message.rb +35 -0
- data/lib/lono/param.rb +1 -2
- data/lib/lono/param/generator.rb +34 -86
- data/lib/lono/project_checker.rb +35 -40
- data/lib/lono/script.rb +19 -0
- data/lib/lono/script/base.rb +9 -0
- data/lib/lono/script/build.rb +73 -0
- data/lib/lono/script/upload.rb +81 -0
- data/lib/lono/sequence.rb +33 -0
- data/lib/lono/setting.rb +83 -0
- data/lib/lono/template.rb +8 -9
- data/lib/lono/template/{aws_services.rb → aws_service.rb} +1 -1
- data/lib/lono/template/context.rb +73 -0
- data/lib/lono/template/dsl.rb +63 -64
- data/lib/lono/template/helper.rb +201 -0
- data/lib/lono/template/template.rb +29 -221
- data/lib/lono/template/upload.rb +41 -33
- data/lib/lono/upgrade4.rb +175 -0
- data/lib/lono/user_data.rb +31 -0
- data/lib/lono/version.rb +1 -1
- data/lib/starter_projects/autoscaling/.gitignore +1 -0
- data/lib/starter_projects/{json_project → autoscaling}/Gemfile +0 -0
- data/lib/starter_projects/{yaml_project → autoscaling}/Guardfile +0 -0
- data/lib/starter_projects/autoscaling/README.md +118 -0
- data/lib/starter_projects/autoscaling/app/definitions/base.rb +2 -0
- data/lib/starter_projects/autoscaling/app/templates/autoscaling.yml +682 -0
- data/lib/starter_projects/autoscaling/config/params/base/autoscaling.txt +6 -0
- data/lib/starter_projects/autoscaling/config/settings.yml +33 -0
- data/lib/starter_projects/ec2/.gitignore +1 -0
- data/lib/starter_projects/{yaml_project → ec2}/Gemfile +0 -0
- data/lib/starter_projects/{json_project → ec2}/Guardfile +1 -1
- data/lib/starter_projects/ec2/README.md +86 -0
- data/lib/starter_projects/ec2/app/definitions/base.rb +2 -0
- data/lib/starter_projects/ec2/app/definitions/development.rb +1 -0
- data/lib/starter_projects/ec2/app/definitions/production.rb +1 -0
- data/lib/starter_projects/{yaml_project → ec2/app}/helpers/my_custom_helper.rb +0 -0
- data/lib/starter_projects/{json_project/templates/user_data/app.sh → ec2/app/partials/user_data/bootstrap.sh} +1 -2
- data/lib/starter_projects/{yaml_project → ec2/app}/templates/example.yml +0 -0
- data/lib/starter_projects/{json_project/params/base/api-web.txt → ec2/config/params/base/example.txt} +0 -0
- data/lib/starter_projects/ec2/config/params/development/example.txt +3 -0
- data/lib/starter_projects/ec2/config/params/production/example.txt +2 -0
- data/lib/starter_projects/ec2/config/settings.yml +33 -0
- data/lib/starter_projects/ec2/config/variables/base.rb +3 -0
- data/lib/starter_projects/ec2/config/variables/development.rb +2 -0
- data/lib/starter_projects/ec2/config/variables/production.rb +2 -0
- data/lib/starter_projects/ec2/welcome.txt +8 -0
- data/lib/starter_projects/skeleton/.gitignore +1 -0
- data/lib/starter_projects/skeleton/Gemfile +3 -0
- data/lib/starter_projects/skeleton/Guardfile +12 -0
- data/lib/starter_projects/skeleton/README.md +53 -0
- data/{spec/fixtures/my_project/templates/.gitkeep → lib/starter_projects/skeleton/app/definitions/base.rb} +0 -0
- data/lib/starter_projects/skeleton/config/settings.yml +33 -0
- data/lib/starter_projects/skeleton/welcome.txt +7 -0
- data/lono.gemspec +12 -10
- data/spec/fixtures/lono_project/.gitignore +1 -0
- data/spec/fixtures/lono_project/Gemfile +3 -0
- data/spec/fixtures/lono_project/Guardfile +12 -0
- data/spec/fixtures/lono_project/app/definitions/base.rb +10 -0
- data/spec/fixtures/lono_project/app/definitions/base/more.rb +7 -0
- data/spec/fixtures/lono_project/app/definitions/development.rb +1 -0
- data/spec/fixtures/lono_project/app/definitions/production.rb +1 -0
- data/spec/fixtures/lono_project/app/helpers/custom_helper.rb +5 -0
- data/spec/fixtures/lono_project/app/partials/security_group.yml +10 -0
- data/{lib/starter_projects/yaml_project/templates/partial → spec/fixtures/lono_project/app/partials}/user_data/bootstrap.sh +8 -2
- data/spec/fixtures/lono_project/app/templates/example.yml +50 -0
- data/{lib/starter_projects/yaml_project/params/base/api-web-prod.txt → spec/fixtures/lono_project/config/params/base/example.txt} +1 -0
- data/spec/fixtures/lono_project/config/params/development/example.txt +1 -0
- data/spec/fixtures/lono_project/config/params/production/example.txt +1 -0
- data/spec/fixtures/lono_project/config/settings.yml +31 -0
- data/spec/fixtures/lono_project/config/variables/base.rb +3 -0
- data/spec/fixtures/lono_project/config/variables/development.rb +1 -0
- data/spec/fixtures/lono_project/config/variables/production.rb +1 -0
- data/spec/fixtures/params/envonly/params/{prod → development}/network.txt +0 -0
- data/spec/fixtures/params/overlay/params/{prod → development}/network.txt +0 -0
- data/spec/fixtures/raw_templates/aws-waf-security-automations.template +2 -2
- data/spec/lib/lono/cfn_spec.rb +6 -9
- data/spec/lib/lono/cli_spec.rb +44 -0
- data/spec/lib/lono/completion_spec.rb +17 -0
- data/spec/lib/lono/inspect_spec.rb +6 -15
- data/spec/lib/lono/param/generator_spec.rb +45 -26
- data/spec/lib/lono/param_spec.rb +1 -3
- data/spec/lib/lono/setting_spec.rb +47 -0
- data/spec/lib/lono/template/dsl_spec.rb +33 -157
- data/spec/lib/lono/template_spec.rb +4 -16
- data/spec/spec_helper.rb +45 -14
- metadata +168 -82
- data/.coveralls.yml +0 -1
- data/lib/lono/cfn/help.rb +0 -103
- data/lib/lono/current_region.rb +0 -42
- data/lib/lono/inspector/help.rb +0 -21
- data/lib/lono/settings.rb +0 -45
- data/lib/lono/template/help.rb +0 -25
- data/lib/lono/template/helpers.rb +0 -136
- data/lib/starter_projects/json_project/.gitignore +0 -1
- data/lib/starter_projects/json_project/config/templates/base/blog.rb +0 -20
- data/lib/starter_projects/json_project/config/templates/base/stacks.rb +0 -58
- data/lib/starter_projects/json_project/templates/db.json +0 -212
- data/lib/starter_projects/json_project/templates/partial/host_record.json +0 -28
- data/lib/starter_projects/json_project/templates/partial/server.json +0 -45
- data/lib/starter_projects/json_project/templates/user_data/db.sh +0 -39
- data/lib/starter_projects/json_project/templates/user_data/db2.sh +0 -2
- data/lib/starter_projects/json_project/templates/user_data/ruby_script.rb +0 -5
- data/lib/starter_projects/json_project/templates/web.json +0 -386
- data/lib/starter_projects/yaml_project/.gitignore +0 -1
- data/lib/starter_projects/yaml_project/config/templates/base/blog.rb +0 -20
- data/lib/starter_projects/yaml_project/config/templates/base/stacks.rb +0 -56
- data/lib/starter_projects/yaml_project/config/templates/prod/stacks.rb +0 -1
- data/lib/starter_projects/yaml_project/config/templates/stag/stacks.rb +0 -1
- data/lib/starter_projects/yaml_project/config/variables/base/variables.rb +0 -4
- data/lib/starter_projects/yaml_project/config/variables/prod/variables.rb +0 -1
- data/lib/starter_projects/yaml_project/config/variables/stag/variables.rb +0 -1
- data/lib/starter_projects/yaml_project/params/base/example.txt +0 -2
- data/lib/starter_projects/yaml_project/params/prod/example.txt +0 -1
- data/lib/starter_projects/yaml_project/params/stag/example.txt +0 -1
- data/lib/starter_projects/yaml_project/templates/db.yml +0 -148
- data/lib/starter_projects/yaml_project/templates/partial/host_record.yml +0 -14
- data/lib/starter_projects/yaml_project/templates/partial/server.yml +0 -59
- data/lib/starter_projects/yaml_project/templates/web.yml +0 -206
- data/spec/fixtures/my_project/config/templates/base/stacks.rb +0 -3
- data/spec/fixtures/my_project/params/my-stack.txt +0 -3
- data/spec/fixtures/my_project/templates/my-stack.yml +0 -0
- data/spec/lib/lono/new_spec.rb +0 -59
- data/spec/lib/lono/template/template_spec.rb +0 -104
- data/spec/lib/lono_spec.rb +0 -27
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
module Lono
|
|
2
|
+
class Completion < Command
|
|
3
|
+
desc "script", "generates script that can be eval to setup auto-completion"
|
|
4
|
+
long_desc Help.text("completion:script")
|
|
5
|
+
def script
|
|
6
|
+
Completer::Script.generate
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
desc "completions *PARAMS", "prints words for auto-completion"
|
|
10
|
+
long_desc Help.text("completion:list")
|
|
11
|
+
def list(*params)
|
|
12
|
+
Completer.new(*params).run
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
data/lib/lono/core.rb
CHANGED
|
@@ -2,8 +2,11 @@ require 'pathname'
|
|
|
2
2
|
|
|
3
3
|
module Lono
|
|
4
4
|
module Core
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
autoload :Config, 'lono/core/config'
|
|
6
|
+
|
|
7
|
+
@@config = nil
|
|
8
|
+
def config
|
|
9
|
+
@@config ||= Config.new
|
|
7
10
|
end
|
|
8
11
|
|
|
9
12
|
def root
|
|
@@ -11,14 +14,25 @@ module Lono
|
|
|
11
14
|
Pathname.new(path)
|
|
12
15
|
end
|
|
13
16
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
@@env = nil
|
|
18
|
+
def env
|
|
19
|
+
return @@env if @@env
|
|
20
|
+
ufo_env = env_from_profile(ENV['AWS_PROFILE']) || 'development'
|
|
21
|
+
ufo_env = ENV['LONO_ENV'] if ENV['LONO_ENV'] # highest precedence
|
|
22
|
+
@@env = ufo_env
|
|
23
|
+
end
|
|
20
24
|
|
|
21
|
-
|
|
25
|
+
private
|
|
26
|
+
# Do not use the Setting class to load the profile because it can cause an
|
|
27
|
+
# infinite loop then if we decide to use Lono.env from within settings class.
|
|
28
|
+
def env_from_profile(aws_profile)
|
|
29
|
+
data = YAML.load_file("#{Lono.root}/config/settings.yml")
|
|
30
|
+
env = data.find do |_env, setting|
|
|
31
|
+
setting ||= {}
|
|
32
|
+
profiles = setting['aws_profiles']
|
|
33
|
+
profiles && profiles.include?(aws_profile)
|
|
34
|
+
end
|
|
35
|
+
env.first if env
|
|
22
36
|
end
|
|
23
37
|
end
|
|
24
38
|
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module Lono::Core
|
|
2
|
+
class Config
|
|
3
|
+
PATHS = {
|
|
4
|
+
definitions_path: "app/definitions",
|
|
5
|
+
helpers_path: "app/helpers",
|
|
6
|
+
partials_path: "app/partials",
|
|
7
|
+
scripts_path: "app/scripts",
|
|
8
|
+
templates_path: "app/templates",
|
|
9
|
+
user_data_path: "app/user_data",
|
|
10
|
+
params_path: "config/params",
|
|
11
|
+
variables_path: "config/variables",
|
|
12
|
+
output_path: "output",
|
|
13
|
+
}
|
|
14
|
+
PATHS.each do |meth, path|
|
|
15
|
+
define_method meth do
|
|
16
|
+
"#{Lono.root}/#{path}"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -1,13 +1,33 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
#
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
1
|
+
# More info: http://lono.cloud/docs/settings/
|
|
2
|
+
# The base config is specially treated. It gets included the other environments automatically.
|
|
3
|
+
# Yaml also directly supports merging with & and <<* syntax but doing it automatically
|
|
4
|
+
# for a cleaner syntax.
|
|
5
|
+
base:
|
|
6
|
+
# http://lono.cloud/docs/app-scripts/
|
|
7
|
+
# extract_scripts:
|
|
8
|
+
# to: "/opt"
|
|
9
|
+
# as: "ec2-user"
|
|
10
|
+
# If s3_folder is set then the generated templates and app/scripts will automatically
|
|
11
|
+
# be uploaded to s3.
|
|
12
|
+
# There are 2 formats for s3_folder:
|
|
13
|
+
# Format 1:
|
|
14
|
+
# s3_folder: mybucket/path/to/folder # simple string
|
|
15
|
+
# Format 2:
|
|
16
|
+
# s3_folder: # Hash options in order to support multiple AWS_PROFILEs
|
|
17
|
+
# default: mybucket/folder
|
|
18
|
+
# aws_profile1: mybucket/folder
|
|
19
|
+
# aws_profile2: another-bucket/storage/folder
|
|
20
|
+
# randomize_stack_name: true # tack on a 3 char random string at the end of the stack name for lono cfn create
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
development:
|
|
24
|
+
# When you have AWS_PROFILE set to one of these values, lono will switch to the desired
|
|
25
|
+
# environment. This prevents you from switching AWS_PROFILE, forgetting to
|
|
26
|
+
# also switch LONO_ENV, and accidentally deploying to production vs development.
|
|
27
|
+
# aws_profiles:
|
|
28
|
+
# - dev_profile1
|
|
29
|
+
# - dev_profile2
|
|
30
|
+
|
|
31
|
+
production:
|
|
32
|
+
# aws_profiles:
|
|
33
|
+
# - prod_profile
|
data/lib/lono/help.rb
CHANGED
|
@@ -1,82 +1,9 @@
|
|
|
1
1
|
module Lono::Help
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
$ lono new lono
|
|
9
|
-
EOL
|
|
2
|
+
class << self
|
|
3
|
+
def text(namespaced_command)
|
|
4
|
+
path = namespaced_command.to_s.gsub(':','/')
|
|
5
|
+
path = File.expand_path("../help/#{path}.md", __FILE__)
|
|
6
|
+
IO.read(path) if File.exist?(path)
|
|
7
|
+
end
|
|
10
8
|
end
|
|
11
|
-
|
|
12
|
-
def import
|
|
13
|
-
<<-EOL
|
|
14
|
-
Examples:
|
|
15
|
-
|
|
16
|
-
$ lono import /path/to/file
|
|
17
|
-
|
|
18
|
-
$ lono import http://url.com/path/to/template.json
|
|
19
|
-
|
|
20
|
-
$ lono import http://url.com/path/to/template.yml
|
|
21
|
-
|
|
22
|
-
Imports a raw CloudFormation template and lono-fies it.
|
|
23
|
-
EOL
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def generate
|
|
27
|
-
<<-EOL
|
|
28
|
-
Examples:
|
|
29
|
-
|
|
30
|
-
$ lono generate
|
|
31
|
-
|
|
32
|
-
$ lono g -c # shortcut
|
|
33
|
-
|
|
34
|
-
Builds both CloudFormation template and parameter files based on lono project and writes them to the output folder on the filesystem.
|
|
35
|
-
EOL
|
|
36
|
-
end
|
|
37
|
-
|
|
38
|
-
def template
|
|
39
|
-
<<-EOL
|
|
40
|
-
Examples:
|
|
41
|
-
|
|
42
|
-
$ lono template generate --help
|
|
43
|
-
|
|
44
|
-
$ lono template bashify --help
|
|
45
|
-
EOL
|
|
46
|
-
|
|
47
|
-
end
|
|
48
|
-
|
|
49
|
-
def cfn
|
|
50
|
-
<<-EOL
|
|
51
|
-
Examples:
|
|
52
|
-
|
|
53
|
-
$ lono cfn create my-stack
|
|
54
|
-
|
|
55
|
-
$ lono cfn preview my-stack
|
|
56
|
-
|
|
57
|
-
$ lono cfn update my-stack
|
|
58
|
-
|
|
59
|
-
$ lono cfn delete my-stack
|
|
60
|
-
EOL
|
|
61
|
-
end
|
|
62
|
-
|
|
63
|
-
def param
|
|
64
|
-
<<-EOL
|
|
65
|
-
Examples:
|
|
66
|
-
|
|
67
|
-
$ lono param generate
|
|
68
|
-
EOL
|
|
69
|
-
end
|
|
70
|
-
|
|
71
|
-
def inspector
|
|
72
|
-
<<-EOL
|
|
73
|
-
Examples:
|
|
74
|
-
|
|
75
|
-
$ lono inspect depends my-stack
|
|
76
|
-
|
|
77
|
-
$ lono inspect summary my-stack
|
|
78
|
-
EOL
|
|
79
|
-
end
|
|
80
|
-
|
|
81
|
-
extend self
|
|
82
9
|
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Examples:
|
|
2
|
+
|
|
3
|
+
Provided that you are in a lono project and have a `my-stack` lono template definition. To create a stack you can simply run:
|
|
4
|
+
|
|
5
|
+
lono cfn create my-stack
|
|
6
|
+
|
|
7
|
+
The above command will generate and use the template in output/my-stack.json and parameters in params/my-stack.txt. The template by convention defaults to the name of the stack. In turn, the params by convention defaults to the name of the template.
|
|
8
|
+
|
|
9
|
+
Here are examples of overriding the template and params name conventions.
|
|
10
|
+
|
|
11
|
+
lono cfn create my-stack --template different1
|
|
12
|
+
|
|
13
|
+
The template used is output/different1.json and the parameters used is output/params/prod/different1.json.
|
|
14
|
+
|
|
15
|
+
lono cfn create my-stack --params different2
|
|
16
|
+
|
|
17
|
+
The template used is output/my-stack.json and the parameters used is output/params/prod/different2.json.
|
|
18
|
+
|
|
19
|
+
lono cfn create my-stack --template different3 --params different4
|
|
20
|
+
|
|
21
|
+
The template used is output/different3.json and the parameters used is output/params/prod/different4.json.
|
|
22
|
+
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
Generates a CloudFormation preview. This is similar to a `terraform plan` or puppet's dry-run mode.
|
|
2
|
+
|
|
3
|
+
Example output:
|
|
4
|
+
|
|
5
|
+
CloudFormation preview for 'example' stack update. Changes:
|
|
6
|
+
|
|
7
|
+
Remove AWS::Route53::RecordSet: DnsRecord testsubdomain.sub.tongueroo.com
|
|
8
|
+
|
|
9
|
+
Examples:
|
|
10
|
+
|
|
11
|
+
lono cfn preview my-stack
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
Examples:
|
|
2
|
+
|
|
3
|
+
Provided that you are in a lono project and have a `my-stack` lono template definition. To update a stack you can simply run:
|
|
4
|
+
|
|
5
|
+
lono cfn update my-stack
|
|
6
|
+
|
|
7
|
+
The above command will generate and use the template in output/my-stack.json and parameters in params/my-stack.txt. The template by convention defaults to the name of the stack. In turn, the params by convention defaults to the name of the template.
|
|
8
|
+
|
|
9
|
+
Here are examples of overriding the template and params name conventions.
|
|
10
|
+
|
|
11
|
+
lono cfn update my-stack --template different1
|
|
12
|
+
|
|
13
|
+
The template used is output/different1.json and the parameters used is output/params/prod/different1.json.
|
|
14
|
+
|
|
15
|
+
lono cfn update my-stack --params different2
|
|
16
|
+
|
|
17
|
+
The template used is output/my-stack.json and the parameters used is output/params/prod/different2.json.
|
|
18
|
+
|
|
19
|
+
lono cfn update my-stack --template different3 --params different4
|
|
20
|
+
|
|
21
|
+
The template used is output/different3.json and the parameters used is output/params/prod/different4.json.
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
Example:
|
|
2
|
+
|
|
3
|
+
lono completion
|
|
4
|
+
|
|
5
|
+
Prints words for TAB auto-completion.
|
|
6
|
+
|
|
7
|
+
Examples:
|
|
8
|
+
|
|
9
|
+
lono completion
|
|
10
|
+
lono completion hello
|
|
11
|
+
lono completion hello name
|
|
12
|
+
|
|
13
|
+
To enable, TAB auto-completion add the following to your profile:
|
|
14
|
+
|
|
15
|
+
eval $(lono completion script)
|
|
16
|
+
|
|
17
|
+
Auto-completion example usage:
|
|
18
|
+
|
|
19
|
+
lono [TAB]
|
|
20
|
+
lono hello [TAB]
|
|
21
|
+
lono hello name [TAB]
|
|
22
|
+
lono hello name --[TAB]
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
Examples:
|
|
2
|
+
|
|
3
|
+
lono new infra # skeleton project with barebones structure
|
|
4
|
+
TEMPLATE=ec2 lono new infra # creates a single server
|
|
5
|
+
TEMPLATE=autoscaling lono new infra
|
|
6
|
+
|
|
7
|
+
For a list of the starter templates:
|
|
8
|
+
https://github.com/tongueroo/lono/tree/master/lib/starter_projects
|
|
@@ -1,15 +1,7 @@
|
|
|
1
|
-
class Lono::Param::Help
|
|
2
|
-
class << self
|
|
3
|
-
def generate
|
|
4
|
-
<<-EOL
|
|
5
1
|
Example:
|
|
6
2
|
|
|
7
3
|
To generate a CloudFormation json parameter files in the params folder to the output/params folder.
|
|
8
4
|
|
|
9
|
-
|
|
5
|
+
lono-params generate
|
|
10
6
|
|
|
11
7
|
If you have params/my-stack.txt. It will generate a CloudFormation json file in output/params/my-stack.json.
|
|
12
|
-
EOL
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
end
|