lono 7.5.2 → 8.0.0.pre.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (458) hide show
  1. checksums.yaml +4 -4
  2. data/.cody/README.md +5 -15
  3. data/.cody/acceptance/bin/build.sh +52 -0
  4. data/.cody/acceptance/buildspec.yml +10 -0
  5. data/.cody/acceptance/project.rb +6 -0
  6. data/.cody/{role.rb → acceptance/role.rb} +0 -0
  7. data/.cody/shared/script/install/lono.sh +40 -0
  8. data/.cody/shared/script/install.sh +5 -0
  9. data/CHANGELOG.md +21 -4
  10. data/CONTRIBUTING.md +2 -2
  11. data/Gemfile +5 -1
  12. data/LICENSE.txt +201 -1
  13. data/README.md +4 -4
  14. data/lib/lono/api/client.rb +3 -2
  15. data/lib/lono/app/inits.rb +13 -0
  16. data/lib/lono/app.rb +71 -0
  17. data/lib/lono/app_file/base.rb +1 -1
  18. data/lib/lono/app_file/build/lambda_layer/ruby_packager.rb +9 -9
  19. data/lib/lono/app_file/build/lambda_layer.rb +3 -3
  20. data/lib/lono/app_file/build.rb +9 -14
  21. data/lib/lono/app_file/registry/item.rb +4 -4
  22. data/lib/lono/app_file/upload.rb +1 -1
  23. data/lib/lono/autoloader.rb +2 -2
  24. data/lib/lono/aws_services/helper.rb +43 -6
  25. data/lib/lono/aws_services.rb +37 -6
  26. data/lib/lono/blueprint.rb +18 -9
  27. data/lib/lono/booter.rb +28 -0
  28. data/lib/lono/{template → builder}/context/helpers.rb +1 -1
  29. data/lib/lono/{template → builder}/context/loader/load_files.rb +5 -6
  30. data/lib/lono/builder/context/loader.rb +35 -0
  31. data/lib/lono/builder/context/params.rb +7 -0
  32. data/lib/lono/{template → builder}/context/ssm_fetcher.rb +1 -1
  33. data/lib/lono/{template → builder}/context.rb +5 -9
  34. data/lib/lono/{param/generator.rb → builder/param.rb} +21 -22
  35. data/lib/lono/builder/template/aws_service.rb +15 -0
  36. data/lib/lono/builder/template/bashify.rb +43 -0
  37. data/lib/lono/{template → builder/template}/configset_injector.rb +4 -4
  38. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/fn.rb +2 -2
  39. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/helpers/core_helper.rb +1 -1
  40. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/helpers/ec2_helper.rb +1 -1
  41. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/helpers/file_helper.rb +8 -12
  42. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/helpers/s3_helper.rb +2 -2
  43. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/helpers/stack_helper.rb +11 -8
  44. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/helpers/tags_helper.rb +1 -1
  45. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/helpers.rb +2 -2
  46. data/lib/lono/builder/template/dsl/evaluator/section/base.rb +23 -0
  47. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/section/condition.rb +1 -1
  48. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/section/mapping.rb +1 -1
  49. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/section/methods.rb +7 -7
  50. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/section/output.rb +1 -1
  51. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/section/parameter.rb +1 -1
  52. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/section/resource/property_mover.rb +1 -1
  53. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/section/resource.rb +1 -1
  54. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/section/section.rb +1 -1
  55. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/squeezer.rb +1 -1
  56. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/stringify.rb +1 -1
  57. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/syntax/extend_with.rb +1 -1
  58. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/syntax/parameter_group.rb +1 -1
  59. data/lib/lono/{template/strategy/dsl/builder → builder/template/dsl/evaluator}/syntax.rb +3 -3
  60. data/lib/lono/builder/template/dsl/evaluator.rb +45 -0
  61. data/lib/lono/{template/strategy → builder/template}/dsl/finalizer/parameter_groups.rb +2 -2
  62. data/lib/lono/{template/strategy → builder/template}/dsl/finalizer.rb +1 -1
  63. data/lib/lono/builder/template/dsl.rb +14 -0
  64. data/lib/lono/{template → builder/template}/evaluate.rb +18 -6
  65. data/lib/lono/builder/template/helpers.rb +149 -0
  66. data/lib/lono/{output/template.rb → builder/template/output.rb} +14 -7
  67. data/lib/lono/{template → builder/template}/post_processor.rb +4 -4
  68. data/lib/lono/{template → builder/template}/upload.rb +3 -5
  69. data/lib/lono/builder/template.rb +55 -0
  70. data/lib/lono/bundler/cli/base.rb +10 -0
  71. data/lib/lono/bundler/cli/bundle.rb +44 -0
  72. data/lib/lono/bundler/cli/clean.rb +27 -0
  73. data/lib/lono/bundler/cli/help/bundle.md +3 -0
  74. data/lib/lono/bundler/cli/help.rb +11 -0
  75. data/lib/lono/bundler/cli.rb +7 -0
  76. data/lib/lono/bundler/component/concerns/local_concern.rb +10 -0
  77. data/lib/lono/bundler/component/concerns/notation_concern.rb +59 -0
  78. data/lib/lono/bundler/component/concerns/path_concern.rb +68 -0
  79. data/lib/lono/bundler/component/concerns/stack_concern.rb +60 -0
  80. data/lib/lono/bundler/component/fetcher/base.rb +27 -0
  81. data/lib/lono/bundler/component/fetcher/gcs.rb +69 -0
  82. data/lib/lono/bundler/component/fetcher/git.rb +69 -0
  83. data/lib/lono/bundler/component/fetcher/local.rb +15 -0
  84. data/lib/lono/bundler/component/fetcher/s3.rb +66 -0
  85. data/lib/lono/bundler/component/fetcher.rb +18 -0
  86. data/lib/lono/bundler/component/http/concern.rb +45 -0
  87. data/lib/lono/bundler/component/http/source.rb +19 -0
  88. data/lib/lono/bundler/component/org_repo.rb +65 -0
  89. data/lib/lono/bundler/component/props/extension.rb +19 -0
  90. data/lib/lono/bundler/component/props/typer.rb +41 -0
  91. data/lib/lono/bundler/component/props.rb +122 -0
  92. data/lib/lono/bundler/component/registry.rb +136 -0
  93. data/lib/lono/bundler/component.rb +52 -0
  94. data/lib/lono/bundler/config.rb +18 -0
  95. data/lib/lono/bundler/dsl/syntax.rb +46 -0
  96. data/lib/lono/bundler/dsl.rb +21 -0
  97. data/lib/lono/bundler/exporter/base.rb +6 -0
  98. data/lib/lono/bundler/exporter/copy.rb +22 -0
  99. data/lib/lono/bundler/exporter.rb +50 -0
  100. data/lib/lono/bundler/extract/tar.rb +34 -0
  101. data/lib/lono/bundler/extract/zip.rb +16 -0
  102. data/lib/lono/bundler/info.rb +39 -0
  103. data/lib/lono/bundler/list.rb +26 -0
  104. data/lib/lono/bundler/lockfile/version_comparer.rb +56 -0
  105. data/lib/lono/bundler/lockfile/yamler.rb +36 -0
  106. data/lib/lono/bundler/lockfile.rb +66 -0
  107. data/lib/lono/bundler/lonofile.rb +32 -0
  108. data/lib/lono/bundler/runner.rb +27 -0
  109. data/lib/lono/bundler/syncer.rb +70 -0
  110. data/lib/lono/bundler/util/git.rb +37 -0
  111. data/lib/lono/bundler/util/logging.rb +7 -0
  112. data/lib/lono/bundler/util/sure.rb +5 -0
  113. data/lib/lono/{bundle.rb → bundler.rb} +38 -4
  114. data/lib/lono/cfn/base.rb +9 -195
  115. data/lib/lono/cfn/cancel.rb +9 -26
  116. data/lib/lono/cfn/concerns/build.rb +10 -0
  117. data/lib/lono/cfn/concerns/template_output.rb +10 -0
  118. data/lib/lono/cfn/concerns.rb +43 -0
  119. data/lib/lono/cfn/delete.rb +8 -32
  120. data/lib/lono/cfn/deploy/base.rb +4 -0
  121. data/lib/lono/cfn/deploy/iam.rb +49 -0
  122. data/lib/lono/cfn/deploy/notification.rb +8 -0
  123. data/lib/lono/cfn/deploy/operable.rb +18 -0
  124. data/lib/lono/cfn/deploy/opts.rb +49 -0
  125. data/lib/lono/cfn/deploy/rollback.rb +46 -0
  126. data/lib/lono/cfn/deploy/tags.rb +18 -0
  127. data/lib/lono/cfn/deploy.rb +71 -5
  128. data/lib/lono/cfn/download.rb +5 -7
  129. data/lib/lono/cfn/output.rb +49 -0
  130. data/lib/lono/cfn/plan/base.rb +19 -0
  131. data/lib/lono/cfn/plan/changeset/base.rb +19 -0
  132. data/lib/lono/cfn/plan/changeset/notifications.rb +24 -0
  133. data/lib/lono/cfn/plan/changeset/outputs.rb +25 -0
  134. data/lib/lono/cfn/plan/changeset/resources.rb +48 -0
  135. data/lib/lono/cfn/plan/changeset/tags.rb +16 -0
  136. data/lib/lono/cfn/plan/changeset.rb +136 -0
  137. data/lib/lono/cfn/plan/concerns.rb +10 -0
  138. data/lib/lono/cfn/plan/delete.rb +16 -0
  139. data/lib/lono/cfn/plan/diff/base.rb +10 -0
  140. data/lib/lono/cfn/plan/diff/data.rb +52 -0
  141. data/lib/lono/cfn/plan/diff/file.rb +56 -0
  142. data/lib/lono/cfn/plan/new.rb +26 -0
  143. data/lib/lono/cfn/{preview → plan}/param.rb +26 -34
  144. data/lib/lono/cfn/plan/summary.rb +16 -0
  145. data/lib/lono/cfn/plan/template.rb +28 -0
  146. data/lib/lono/cfn/plan.rb +33 -0
  147. data/lib/lono/cfn/show.rb +30 -0
  148. data/lib/lono/cfn/status.rb +1 -1
  149. data/lib/lono/cli/abstract.rb +17 -0
  150. data/lib/lono/cli/base.rb +9 -0
  151. data/lib/lono/cli/build.rb +101 -0
  152. data/lib/lono/cli/bundle.rb +21 -0
  153. data/lib/lono/cli/cfn/opts.rb +59 -0
  154. data/lib/lono/cli/cfn.rb +19 -0
  155. data/lib/lono/cli/clean.rb +22 -0
  156. data/lib/lono/{code.rb → cli/code.rb} +2 -2
  157. data/lib/lono/{completion.rb → cli/completion.rb} +2 -2
  158. data/lib/lono/{help → cli/help}/blueprint/new.md +4 -4
  159. data/lib/lono/{help/generate.md → cli/help/build.md} +6 -6
  160. data/lib/lono/{help → cli/help}/cfn/cancel.md +0 -0
  161. data/lib/lono/cli/help/cfn/download.md +3 -0
  162. data/lib/lono/{help → cli/help}/cfn/preview.md +9 -8
  163. data/lib/lono/{help → cli/help}/cfn/status.md +0 -0
  164. data/lib/lono/cli/help/cfn.md +4 -0
  165. data/lib/lono/{help → cli/help}/code/convert.md +0 -0
  166. data/lib/lono/{help → cli/help}/code/import.md +2 -2
  167. data/lib/lono/{help → cli/help}/completion.md +3 -3
  168. data/lib/lono/{help → cli/help}/completion_script.md +0 -0
  169. data/lib/lono/{help → cli/help}/configsets.md +0 -0
  170. data/lib/lono/cli/help/down.md +13 -0
  171. data/lib/lono/cli/help/new/project.md +34 -0
  172. data/lib/lono/{help → cli/help}/param/generate.md +0 -0
  173. data/lib/lono/cli/help/param.md +6 -0
  174. data/lib/lono/{help → cli/help}/pro/blueprints.md +0 -0
  175. data/lib/lono/{help → cli/help}/pro/configsets.md +0 -0
  176. data/lib/lono/{help → cli/help}/script/build.md +0 -0
  177. data/lib/lono/{help → cli/help}/script/upload.md +0 -0
  178. data/lib/lono/{help → cli/help}/seed.md +2 -2
  179. data/lib/lono/cli/help/summary.md +33 -0
  180. data/lib/lono/{help → cli/help}/template/bashify.md +0 -0
  181. data/lib/lono/cli/help/template/generate.md +7 -0
  182. data/lib/lono/{help → cli/help}/template.md +0 -0
  183. data/lib/lono/cli/help/up.md +30 -0
  184. data/lib/lono/{help → cli/help}/user_data.md +3 -3
  185. data/lib/lono/cli/help.rb +56 -0
  186. data/lib/lono/cli/list.rb +28 -0
  187. data/lib/lono/cli/new/blueprint.rb +33 -0
  188. data/lib/lono/cli/new/concerns.rb +16 -0
  189. data/lib/lono/{configset/new.rb → cli/new/configset.rb} +2 -9
  190. data/lib/lono/{extension/new.rb → cli/new/extension.rb} +2 -10
  191. data/lib/lono/cli/new/helper.rb +32 -0
  192. data/lib/lono/cli/new/project.rb +77 -0
  193. data/lib/lono/cli/new/sequence.rb +51 -0
  194. data/lib/lono/cli/new/shim.rb +59 -0
  195. data/lib/lono/cli/new/test/blueprint.rb +23 -0
  196. data/lib/lono/cli/new/test/sequence.rb +10 -0
  197. data/lib/lono/cli/new/test.rb +8 -0
  198. data/lib/lono/cli/new.rb +31 -0
  199. data/lib/lono/{opts.rb → cli/opts.rb} +9 -12
  200. data/lib/lono/{s3.rb → cli/s3.rb} +9 -7
  201. data/lib/lono/cli/script/base.rb +5 -0
  202. data/lib/lono/cli/script/build.rb +72 -0
  203. data/lib/lono/cli/script/upload.rb +49 -0
  204. data/lib/lono/{script.rb → cli/script.rb} +2 -2
  205. data/lib/lono/cli/seed.rb +9 -0
  206. data/lib/lono/cli/test.rb +35 -0
  207. data/lib/lono/cli.rb +80 -109
  208. data/lib/lono/command.rb +27 -0
  209. data/lib/lono/configset/{generator.rb → builder.rb} +9 -7
  210. data/lib/lono/configset/combiner.rb +8 -6
  211. data/lib/lono/configset/evaluate_file.rb +1 -1
  212. data/lib/lono/configset/meta.rb +1 -1
  213. data/lib/lono/configset/s3_file/build.rb +5 -4
  214. data/lib/lono/configset/s3_file/item.rb +1 -1
  215. data/lib/lono/configset/s3_file/upload.rb +2 -2
  216. data/lib/lono/configset/strategy/base.rb +6 -6
  217. data/lib/lono/configset/strategy/helpers/dsl/core.rb +1 -1
  218. data/lib/lono/core.rb +25 -54
  219. data/lib/lono/extensions/dsl.rb +2 -5
  220. data/lib/lono/extensions/loader.rb +1 -12
  221. data/lib/lono/extensions.rb +2 -2
  222. data/lib/lono/importer/base.rb +5 -5
  223. data/lib/lono/importer/download.rb +7 -7
  224. data/lib/lono/importer/dsl.rb +3 -3
  225. data/lib/lono/importer/service/coder.rb +10 -10
  226. data/lib/lono/importer.rb +1 -10
  227. data/lib/lono/inspector/base.rb +7 -7
  228. data/lib/lono/inspector/summary.rb +19 -17
  229. data/lib/lono/layering/layer.rb +126 -0
  230. data/lib/lono/layering.rb +13 -55
  231. data/lib/lono/logger/formatter.rb +13 -0
  232. data/lib/lono/logger.rb +33 -0
  233. data/lib/lono/lookup.rb +12 -0
  234. data/lib/lono/names.rb +50 -0
  235. data/lib/lono/plugin/meta.rb +30 -0
  236. data/lib/lono/plugin/tester.rb +13 -0
  237. data/lib/lono/plugin.rb +10 -0
  238. data/lib/lono/s3/aws_setup.rb +4 -3
  239. data/lib/lono/s3/bucket.rb +19 -19
  240. data/lib/lono/s3/uploader.rb +10 -12
  241. data/lib/lono/script/base.rb +3 -3
  242. data/lib/lono/script/build.rb +11 -12
  243. data/lib/lono/script/upload.rb +7 -7
  244. data/lib/lono/{seed → seeder}/service_role.rb +1 -1
  245. data/lib/lono/{seed/base.rb → seeder.rb} +21 -36
  246. data/lib/lono/user_data.rb +8 -13
  247. data/lib/lono/utils/context.rb +15 -0
  248. data/lib/lono/utils/item/zip.rb +5 -5
  249. data/lib/lono/utils/logging.rb +7 -0
  250. data/lib/lono/utils/{pretty_time.rb → pretty.rb} +6 -2
  251. data/lib/lono/utils/quit.rb +7 -0
  252. data/lib/lono/utils/rsync.rb +4 -2
  253. data/lib/lono/utils/sure.rb +4 -4
  254. data/lib/lono/version.rb +1 -1
  255. data/lib/lono.rb +7 -12
  256. data/lib/templates/blueprint/template.rb +2 -0
  257. data/lib/templates/configset/{lib/configset.rb → configset.rb} +0 -0
  258. data/lib/templates/examples/blueprint/template.rb +9 -0
  259. data/lib/templates/helper/%underscore_name%_helper.rb.tt +6 -0
  260. data/lib/templates/{skeleton → project}/.gitignore +1 -2
  261. data/lib/templates/project/Gemfile.tt +11 -0
  262. data/lib/templates/project/README.md +9 -0
  263. data/lib/templates/project/config/app.rb +3 -0
  264. data/lib/templates/shim/lono +7 -0
  265. data/lono.gemspec +51 -44
  266. metadata +246 -269
  267. data/.circleci/README.md +0 -3
  268. data/.circleci/config.yml +0 -58
  269. data/.cody/acceptance.sh +0 -49
  270. data/.cody/buildspec.yml +0 -9
  271. data/.cody/demo.rb +0 -38
  272. data/.cody/project.rb +0 -6
  273. data/.gitmodules +0 -3
  274. data/lib/lono/abstract_base.rb +0 -25
  275. data/lib/lono/aws_services/stack.rb +0 -41
  276. data/lib/lono/aws_services/stack_set.rb +0 -41
  277. data/lib/lono/blueprint/configset/loader.rb +0 -7
  278. data/lib/lono/blueprint/helper.rb +0 -24
  279. data/lib/lono/blueprint/meta.rb +0 -30
  280. data/lib/lono/blueprint/new.rb +0 -127
  281. data/lib/lono/blueprint/root.rb +0 -25
  282. data/lib/lono/cfn/create.rb +0 -41
  283. data/lib/lono/cfn/opts.rb +0 -88
  284. data/lib/lono/cfn/preview/changeset.rb +0 -168
  285. data/lib/lono/cfn/preview/codediff.rb +0 -41
  286. data/lib/lono/cfn/preview/diff_viewer.rb +0 -23
  287. data/lib/lono/cfn/rollback.rb +0 -26
  288. data/lib/lono/cfn/update.rb +0 -71
  289. data/lib/lono/cfn.rb +0 -75
  290. data/lib/lono/clean.rb +0 -14
  291. data/lib/lono/configset/list.rb +0 -67
  292. data/lib/lono/configset/preparer.rb +0 -44
  293. data/lib/lono/configset/register/base.rb +0 -122
  294. data/lib/lono/configset/register/blueprint.rb +0 -16
  295. data/lib/lono/configset/register/dsl.rb +0 -14
  296. data/lib/lono/configset/register/project.rb +0 -13
  297. data/lib/lono/configset/resolver.rb +0 -47
  298. data/lib/lono/configset.rb +0 -16
  299. data/lib/lono/conventions.rb +0 -23
  300. data/lib/lono/core/config.rb +0 -22
  301. data/lib/lono/default/settings.yml +0 -21
  302. data/lib/lono/ext/bundler.rb +0 -7
  303. data/lib/lono/extension/helper.rb +0 -13
  304. data/lib/lono/extension/list.rb +0 -40
  305. data/lib/lono/extension.rb +0 -9
  306. data/lib/lono/extensions/preparer.rb +0 -26
  307. data/lib/lono/extensions/register.rb +0 -15
  308. data/lib/lono/file_uploader.rb +0 -21
  309. data/lib/lono/finder/base.rb +0 -152
  310. data/lib/lono/finder/blueprint/configset.rb +0 -17
  311. data/lib/lono/finder/blueprint.rb +0 -11
  312. data/lib/lono/finder/configset.rb +0 -11
  313. data/lib/lono/finder/extension.rb +0 -11
  314. data/lib/lono/generate.rb +0 -111
  315. data/lib/lono/help/cfn/create.md +0 -26
  316. data/lib/lono/help/cfn/delete.md +0 -13
  317. data/lib/lono/help/cfn/deploy.md +0 -21
  318. data/lib/lono/help/cfn/download.md +0 -3
  319. data/lib/lono/help/cfn/update.md +0 -49
  320. data/lib/lono/help/cfn.md +0 -7
  321. data/lib/lono/help/new.md +0 -57
  322. data/lib/lono/help/param.md +0 -6
  323. data/lib/lono/help/set_instances/delete.md +0 -21
  324. data/lib/lono/help/set_instances/deploy.md +0 -31
  325. data/lib/lono/help/set_instances/list.md +0 -14
  326. data/lib/lono/help/set_instances/status.md +0 -15
  327. data/lib/lono/help/set_instances/sync.md +0 -92
  328. data/lib/lono/help/sets/delete.md +0 -8
  329. data/lib/lono/help/sets/deploy.md +0 -76
  330. data/lib/lono/help/sets/status.md +0 -23
  331. data/lib/lono/help/summary.md +0 -33
  332. data/lib/lono/help/template/generate.md +0 -7
  333. data/lib/lono/help/upgrade.md +0 -1
  334. data/lib/lono/help/xgraph.md +0 -16
  335. data/lib/lono/help.rb +0 -15
  336. data/lib/lono/importer/erb.rb +0 -31
  337. data/lib/lono/inspector/graph.rb +0 -125
  338. data/lib/lono/jade/circular.rb +0 -26
  339. data/lib/lono/jade/materializer/final.rb +0 -10
  340. data/lib/lono/jade/materializer/gems_builder.rb +0 -81
  341. data/lib/lono/jade/materializer/source.rb +0 -54
  342. data/lib/lono/jade/materializer.rb +0 -15
  343. data/lib/lono/jade/registry.rb +0 -64
  344. data/lib/lono/jade.rb +0 -110
  345. data/lib/lono/jadespec.rb +0 -68
  346. data/lib/lono/new/helper.rb +0 -15
  347. data/lib/lono/new.rb +0 -95
  348. data/lib/lono/param.rb +0 -14
  349. data/lib/lono/pro/base.rb +0 -16
  350. data/lib/lono/pro/repo.rb +0 -28
  351. data/lib/lono/pro.rb +0 -15
  352. data/lib/lono/project_checker.rb +0 -35
  353. data/lib/lono/registration/base.rb +0 -37
  354. data/lib/lono/registration/check.rb +0 -15
  355. data/lib/lono/registration/temp.rb +0 -53
  356. data/lib/lono/registration/user.rb +0 -60
  357. data/lib/lono/seed.rb +0 -39
  358. data/lib/lono/sequence.rb +0 -35
  359. data/lib/lono/set_instances/base.rb +0 -30
  360. data/lib/lono/set_instances/changeable.rb +0 -53
  361. data/lib/lono/set_instances/create.rb +0 -7
  362. data/lib/lono/set_instances/delete.rb +0 -47
  363. data/lib/lono/set_instances/deploy.rb +0 -52
  364. data/lib/lono/set_instances/list.rb +0 -13
  365. data/lib/lono/set_instances/opts.rb +0 -37
  366. data/lib/lono/set_instances/status.rb +0 -12
  367. data/lib/lono/set_instances/sync.rb +0 -181
  368. data/lib/lono/set_instances/update.rb +0 -15
  369. data/lib/lono/set_instances.rb +0 -54
  370. data/lib/lono/sets/base.rb +0 -50
  371. data/lib/lono/sets/create.rb +0 -27
  372. data/lib/lono/sets/delete.rb +0 -43
  373. data/lib/lono/sets/deploy.rb +0 -11
  374. data/lib/lono/sets/list.rb +0 -35
  375. data/lib/lono/sets/opts.rb +0 -18
  376. data/lib/lono/sets/preview/codediff.rb +0 -35
  377. data/lib/lono/sets/preview/param.rb +0 -32
  378. data/lib/lono/sets/status/instance/base.rb +0 -120
  379. data/lib/lono/sets/status/instance/completed.rb +0 -35
  380. data/lib/lono/sets/status/instance/deleted.rb +0 -32
  381. data/lib/lono/sets/status/instance/show.rb +0 -7
  382. data/lib/lono/sets/status/instance.rb +0 -20
  383. data/lib/lono/sets/status/instances.rb +0 -136
  384. data/lib/lono/sets/status.rb +0 -128
  385. data/lib/lono/sets/summarize.rb +0 -22
  386. data/lib/lono/sets/time_spent.rb +0 -11
  387. data/lib/lono/sets/update.rb +0 -74
  388. data/lib/lono/sets/waiter.rb +0 -23
  389. data/lib/lono/sets.rb +0 -34
  390. data/lib/lono/setting.rb +0 -75
  391. data/lib/lono/template/aws_service.rb +0 -20
  392. data/lib/lono/template/bashify.rb +0 -39
  393. data/lib/lono/template/context/loader.rb +0 -52
  394. data/lib/lono/template/generator.rb +0 -23
  395. data/lib/lono/template/helper.rb +0 -152
  396. data/lib/lono/template/strategy/base.rb +0 -4
  397. data/lib/lono/template/strategy/common/helpers.rb +0 -44
  398. data/lib/lono/template/strategy/dsl/builder/section/base.rb +0 -30
  399. data/lib/lono/template/strategy/dsl/builder.rb +0 -59
  400. data/lib/lono/template/strategy/dsl.rb +0 -14
  401. data/lib/lono/template/strategy/erb.rb +0 -82
  402. data/lib/lono/template/strategy/source.rb +0 -8
  403. data/lib/lono/template/template.rb +0 -54
  404. data/lib/lono/template/util.rb +0 -8
  405. data/lib/lono/template.rb +0 -24
  406. data/lib/lono/upgrade.rb +0 -20
  407. data/lib/lono/utils/generators/tree.rb +0 -18
  408. data/lib/templates/blueprint/%blueprint_name%.gemspec.tt +0 -45
  409. data/lib/templates/blueprint/.gitignore +0 -11
  410. data/lib/templates/blueprint/CHANGELOG.md +0 -7
  411. data/lib/templates/blueprint/Gemfile +0 -4
  412. data/lib/templates/blueprint/README.md.tt +0 -33
  413. data/lib/templates/blueprint/Rakefile.tt +0 -9
  414. data/lib/templates/blueprint/seed/configs.rb +0 -28
  415. data/lib/templates/blueprint_types/dsl/app/templates/%blueprint_name%.rb +0 -36
  416. data/lib/templates/blueprint_types/dsl/app/user_data/bootstrap.sh +0 -2
  417. data/lib/templates/blueprint_types/erb/app/definitions/base.rb.tt +0 -1
  418. data/lib/templates/blueprint_types/erb/app/templates/%blueprint_name%.yml +0 -67
  419. data/lib/templates/configset/%configset_name%.gemspec.tt +0 -42
  420. data/lib/templates/configset/.gitignore +0 -10
  421. data/lib/templates/configset/CHANGELOG.md +0 -7
  422. data/lib/templates/configset/Gemfile +0 -4
  423. data/lib/templates/configset/README.md.tt +0 -3
  424. data/lib/templates/configset/Rakefile.tt +0 -9
  425. data/lib/templates/extension/%extension_name%.gemspec.tt +0 -46
  426. data/lib/templates/extension/.gitignore +0 -11
  427. data/lib/templates/extension/.rspec +0 -3
  428. data/lib/templates/extension/CHANGELOG.md +0 -7
  429. data/lib/templates/extension/Gemfile.tt +0 -4
  430. data/lib/templates/extension/Rakefile.tt +0 -9
  431. data/lib/templates/extension/spec/spec_helper.rb.tt +0 -29
  432. data/lib/templates/skeleton/Gemfile +0 -3
  433. data/lib/templates/skeleton/README.md +0 -58
  434. data/lib/templates/skeleton/configs/settings.yml +0 -13
  435. data/vendor/cfn-status/CHANGELOG.md +0 -14
  436. data/vendor/cfn-status/Gemfile +0 -4
  437. data/vendor/cfn-status/Gemfile.lock +0 -49
  438. data/vendor/cfn-status/LICENSE.txt +0 -21
  439. data/vendor/cfn-status/README.md +0 -58
  440. data/vendor/cfn-status/Rakefile +0 -6
  441. data/vendor/cfn-status/bin/console +0 -14
  442. data/vendor/cfn-status/bin/setup +0 -8
  443. data/vendor/cfn-status/cfn-status.gemspec +0 -30
  444. data/vendor/cfn-status/lib/cfn-status.rb +0 -1
  445. data/vendor/cfn-status/lib/cfn_status/aws_service.rb +0 -51
  446. data/vendor/cfn-status/lib/cfn_status/version.rb +0 -3
  447. data/vendor/cfn-status/lib/cfn_status.rb +0 -245
  448. data/vendor/cfn-status/spec/fixtures/cfn/pages/fresh/describe_stack_events-1.json +0 -1103
  449. data/vendor/cfn-status/spec/fixtures/cfn/pages/fresh/describe_stack_events-2.json +0 -1104
  450. data/vendor/cfn-status/spec/fixtures/cfn/pages/fresh/describe_stack_events-3.json +0 -1103
  451. data/vendor/cfn-status/spec/fixtures/cfn/pages/updating/describe_stack_events-1.json +0 -1103
  452. data/vendor/cfn-status/spec/fixtures/cfn/pages/updating/describe_stack_events-2.json +0 -1104
  453. data/vendor/cfn-status/spec/fixtures/cfn/pages/updating/describe_stack_events-3.json +0 -1103
  454. data/vendor/cfn-status/spec/fixtures/cfn/stack-events-complete.json +0 -1080
  455. data/vendor/cfn-status/spec/fixtures/cfn/stack-events-in-progress.json +0 -1080
  456. data/vendor/cfn-status/spec/fixtures/cfn/stack-events-update-rollback-complete.json +0 -1086
  457. data/vendor/cfn-status/spec/lib/cfn_status_spec.rb +0 -153
  458. data/vendor/cfn-status/spec/spec_helper.rb +0 -14
@@ -1,13 +0,0 @@
1
- module Lono::Configset::Register
2
- class Project < Base
3
- self.configsets = []
4
- self.validations = []
5
-
6
- def evaluate
7
- layering = Lono::Layering.new("configsets", @options, Lono.env)
8
- layering.locations.each do |path|
9
- evaluate_file(path)
10
- end
11
- end
12
- end
13
- end
@@ -1,47 +0,0 @@
1
- class Lono::Configset
2
- class Resolver
3
- extend Memoist
4
-
5
- @@dependencies = [] # save to later regsiter configsets
6
-
7
- @@resolving_message_shown = false
8
- def resolve(*unresolved)
9
- unresolved.flatten! # initially only top-level
10
- unresolved.uniq! { |jade| jade.name }
11
- puts "Resolving dependencies..." if !@@resolving_message_shown && !unresolved.empty?
12
- puts "Resolving #{unresolved.map(&:name)}" if ENV['LONO_DEBUG_CONFIGSET']
13
-
14
- @@resolving_message_shown = true
15
-
16
- unresolved.each do |jade|
17
- jade.check_for_circular_dependency!
18
- jade.materialize
19
- jade.dependencies.each do |j|
20
- @@dependencies << j # store for later registration
21
- unless j.resolved? or unresolved.include?(j)
22
- resolve(j)
23
- end
24
- end
25
- jade.resolved! # resolve after depth-first tranversal. So all dependencies have also been resolved at this point.
26
- end
27
- end
28
-
29
- def register
30
- @@dependencies.each do |jade|
31
- # dependency jades have minimal registry info. For additional info is pulled from stored reference data in
32
- # jade like jade.resource_from_parent.
33
- registry = jade.registry
34
- registry.resource = jade.resource_from_parent
35
-
36
- # Always prepend to Register::Blueprint.configsets to ensure they are run before any other configset.
37
- # Leaving old code in place for now. Possibly revisit this approach.
38
- Register::Blueprint.prepend(registry)
39
- # if jade.type == "blueprint/configset"
40
- # Register::Blueprint.prepend(registry)
41
- # elsif jade.type == "configset"
42
- # Register::Project.prepend(registry)
43
- # end
44
- end
45
- end
46
- end
47
- end
@@ -1,16 +0,0 @@
1
- module Lono
2
- class Configset < Command
3
- long_desc Help.text("configset/new")
4
- New.cli_options.each do |args|
5
- option(*args)
6
- end
7
- register(New, "new", "new NAME", "Generates new lono configset.")
8
-
9
- desc "generate", "Generate configset from DSL"
10
- long_desc Help.text(:generate)
11
- option :resource, default: "PretendResource", desc: "Set the @resource instance variable availalbe in the configset"
12
- def generate(configset)
13
- Generator.new(options.merge(configset: configset, cli: true)).run
14
- end
15
- end
16
- end
@@ -1,23 +0,0 @@
1
- module Lono
2
- class Conventions
3
- attr_reader :stack, :blueprint, :template, :param
4
- def initialize(options)
5
- @options = options
6
- @stack, @blueprint, @template, @param = naming_conventions(options)
7
- end
8
-
9
- def naming_conventions(options)
10
- o = options.deep_symbolize_keys
11
- stack = o[:stack]
12
- blueprint = o[:blueprint] || o[:stack]
13
- template = o[:template] || blueprint
14
- param = o[:param] || template || blueprint
15
- stack ||= blueprint # fallback for commands that dont take stack name. IE: lono generate
16
- [stack, blueprint, template, param]
17
- end
18
-
19
- def values
20
- [@stack, @blueprint, @template, @param]
21
- end
22
- end
23
- end
@@ -1,22 +0,0 @@
1
- module Lono::Core
2
- class Config
3
- PATHS = {
4
- definitions_path: "app/definitions",
5
- helpers_path: "app/helpers",
6
- content_path: "app/content",
7
- partials_path: "app/partials",
8
- scripts_path: "app/scripts",
9
- templates_path: "app/templates",
10
- user_data_path: "app/user_data",
11
- }
12
- PATHS.each do |meth, path|
13
- define_method meth do
14
- "#{Lono.blueprint_root}/#{path}"
15
- end
16
- end
17
-
18
- def output_path
19
- "#{Lono.root}/output"
20
- end
21
- end
22
- end
@@ -1,21 +0,0 @@
1
- # More info: https://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
- # https://lono.cloud/docs/app-scripts/
7
- # extract_scripts:
8
- # to: "/opt"
9
- # as: "ec2-user"
10
-
11
- development:
12
- # When you have AWS_PROFILE set to one of these values, lono will switch to the desired
13
- # environment. This prevents you from switching AWS_PROFILE, forgetting to
14
- # also switch LONO_ENV, and accidentally deploying to production vs development.
15
- # aws_profiles:
16
- # - dev_profile1
17
- # - dev_profile2
18
-
19
- production:
20
- # aws_profiles:
21
- # - prod_profile
@@ -1,7 +0,0 @@
1
- # Bundler 2.0 does yet not have with_unbundled_env
2
- # Bundler 2.1 deprecates with_clean_env for with_unbundled_env
3
-
4
- require "bundler"
5
- def Bundler.with_unbundled_env(&block)
6
- with_clean_env(&block)
7
- end unless Bundler.respond_to?(:with_unbundled_env)
@@ -1,13 +0,0 @@
1
- class Lono::Extension
2
- module Helper
3
- extend Memoist
4
-
5
- def extension_class_name
6
- extension_underscore_name.camelize
7
- end
8
-
9
- def extension_underscore_name
10
- extension_name.underscore
11
- end
12
- end
13
- end
@@ -1,40 +0,0 @@
1
- require 'cli-format'
2
-
3
- class Lono::Extension
4
- class List
5
- def initialize(options={})
6
- @options = options
7
- @stack, @blueprint, @template, @param = Lono::Conventions.new(options).values
8
- end
9
-
10
- def run
11
- if @blueprint
12
- blueprint_configsets
13
- else
14
- project_configsets
15
- end
16
- end
17
-
18
- def blueprint_configsets
19
- Lono::Extensions::Preparer.new(@options).run # register and materialize gems
20
- tracked_extension_names = Lono::Jade::Registry.tracked_extensions.map(&:name)
21
-
22
- finder = Lono::Finder::Extension.new
23
- jadespecs = finder.find_all
24
-
25
- presenter = CliFormat::Presenter.new(@options)
26
- presenter.header = %w[Name Path Type]
27
- jadespecs.each do |j|
28
- if tracked_extension_names.include?(j.name)
29
- pretty_path = j.root.sub("#{Lono.root}/",'').sub(ENV["HOME"], "~")
30
- presenter.rows << [j.name, pretty_path, j.source_type]
31
- end
32
- end
33
- presenter.show
34
- end
35
-
36
- def project_configsets
37
- Lono::Finder::Extension.list(filter_materialized: true, message: "Project extensions:")
38
- end
39
- end
40
- end
@@ -1,9 +0,0 @@
1
- module Lono
2
- class Extension < Command
3
- long_desc Help.text("extension/new")
4
- New.cli_options.each do |args|
5
- option(*args)
6
- end
7
- register(New, "new", "new NAME", "Generates new lono extension.")
8
- end
9
- end
@@ -1,26 +0,0 @@
1
- class Lono::Extensions
2
- class Preparer < Lono::AbstractBase
3
- def initialize(options={})
4
- super
5
- @register = Register.new(options)
6
- end
7
-
8
- def run
9
- @register.run
10
- download
11
- final_materialize
12
- end
13
-
14
- def download
15
- Lono::Jade::Registry.tracked_extensions.each do |registry|
16
- jade = Lono::Jade.new(registry.name, "extension", registry)
17
- jade.materialize # adds to Lono::Jade::Registry.downloaded_extensions
18
- end
19
- end
20
-
21
- def final_materialize
22
- jades = Lono::Jade::Registry.downloaded_extensions
23
- Lono::Jade::Materializer::Final.new.build(jades)
24
- end
25
- end
26
- end
@@ -1,15 +0,0 @@
1
- class Lono::Extensions
2
- class Register < Lono::AbstractBase
3
- include Lono::Configset::EvaluateFile
4
-
5
- def run
6
- register_extensions # evaluates extend_with
7
- end
8
-
9
- # register_extensions and evaluate extend_with methods earlier than load_context so project helpers can override extensions
10
- def register_extensions
11
- template_path = "#{Lono.config.templates_path}/#{@template}.rb"
12
- Lono::Extensions.new(template_path).evaluate # registers extensions
13
- end
14
- end
15
- end
@@ -1,21 +0,0 @@
1
- module Lono
2
- class FileUploader < AbstractBase
3
- extend Memoist
4
-
5
- def initialize(options={})
6
- super
7
- @checksums = {}
8
- @prefix = "#{Lono.env}/#{blueprint}/files" # s3://s3-bucket/folder/development/files
9
- end
10
-
11
- def upload_all
12
- puts "Uploading app/files.."
13
- load_checksums!
14
-
15
- Dir.glob(pattern).each do |path|
16
- next if ::File.directory?(path)
17
- Lono::S3::Uploader.new(path).upload
18
- end
19
- end
20
- end
21
- end
@@ -1,152 +0,0 @@
1
- require "bundler"
2
- require "text-table"
3
-
4
- module Lono::Finder
5
- class Base
6
- extend Memoist
7
-
8
- def initialize(lono_root: nil, blueprint_root: nil)
9
- @lono_root = lono_root || Lono.root
10
- @blueprint_root = blueprint_root || Lono.blueprint_root
11
- end
12
-
13
- # Returns root path of component: blueprint or configset
14
- def find(name, local_only: false)
15
- all = find_all(local_only: local_only)
16
- all.find { |jadespec| jadespec.name == name }
17
- end
18
-
19
- def find_all(local_only: false)
20
- if local_only
21
- local
22
- else
23
- local + materialized
24
- end
25
- end
26
-
27
- def local
28
- project + vendor + gems
29
- end
30
-
31
- def project
32
- roots = path_roots("#{@lono_root}/app/#{type.pluralize}")
33
- components(roots, "project")
34
- end
35
-
36
- def vendor
37
- roots = path_roots("#{@lono_root}/vendor/#{type.pluralize}")
38
- components(roots, "vendor")
39
- end
40
-
41
- def gems
42
- components(gem_roots, "gem")
43
- end
44
-
45
- # Folders that each materialized gems to tmp/jades
46
- def materialized
47
- components(materialized_gem_roots, "materialized")
48
- end
49
-
50
- # Components: blueprints or configsets
51
- # Returns array of config Hashes. Example structure:
52
- #
53
- # [{
54
- # name: "cfn-hup",
55
- # root: "/path/to/gem/root",
56
- # source_type: "project",
57
- # },...]
58
- #
59
- def components(roots, source_type)
60
- components = []
61
- roots.each do |root|
62
- next unless detect?(root)
63
- jadespec = Lono::Jadespec.new(root, source_type)
64
- components << jadespec
65
- end
66
- components
67
- end
68
- memoize :components
69
-
70
- def detect?(root)
71
- expr = "#{root}/#{detection_path}"
72
- Dir.glob(expr).size > 0
73
- end
74
-
75
- # Used for blueprints, configsets, and blueprint/configsets
76
- def list(options={})
77
- table = Text::Table.new
78
- table.head = ["Name", "Path", "Type"]
79
-
80
- components = find_all.sort_by { |jadespec| jadespec.name }
81
- components.each do |jadespec|
82
- pretty_path = jadespec.root.sub("#{Lono.root}/", "").sub(ENV['HOME'], "~")
83
- unless options[:filter_materialized] && jadespec.source_type == "materialized"
84
- table.rows << [jadespec.name, pretty_path, jadespec.source_type]
85
- end
86
- end
87
-
88
- if table.rows.empty?
89
- puts "No #{type.pluralize} found."
90
- else
91
- puts(options[:message] || "Available #{type.pluralize}:")
92
- puts table
93
- end
94
- end
95
-
96
- private
97
- def path_roots(path)
98
- Dir.glob("#{path}/*").to_a
99
- end
100
-
101
- # Example return:
102
- #
103
- # [
104
- # "/home/ec2-user/.rbenv/versions/2.5.6/lib/ruby/gems/2.5.0/gems/rake-13.0.1",
105
- # "/home/ec2-user/.rbenv/versions/2.5.6/lib/ruby/gems/2.5.0/gems/thor-0.20.3"
106
- # ]
107
- #
108
- def gem_roots
109
- Bundler.load.specs.map do |spec|
110
- spec.full_gem_path
111
- end
112
- end
113
- memoize :gem_roots
114
-
115
- def materialized_gem_roots
116
- gemfile_lock = "#{Lono.root}/tmp/jades/Gemfile.lock"
117
- return [] unless File.exist?(gemfile_lock)
118
-
119
- parser = Bundler::LockfileParser.new(Bundler.read_file(gemfile_lock))
120
- specs = parser.specs
121
- # __materialize__ only exists in Gem::LazySpecification and not in Gem::Specification
122
- specs.each { |spec| spec.__materialize__ }
123
- begin
124
- specs.map do |spec|
125
- spec.full_gem_path
126
- end
127
- rescue RuntimeError => e
128
- if e.message.include?("LazySpecification has not been materialized yet")
129
- # Thinking quiet behavior is preferred. Leaving comment here for now.
130
- # puts "WARN: The Finder class is having trouble using the cached tmp/jades/Gemfile.lock to search for materialized gems."
131
- # puts "This can happen when materialized gems are updated. It is generally safe to ignore."
132
- # puts "To remove this warning you can remove the cached Gemfile.lock"
133
- return []
134
- else
135
- raise(e)
136
- end
137
- end
138
- end
139
- memoize :materialized_gem_roots
140
-
141
- public
142
- class << self
143
- def find(name)
144
- new.find(name)
145
- end
146
-
147
- def list(options={})
148
- new.list(options)
149
- end
150
- end
151
- end
152
- end
@@ -1,17 +0,0 @@
1
- class Lono::Finder::Blueprint
2
- class Configset < Lono::Finder::Configset
3
- def initialize(options={})
4
- super(**options) # **options to remove: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
5
- @blueprint_root = options[:blueprint_root] || Lono.blueprint_root
6
- end
7
-
8
- def local
9
- project + vendor + blueprint_app + gems
10
- end
11
-
12
- def blueprint_app
13
- roots = path_roots("#{@blueprint_root}/app/#{type.pluralize}")
14
- components(roots, "blueprint")
15
- end
16
- end
17
- end
@@ -1,11 +0,0 @@
1
- module Lono::Finder
2
- class Blueprint < Base
3
- def type
4
- "blueprint"
5
- end
6
-
7
- def detection_path
8
- "app/templates"
9
- end
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- module Lono::Finder
2
- class Configset < Base
3
- def type
4
- "configset"
5
- end
6
-
7
- def detection_path
8
- "lib/configset.*"
9
- end
10
- end
11
- end
@@ -1,11 +0,0 @@
1
- module Lono::Finder
2
- class Extension < Base
3
- def type
4
- "extension"
5
- end
6
-
7
- def detection_path
8
- "lib/*/helpers"
9
- end
10
- end
11
- end
data/lib/lono/generate.rb DELETED
@@ -1,111 +0,0 @@
1
- module Lono
2
- class Generate < AbstractBase
3
- # Use class variable to cache this only runs once across all classes. base.rb, diff.rb, preview.rb
4
- @@parameters = nil
5
- def all
6
- return @@parameters if @@parameters
7
-
8
- ensure_s3_bucket_exist unless generate_only?
9
- pre_generate
10
- generate_templates # generates with some placeholders for build_files IE: file://app/files/my.rb
11
- post_generate
12
- upload unless generate_only?
13
-
14
- @@parameters = param_generator.generate # Writes the json file in CamelCase keys format
15
- check_for_errors
16
- @@parameters
17
- end
18
-
19
- def generate_only?
20
- ENV['LONO_GENERATE_ONLY'] || @options[:generate_only]
21
- end
22
-
23
- def pre_generate
24
- build_scripts
25
- end
26
-
27
- def post_generate
28
- return if @options[:noop]
29
- return if @options[:source]
30
-
31
- build_files # builds app/files to output/BLUEPRINT/files
32
- post_process_template
33
- end
34
-
35
- def param_generator
36
- o = {
37
- regenerate: true,
38
- allow_not_exists: true,
39
- }.merge(@options)
40
- o = HashWithIndifferentAccess.new(o)
41
- Lono::Param::Generator.new(o)
42
- end
43
- memoize :param_generator
44
-
45
- def ensure_s3_bucket_exist
46
- bucket = Lono::S3::Bucket.new
47
- return if bucket.exist?
48
- bucket.deploy
49
- end
50
-
51
- def build_scripts
52
- Lono::Script::Build.new(@options).run
53
- end
54
-
55
- def build_files
56
- Lono::AppFile::Build.new(@options).run
57
- Lono::Configset::S3File::Build.new(@options).run # copies files to the output folder
58
- end
59
-
60
- def generate_templates
61
- Lono::Template::Generator.new(@options).run # write templates to disk
62
- inject_configsets
63
- end
64
-
65
- def inject_configsets
66
- # The inject_configsets reads it back from disk. Leaving as-is instead of reading all in memory in case there's a reason.
67
- Lono::Configset::Preparer.new(@options).run # register and materialize gems
68
- Lono::Template::ConfigsetInjector.new(@options).run
69
- end
70
-
71
- def post_process_template
72
- Lono::Template::PostProcessor.new(@options).run
73
- end
74
-
75
- def upload
76
- upload_files
77
- upload_scripts
78
- upload_templates
79
- end
80
-
81
- def upload_templates
82
- Lono::Template::Upload.new(@options).run
83
- end
84
-
85
- def upload_scripts
86
- Lono::Script::Upload.new(@options).run
87
- end
88
-
89
- def upload_files
90
- Lono::AppFile::Upload.new(@options).upload
91
- Lono::Configset::S3File::Upload.new(@options).upload
92
- end
93
-
94
- def check_for_errors
95
- errors = check_files
96
- unless errors.empty?
97
- puts "Please double check the command you ran. There were some errors."
98
- puts "ERROR: #{errors.join("\n")}".color(:red)
99
- exit
100
- end
101
- end
102
-
103
- def check_files
104
- errors = []
105
- unless File.exist?(template_path)
106
- errors << "Template file missing: could not find #{template_path}"
107
- end
108
- errors
109
- end
110
- end
111
- end
@@ -1,26 +0,0 @@
1
- ## Examples
2
-
3
- Provided that you are in a lono project and have a `demo` lono blueprint that contains a `demo` template. To create a stack you can run:
4
-
5
- lono cfn create demo
6
-
7
- The above command will generate:
8
-
9
- * template: output/demo/templates/demo.yml
10
- * parameters: output/demo/params/development.json
11
-
12
- By [convention]({% link _docs/conventions/cli.md %}), the blueprint name is the same as the stack name. In turn, template name is the same as the blueprint name. Lastly, the param name will default to the template name.
13
-
14
- Here are examples of overriding the template and params name conventions.
15
-
16
- lono cfn create demo --template different1
17
-
18
- The template used is `app/templates/different1.rb` and the parameters used is `configs/demo/params/development/demo/different1.txt`.
19
-
20
- lono cfn create demo --param different2
21
-
22
- The template used is `app/templates/demo.rb` and the parameters used is `configs/demo/params/development/demo/different2.json`.
23
-
24
- lono cfn create demo --template different3 --param different4
25
-
26
- The template used is `app/templates/different3.rb` and the parameters used is `configs/demo/params/different3/different4.json`.
@@ -1,13 +0,0 @@
1
- ## Examples
2
-
3
- $ lono cfn delete ec2
4
- Are you sure you want to delete the stack? (y/N)
5
- y
6
- Deleted example stack.
7
- $
8
-
9
- Lono prompts you with an "Are you sure?" message before the stack gets deleted. If you would like to bypass the prompt, you can use the `--sure` flag.
10
-
11
- $ lono cfn delete example --sure
12
- Deleted example stack.
13
- $
@@ -1,21 +0,0 @@
1
- The `cfn deploy` command figures out whether or not it should perform a stack create or update. It delegates to `cfn create` or `cfn update`. This saves you from thinking about it
2
-
3
- ## Examples
4
-
5
- Provided that you are in a lono project and have a `demo` lono blueprint that contains a `demo` template. To create a stack you can run:
6
-
7
- lono cfn deploy demo
8
-
9
- The above command will generate:
10
-
11
- * template: output/demo/templates/demo.yml
12
- * parameters: output/demo/params/development.json
13
-
14
-
15
- ## Conventions
16
-
17
- By [convention]({% link _docs/conventions/cli.md %}), the blueprint name is the same as the stack name. In turn, template name is the same as the blueprint name. Lastly, the param name will match the stack name unless it's explicitly specified with `--config` or `--param`.
18
-
19
- Often you want to create a stack name that is different from the blueprint name. Here’s an example of overriding the blueprint name.
20
-
21
- lono cfn deploy my-stack --blueprint demo
@@ -1,3 +0,0 @@
1
- ## Examples
2
-
3
- lono cfn download my-stack