lono 7.5.2 → 8.0.0.pre.rc3

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.
Files changed (517) 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 +46 -5
  10. data/CONTRIBUTING.md +2 -2
  11. data/Gemfile +3 -1
  12. data/LICENSE.txt +201 -1
  13. data/README.md +6 -11
  14. data/lib/lono/api/client.rb +3 -2
  15. data/lib/lono/app/callable_option/concern.rb +12 -0
  16. data/lib/lono/app/callable_option.rb +56 -0
  17. data/lib/lono/app/inits.rb +13 -0
  18. data/lib/lono/app.rb +73 -0
  19. data/lib/lono/autoloader.rb +3 -2
  20. data/lib/lono/aws_services/helper.rb +41 -6
  21. data/lib/lono/aws_services.rb +37 -6
  22. data/lib/lono/blueprint.rb +3 -11
  23. data/lib/lono/booter.rb +28 -0
  24. data/lib/lono/builder/allow/base.rb +54 -0
  25. data/lib/lono/builder/allow/env.rb +17 -0
  26. data/lib/lono/builder/allow/region.rb +20 -0
  27. data/lib/lono/builder/allow.rb +8 -0
  28. data/lib/lono/builder/configset/combiner.rb +145 -0
  29. data/lib/lono/builder/configset/definition/base.rb +47 -0
  30. data/lib/lono/builder/configset/definition/context.rb +29 -0
  31. data/lib/lono/{configset/strategy/helpers/dsl → builder/configset/definition/dsl/syntax}/auth.rb +1 -1
  32. data/lib/lono/{configset/strategy/helpers/dsl/core.rb → builder/configset/definition/dsl/syntax/content.rb} +11 -3
  33. data/lib/lono/{configset/strategy/helpers/dsl/syntax.rb → builder/configset/definition/dsl/syntax/core.rb} +15 -9
  34. data/lib/lono/{configset/strategy/helpers/dsl → builder/configset/definition/dsl/syntax}/package.rb +1 -1
  35. data/lib/lono/builder/configset/definition/dsl/syntax.rb +5 -0
  36. data/lib/lono/{configset/strategy → builder/configset/definition}/dsl.rb +10 -14
  37. data/lib/lono/{configset/strategy → builder/configset/definition}/erb.rb +13 -16
  38. data/lib/lono/builder/configset/definition.rb +18 -0
  39. data/lib/lono/builder/configset/evaluator.rb +10 -0
  40. data/lib/lono/builder/configset/registration.rb +35 -0
  41. data/lib/lono/builder/context.rb +40 -0
  42. data/lib/lono/builder/dsl/evaluator.rb +45 -0
  43. data/lib/lono/builder/dsl/finalizer/base.rb +8 -0
  44. data/lib/lono/builder/dsl/finalizer/configsets.rb +20 -0
  45. data/lib/lono/builder/dsl/finalizer/files/base.rb +4 -0
  46. data/lib/lono/builder/dsl/finalizer/files/build.rb +58 -0
  47. data/lib/lono/builder/dsl/finalizer/files/replace.rb +31 -0
  48. data/lib/lono/builder/dsl/finalizer/files.rb +9 -0
  49. data/lib/lono/{template/strategy → builder}/dsl/finalizer/parameter_groups.rb +6 -5
  50. data/lib/lono/builder/dsl/finalizer.rb +15 -0
  51. data/lib/lono/{template/strategy/dsl/builder/helpers/ec2_helper.rb → builder/dsl/helpers/ec2.rb} +3 -3
  52. data/lib/lono/builder/dsl/helpers/files.rb +7 -0
  53. data/lib/lono/builder/dsl/helpers/partials.rb +140 -0
  54. data/lib/lono/{template/strategy/dsl/builder/helpers/s3_helper.rb → builder/dsl/helpers/s3.rb} +3 -3
  55. data/lib/lono/{template/context/ssm_fetcher.rb → builder/dsl/helpers/ssm/fetcher.rb} +5 -3
  56. data/lib/lono/{template/context/helpers.rb → builder/dsl/helpers/ssm.rb} +3 -3
  57. data/lib/lono/{template/strategy/dsl/builder/helpers/stack_helper.rb → builder/dsl/helpers/stack.rb} +14 -9
  58. data/lib/lono/{template/strategy/dsl/builder/helpers/tags_helper.rb → builder/dsl/helpers/tags.rb} +2 -2
  59. data/lib/lono/builder/dsl/helpers/template_file.rb +66 -0
  60. data/lib/lono/builder/dsl/helpers.rb +5 -0
  61. data/lib/lono/builder/dsl/syntax/core/base.rb +22 -0
  62. data/lib/lono/{template/strategy/dsl/builder/section → builder/dsl/syntax/core}/condition.rb +1 -1
  63. data/lib/lono/{template/strategy/dsl/builder/section → builder/dsl/syntax/core}/mapping.rb +1 -1
  64. data/lib/lono/{template/strategy/dsl/builder/section → builder/dsl/syntax/core}/output.rb +1 -1
  65. data/lib/lono/{template/strategy/dsl/builder/section → builder/dsl/syntax/core}/parameter.rb +1 -1
  66. data/lib/lono/{template/strategy/dsl/builder/section → builder/dsl/syntax/core}/resource/property_mover.rb +12 -2
  67. data/lib/lono/{template/strategy/dsl/builder/section → builder/dsl/syntax/core}/resource.rb +1 -1
  68. data/lib/lono/{template/strategy/dsl/builder/section → builder/dsl/syntax/core}/section.rb +1 -1
  69. data/lib/lono/builder/dsl/syntax/core/squeezer.rb +38 -0
  70. data/lib/lono/{template/strategy/dsl/builder/section/methods.rb → builder/dsl/syntax/core.rb} +8 -8
  71. data/lib/lono/{template/strategy/dsl/builder → builder/dsl/syntax}/fn.rb +2 -2
  72. data/lib/lono/{template/strategy/dsl/builder → builder/dsl}/syntax/parameter_group.rb +1 -1
  73. data/lib/lono/builder/dsl/syntax.rb +9 -0
  74. data/lib/lono/builder/dsl.rb +14 -0
  75. data/lib/lono/{param/generator.rb → builder/param.rb} +24 -22
  76. data/lib/lono/builder/template/aws_service.rb +15 -0
  77. data/lib/lono/builder/template/bashify.rb +43 -0
  78. data/lib/lono/{output/template.rb → builder/template/output.rb} +14 -7
  79. data/lib/lono/{template → builder/template}/post_processor.rb +4 -4
  80. data/lib/lono/builder/template/upload.rb +8 -0
  81. data/lib/lono/builder/template.rb +55 -0
  82. data/lib/lono/{template/strategy/dsl/builder → builder/util}/stringify.rb +1 -1
  83. data/lib/lono/bundler/cli/base.rb +10 -0
  84. data/lib/lono/bundler/cli/bundle.rb +44 -0
  85. data/lib/lono/bundler/cli/clean.rb +27 -0
  86. data/lib/lono/bundler/cli/help/bundle.md +3 -0
  87. data/lib/lono/bundler/cli/help.rb +11 -0
  88. data/lib/lono/bundler/cli.rb +7 -0
  89. data/lib/lono/bundler/component/concerns/local_concern.rb +10 -0
  90. data/lib/lono/bundler/component/concerns/notation_concern.rb +59 -0
  91. data/lib/lono/bundler/component/concerns/path_concern.rb +68 -0
  92. data/lib/lono/bundler/component/concerns/stack_concern.rb +60 -0
  93. data/lib/lono/bundler/component/fetcher/base.rb +27 -0
  94. data/lib/lono/bundler/component/fetcher/gcs.rb +69 -0
  95. data/lib/lono/bundler/component/fetcher/git.rb +69 -0
  96. data/lib/lono/bundler/component/fetcher/local.rb +15 -0
  97. data/lib/lono/bundler/component/fetcher/s3.rb +66 -0
  98. data/lib/lono/bundler/component/fetcher.rb +18 -0
  99. data/lib/lono/bundler/component/http/concern.rb +45 -0
  100. data/lib/lono/bundler/component/http/source.rb +19 -0
  101. data/lib/lono/bundler/component/org_repo.rb +65 -0
  102. data/lib/lono/bundler/component/props/extension.rb +18 -0
  103. data/lib/lono/bundler/component/props/typer.rb +41 -0
  104. data/lib/lono/bundler/component/props.rb +122 -0
  105. data/lib/lono/bundler/component/registry.rb +136 -0
  106. data/lib/lono/bundler/component.rb +52 -0
  107. data/lib/lono/bundler/config.rb +18 -0
  108. data/lib/lono/bundler/dsl/syntax.rb +46 -0
  109. data/lib/lono/bundler/dsl.rb +21 -0
  110. data/lib/lono/bundler/exporter/base.rb +6 -0
  111. data/lib/lono/bundler/exporter/copy.rb +22 -0
  112. data/lib/lono/bundler/exporter.rb +50 -0
  113. data/lib/lono/bundler/extract/tar.rb +33 -0
  114. data/lib/lono/bundler/extract/zip.rb +16 -0
  115. data/lib/lono/bundler/info.rb +39 -0
  116. data/lib/lono/bundler/list.rb +26 -0
  117. data/lib/lono/bundler/lockfile/version_comparer.rb +56 -0
  118. data/lib/lono/bundler/lockfile/yamler.rb +36 -0
  119. data/lib/lono/bundler/lockfile.rb +66 -0
  120. data/lib/lono/bundler/lonofile.rb +32 -0
  121. data/lib/lono/bundler/runner.rb +27 -0
  122. data/lib/lono/bundler/syncer.rb +70 -0
  123. data/lib/lono/bundler/util/git.rb +37 -0
  124. data/lib/lono/bundler/util/logging.rb +7 -0
  125. data/lib/lono/bundler/util/sure.rb +5 -0
  126. data/lib/lono/{bundle.rb → bundler.rb} +38 -4
  127. data/lib/lono/cfn/base.rb +9 -195
  128. data/lib/lono/cfn/cancel.rb +12 -29
  129. data/lib/lono/cfn/concerns/build.rb +10 -0
  130. data/lib/lono/cfn/concerns/template_output.rb +10 -0
  131. data/lib/lono/cfn/concerns.rb +43 -0
  132. data/lib/lono/cfn/delete.rb +8 -32
  133. data/lib/lono/cfn/deploy/base.rb +4 -0
  134. data/lib/lono/cfn/deploy/iam.rb +48 -0
  135. data/lib/lono/cfn/deploy/notification.rb +8 -0
  136. data/lib/lono/cfn/deploy/operable.rb +18 -0
  137. data/lib/lono/cfn/deploy/opts.rb +49 -0
  138. data/lib/lono/cfn/deploy/rollback.rb +46 -0
  139. data/lib/lono/cfn/deploy/tags.rb +18 -0
  140. data/lib/lono/cfn/deploy.rb +100 -5
  141. data/lib/lono/cfn/download.rb +4 -7
  142. data/lib/lono/cfn/output.rb +49 -0
  143. data/lib/lono/cfn/plan/base.rb +19 -0
  144. data/lib/lono/cfn/plan/changeset/base.rb +19 -0
  145. data/lib/lono/cfn/plan/changeset/notifications.rb +24 -0
  146. data/lib/lono/cfn/plan/changeset/outputs.rb +25 -0
  147. data/lib/lono/cfn/plan/changeset/resources.rb +48 -0
  148. data/lib/lono/cfn/plan/changeset/tags.rb +16 -0
  149. data/lib/lono/cfn/plan/changeset.rb +136 -0
  150. data/lib/lono/cfn/plan/concerns.rb +10 -0
  151. data/lib/lono/cfn/plan/delete.rb +16 -0
  152. data/lib/lono/cfn/plan/diff/base.rb +10 -0
  153. data/lib/lono/cfn/plan/diff/data.rb +62 -0
  154. data/lib/lono/cfn/plan/diff/file.rb +57 -0
  155. data/lib/lono/cfn/plan/new.rb +26 -0
  156. data/lib/lono/cfn/{preview → plan}/param.rb +26 -34
  157. data/lib/lono/cfn/plan/summary.rb +16 -0
  158. data/lib/lono/cfn/plan/template.rb +28 -0
  159. data/lib/lono/cfn/plan.rb +34 -0
  160. data/lib/lono/cfn/show.rb +30 -0
  161. data/lib/lono/cfn/status.rb +1 -1
  162. data/lib/lono/cli/abstract.rb +11 -0
  163. data/lib/lono/cli/base.rb +11 -0
  164. data/lib/lono/cli/build.rb +47 -0
  165. data/lib/lono/cli/bundle.rb +21 -0
  166. data/lib/lono/cli/cfn/opts.rb +59 -0
  167. data/lib/lono/cli/cfn.rb +19 -0
  168. data/lib/lono/cli/clean.rb +23 -0
  169. data/lib/lono/cli/code.rb +22 -0
  170. data/lib/lono/{completion.rb → cli/completion.rb} +2 -2
  171. data/lib/lono/{help → cli/help}/blueprint/new.md +4 -4
  172. data/lib/lono/{help/generate.md → cli/help/build.md} +6 -6
  173. data/lib/lono/{help → cli/help}/cfn/cancel.md +0 -0
  174. data/lib/lono/cli/help/cfn/download.md +3 -0
  175. data/lib/lono/{help → cli/help}/cfn/preview.md +9 -8
  176. data/lib/lono/{help → cli/help}/cfn/status.md +0 -1
  177. data/lib/lono/cli/help/cfn.md +4 -0
  178. data/lib/lono/{help → cli/help}/code/convert.md +0 -0
  179. data/lib/lono/{help → cli/help}/code/import.md +2 -2
  180. data/lib/lono/{help → cli/help}/completion.md +3 -3
  181. data/lib/lono/{help → cli/help}/completion_script.md +0 -0
  182. data/lib/lono/{help → cli/help}/configsets.md +0 -0
  183. data/lib/lono/cli/help/down.md +13 -0
  184. data/lib/lono/cli/help/new/helper/blueprint.md +17 -0
  185. data/lib/lono/cli/help/new/helper/project.md +16 -0
  186. data/lib/lono/cli/help/new/project.md +34 -0
  187. data/lib/lono/{help → cli/help}/param/generate.md +0 -0
  188. data/lib/lono/cli/help/param.md +6 -0
  189. data/lib/lono/{help → cli/help}/pro/blueprints.md +0 -0
  190. data/lib/lono/{help → cli/help}/pro/configsets.md +0 -0
  191. data/lib/lono/{help → cli/help}/script/build.md +0 -0
  192. data/lib/lono/{help → cli/help}/script/upload.md +0 -0
  193. data/lib/lono/cli/help/seed.md +24 -0
  194. data/lib/lono/cli/help/summary.md +33 -0
  195. data/lib/lono/{help → cli/help}/template/bashify.md +0 -0
  196. data/lib/lono/cli/help/template/generate.md +7 -0
  197. data/lib/lono/{help → cli/help}/template.md +0 -0
  198. data/lib/lono/cli/help/up.md +30 -0
  199. data/lib/lono/{help → cli/help}/user_data.md +3 -3
  200. data/lib/lono/cli/help.rb +56 -0
  201. data/lib/lono/cli/list.rb +25 -0
  202. data/lib/lono/cli/new/blueprint.rb +29 -0
  203. data/lib/lono/cli/new/concerns.rb +16 -0
  204. data/lib/lono/cli/new/configset.rb +37 -0
  205. data/lib/lono/{extension/new.rb → cli/new/extension.rb} +2 -10
  206. data/lib/lono/cli/new/helper/blueprint.rb +26 -0
  207. data/lib/lono/cli/new/helper/project.rb +24 -0
  208. data/lib/lono/cli/new/helper.rb +13 -0
  209. data/lib/lono/cli/new/project.rb +77 -0
  210. data/lib/lono/cli/new/sequence.rb +56 -0
  211. data/lib/lono/cli/new/shim.rb +59 -0
  212. data/lib/lono/cli/new/test/blueprint.rb +23 -0
  213. data/lib/lono/cli/new/test/sequence.rb +10 -0
  214. data/lib/lono/cli/new/test.rb +8 -0
  215. data/lib/lono/cli/new.rb +27 -0
  216. data/lib/lono/{opts.rb → cli/opts.rb} +9 -12
  217. data/lib/lono/{s3.rb → cli/s3.rb} +9 -7
  218. data/lib/lono/cli/script/base.rb +5 -0
  219. data/lib/lono/cli/script/build.rb +72 -0
  220. data/lib/lono/cli/script/upload.rb +49 -0
  221. data/lib/lono/{script.rb → cli/script.rb} +2 -2
  222. data/lib/lono/cli/seed.rb +9 -0
  223. data/lib/lono/cli/status.rb +18 -0
  224. data/lib/lono/cli/test.rb +35 -0
  225. data/lib/lono/cli.rb +78 -109
  226. data/lib/lono/command.rb +27 -1
  227. data/lib/lono/component.rb +29 -0
  228. data/lib/lono/concerns/aws_info.rb +14 -0
  229. data/lib/lono/concerns/names.rb +9 -0
  230. data/lib/lono/configset.rb +11 -10
  231. data/lib/lono/core.rb +25 -54
  232. data/lib/lono/ext/core/module.rb +31 -0
  233. data/lib/lono/ext/core/object.rb +32 -0
  234. data/lib/lono/ext/core/string.rb +9 -0
  235. data/lib/lono/ext.rb +4 -0
  236. data/lib/lono/files/base.rb +12 -0
  237. data/lib/lono/files/builder.rb +37 -0
  238. data/lib/lono/files/compressor.rb +53 -0
  239. data/lib/lono/files/concerns/post_processing.rb +35 -0
  240. data/lib/lono/files/concerns/registration.rb +13 -0
  241. data/lib/lono/files/registry.rb +6 -0
  242. data/lib/lono/files.rb +37 -0
  243. data/lib/lono/importer/base.rb +6 -6
  244. data/lib/lono/importer/download.rb +7 -7
  245. data/lib/lono/importer/dsl.rb +3 -3
  246. data/lib/lono/importer/service/coder.rb +67 -63
  247. data/lib/lono/importer.rb +1 -10
  248. data/lib/lono/inspector/base.rb +7 -7
  249. data/lib/lono/inspector/summary.rb +18 -19
  250. data/lib/lono/layering/layer.rb +112 -0
  251. data/lib/lono/layering.rb +13 -55
  252. data/lib/lono/logger/formatter.rb +13 -0
  253. data/lib/lono/logger.rb +32 -0
  254. data/lib/lono/names.rb +50 -0
  255. data/lib/lono/plugin/meta.rb +30 -0
  256. data/lib/lono/plugin/tester.rb +13 -0
  257. data/lib/lono/plugin.rb +10 -0
  258. data/lib/lono/s3/aws_setup.rb +4 -3
  259. data/lib/lono/s3/bucket.rb +42 -42
  260. data/lib/lono/s3/rollback.rb +8 -0
  261. data/lib/lono/s3/uploader.rb +33 -34
  262. data/lib/lono/script/base.rb +3 -3
  263. data/lib/lono/script/build.rb +11 -12
  264. data/lib/lono/script/upload.rb +7 -7
  265. data/lib/lono/seeder.rb +110 -0
  266. data/lib/lono/user_data.rb +10 -13
  267. data/lib/lono/utils/logging.rb +7 -0
  268. data/lib/lono/utils/{pretty_time.rb → pretty.rb} +6 -2
  269. data/lib/lono/utils/quit.rb +7 -0
  270. data/lib/lono/utils/rsync.rb +4 -2
  271. data/lib/lono/utils/sure.rb +4 -4
  272. data/lib/lono/version.rb +1 -1
  273. data/lib/lono/yamler/validator.rb +7 -22
  274. data/lib/lono.rb +15 -12
  275. data/lib/templates/blueprint/template.rb +2 -0
  276. data/lib/templates/configset/configset.rb +2 -0
  277. data/lib/templates/examples/blueprint/template.rb +9 -0
  278. data/lib/templates/{configset/lib → examples/configset}/configset.rb +0 -0
  279. data/lib/templates/helper/%underscore_name%_helper.rb.tt +6 -0
  280. data/lib/templates/{skeleton → project}/.gitignore +1 -2
  281. data/lib/templates/project/Gemfile.tt +11 -0
  282. data/lib/templates/project/README.md +9 -0
  283. data/lib/templates/project/config/app.rb +3 -0
  284. data/lib/templates/shim/lono +7 -0
  285. data/lono.gemspec +51 -44
  286. metadata +282 -296
  287. data/.circleci/README.md +0 -3
  288. data/.circleci/config.yml +0 -58
  289. data/.cody/acceptance.sh +0 -49
  290. data/.cody/buildspec.yml +0 -9
  291. data/.cody/demo.rb +0 -38
  292. data/.cody/project.rb +0 -6
  293. data/.gitmodules +0 -3
  294. data/lib/lono/abstract_base.rb +0 -25
  295. data/lib/lono/app_file/base.rb +0 -28
  296. data/lib/lono/app_file/build/lambda_layer/ruby_packager.rb +0 -153
  297. data/lib/lono/app_file/build/lambda_layer.rb +0 -20
  298. data/lib/lono/app_file/build.rb +0 -84
  299. data/lib/lono/app_file/registry/item.rb +0 -24
  300. data/lib/lono/app_file/registry.rb +0 -16
  301. data/lib/lono/app_file/upload.rb +0 -12
  302. data/lib/lono/aws_services/stack.rb +0 -41
  303. data/lib/lono/aws_services/stack_set.rb +0 -41
  304. data/lib/lono/blueprint/configset/loader.rb +0 -7
  305. data/lib/lono/blueprint/helper.rb +0 -24
  306. data/lib/lono/blueprint/meta.rb +0 -30
  307. data/lib/lono/blueprint/new.rb +0 -127
  308. data/lib/lono/blueprint/root.rb +0 -25
  309. data/lib/lono/cfn/create.rb +0 -41
  310. data/lib/lono/cfn/opts.rb +0 -88
  311. data/lib/lono/cfn/preview/changeset.rb +0 -168
  312. data/lib/lono/cfn/preview/codediff.rb +0 -41
  313. data/lib/lono/cfn/preview/diff_viewer.rb +0 -23
  314. data/lib/lono/cfn/rollback.rb +0 -26
  315. data/lib/lono/cfn/update.rb +0 -71
  316. data/lib/lono/cfn.rb +0 -75
  317. data/lib/lono/clean.rb +0 -14
  318. data/lib/lono/code.rb +0 -22
  319. data/lib/lono/configset/combiner.rb +0 -162
  320. data/lib/lono/configset/evaluate_file.rb +0 -8
  321. data/lib/lono/configset/generator.rb +0 -57
  322. data/lib/lono/configset/list.rb +0 -67
  323. data/lib/lono/configset/meta/dsl.rb +0 -12
  324. data/lib/lono/configset/meta.rb +0 -19
  325. data/lib/lono/configset/new.rb +0 -77
  326. data/lib/lono/configset/preparer.rb +0 -44
  327. data/lib/lono/configset/register/base.rb +0 -122
  328. data/lib/lono/configset/register/blueprint.rb +0 -16
  329. data/lib/lono/configset/register/dsl.rb +0 -14
  330. data/lib/lono/configset/register/project.rb +0 -13
  331. data/lib/lono/configset/resolver.rb +0 -47
  332. data/lib/lono/configset/s3_file/build.rb +0 -33
  333. data/lib/lono/configset/s3_file/item.rb +0 -38
  334. data/lib/lono/configset/s3_file/registry.rb +0 -12
  335. data/lib/lono/configset/s3_file/upload.rb +0 -12
  336. data/lib/lono/configset/strategy/base.rb +0 -83
  337. data/lib/lono/configset/strategy/helpers/dsl.rb +0 -8
  338. data/lib/lono/configset/strategy/helpers/erb.rb +0 -9
  339. data/lib/lono/conventions.rb +0 -23
  340. data/lib/lono/core/config.rb +0 -22
  341. data/lib/lono/default/settings.yml +0 -21
  342. data/lib/lono/extension/helper.rb +0 -13
  343. data/lib/lono/extension/list.rb +0 -40
  344. data/lib/lono/extension.rb +0 -9
  345. data/lib/lono/extensions/dsl.rb +0 -11
  346. data/lib/lono/extensions/loader.rb +0 -30
  347. data/lib/lono/extensions/preparer.rb +0 -26
  348. data/lib/lono/extensions/register.rb +0 -15
  349. data/lib/lono/extensions.rb +0 -18
  350. data/lib/lono/file_uploader.rb +0 -21
  351. data/lib/lono/finder/base.rb +0 -152
  352. data/lib/lono/finder/blueprint/configset.rb +0 -17
  353. data/lib/lono/finder/blueprint.rb +0 -11
  354. data/lib/lono/finder/configset.rb +0 -11
  355. data/lib/lono/finder/extension.rb +0 -11
  356. data/lib/lono/generate.rb +0 -111
  357. data/lib/lono/help/cfn/create.md +0 -26
  358. data/lib/lono/help/cfn/delete.md +0 -13
  359. data/lib/lono/help/cfn/deploy.md +0 -21
  360. data/lib/lono/help/cfn/download.md +0 -3
  361. data/lib/lono/help/cfn/update.md +0 -49
  362. data/lib/lono/help/cfn.md +0 -7
  363. data/lib/lono/help/new.md +0 -57
  364. data/lib/lono/help/param.md +0 -6
  365. data/lib/lono/help/seed.md +0 -23
  366. data/lib/lono/help/set_instances/delete.md +0 -21
  367. data/lib/lono/help/set_instances/deploy.md +0 -31
  368. data/lib/lono/help/set_instances/list.md +0 -14
  369. data/lib/lono/help/set_instances/status.md +0 -15
  370. data/lib/lono/help/set_instances/sync.md +0 -92
  371. data/lib/lono/help/sets/delete.md +0 -8
  372. data/lib/lono/help/sets/deploy.md +0 -76
  373. data/lib/lono/help/sets/status.md +0 -23
  374. data/lib/lono/help/summary.md +0 -33
  375. data/lib/lono/help/template/generate.md +0 -7
  376. data/lib/lono/help/upgrade.md +0 -1
  377. data/lib/lono/help/xgraph.md +0 -16
  378. data/lib/lono/help.rb +0 -15
  379. data/lib/lono/importer/erb.rb +0 -31
  380. data/lib/lono/inspector/graph.rb +0 -125
  381. data/lib/lono/jade/circular.rb +0 -26
  382. data/lib/lono/jade/materializer/final.rb +0 -10
  383. data/lib/lono/jade/materializer/gems_builder.rb +0 -81
  384. data/lib/lono/jade/materializer/source.rb +0 -54
  385. data/lib/lono/jade/materializer.rb +0 -15
  386. data/lib/lono/jade/registry.rb +0 -64
  387. data/lib/lono/jade.rb +0 -110
  388. data/lib/lono/jadespec.rb +0 -68
  389. data/lib/lono/new/helper.rb +0 -15
  390. data/lib/lono/new.rb +0 -95
  391. data/lib/lono/param.rb +0 -14
  392. data/lib/lono/pro/base.rb +0 -16
  393. data/lib/lono/pro/repo.rb +0 -28
  394. data/lib/lono/pro.rb +0 -15
  395. data/lib/lono/project_checker.rb +0 -35
  396. data/lib/lono/registration/base.rb +0 -37
  397. data/lib/lono/registration/check.rb +0 -15
  398. data/lib/lono/registration/temp.rb +0 -53
  399. data/lib/lono/registration/user.rb +0 -60
  400. data/lib/lono/seed/base.rb +0 -116
  401. data/lib/lono/seed/service_role.rb +0 -11
  402. data/lib/lono/seed.rb +0 -39
  403. data/lib/lono/sequence.rb +0 -35
  404. data/lib/lono/set_instances/base.rb +0 -30
  405. data/lib/lono/set_instances/changeable.rb +0 -53
  406. data/lib/lono/set_instances/create.rb +0 -7
  407. data/lib/lono/set_instances/delete.rb +0 -47
  408. data/lib/lono/set_instances/deploy.rb +0 -52
  409. data/lib/lono/set_instances/list.rb +0 -13
  410. data/lib/lono/set_instances/opts.rb +0 -37
  411. data/lib/lono/set_instances/status.rb +0 -12
  412. data/lib/lono/set_instances/sync.rb +0 -181
  413. data/lib/lono/set_instances/update.rb +0 -15
  414. data/lib/lono/set_instances.rb +0 -54
  415. data/lib/lono/sets/base.rb +0 -50
  416. data/lib/lono/sets/create.rb +0 -27
  417. data/lib/lono/sets/delete.rb +0 -43
  418. data/lib/lono/sets/deploy.rb +0 -11
  419. data/lib/lono/sets/list.rb +0 -35
  420. data/lib/lono/sets/opts.rb +0 -18
  421. data/lib/lono/sets/preview/codediff.rb +0 -35
  422. data/lib/lono/sets/preview/param.rb +0 -32
  423. data/lib/lono/sets/status/instance/base.rb +0 -120
  424. data/lib/lono/sets/status/instance/completed.rb +0 -35
  425. data/lib/lono/sets/status/instance/deleted.rb +0 -32
  426. data/lib/lono/sets/status/instance/show.rb +0 -7
  427. data/lib/lono/sets/status/instance.rb +0 -20
  428. data/lib/lono/sets/status/instances.rb +0 -136
  429. data/lib/lono/sets/status.rb +0 -128
  430. data/lib/lono/sets/summarize.rb +0 -22
  431. data/lib/lono/sets/time_spent.rb +0 -11
  432. data/lib/lono/sets/update.rb +0 -74
  433. data/lib/lono/sets/waiter.rb +0 -23
  434. data/lib/lono/sets.rb +0 -34
  435. data/lib/lono/setting.rb +0 -75
  436. data/lib/lono/template/aws_service.rb +0 -20
  437. data/lib/lono/template/bashify.rb +0 -39
  438. data/lib/lono/template/configset_injector.rb +0 -52
  439. data/lib/lono/template/context/loader/load_files.rb +0 -24
  440. data/lib/lono/template/context/loader.rb +0 -52
  441. data/lib/lono/template/context.rb +0 -29
  442. data/lib/lono/template/evaluate.rb +0 -40
  443. data/lib/lono/template/generator.rb +0 -23
  444. data/lib/lono/template/helper.rb +0 -152
  445. data/lib/lono/template/strategy/base.rb +0 -4
  446. data/lib/lono/template/strategy/common/helpers.rb +0 -44
  447. data/lib/lono/template/strategy/dsl/builder/helpers/core_helper.rb +0 -14
  448. data/lib/lono/template/strategy/dsl/builder/helpers/file_helper.rb +0 -48
  449. data/lib/lono/template/strategy/dsl/builder/helpers.rb +0 -16
  450. data/lib/lono/template/strategy/dsl/builder/section/base.rb +0 -30
  451. data/lib/lono/template/strategy/dsl/builder/squeezer.rb +0 -24
  452. data/lib/lono/template/strategy/dsl/builder/syntax/extend_with.rb +0 -9
  453. data/lib/lono/template/strategy/dsl/builder/syntax.rb +0 -11
  454. data/lib/lono/template/strategy/dsl/builder.rb +0 -59
  455. data/lib/lono/template/strategy/dsl/finalizer.rb +0 -12
  456. data/lib/lono/template/strategy/dsl.rb +0 -14
  457. data/lib/lono/template/strategy/erb.rb +0 -82
  458. data/lib/lono/template/strategy/source.rb +0 -8
  459. data/lib/lono/template/template.rb +0 -54
  460. data/lib/lono/template/upload.rb +0 -23
  461. data/lib/lono/template/util.rb +0 -8
  462. data/lib/lono/template.rb +0 -24
  463. data/lib/lono/upgrade.rb +0 -20
  464. data/lib/lono/utils/generators/tree.rb +0 -18
  465. data/lib/lono/utils/item/file_methods.rb +0 -29
  466. data/lib/lono/utils/item/zip.rb +0 -42
  467. data/lib/templates/blueprint/%blueprint_name%.gemspec.tt +0 -45
  468. data/lib/templates/blueprint/.gitignore +0 -11
  469. data/lib/templates/blueprint/CHANGELOG.md +0 -7
  470. data/lib/templates/blueprint/Gemfile +0 -4
  471. data/lib/templates/blueprint/README.md.tt +0 -33
  472. data/lib/templates/blueprint/Rakefile.tt +0 -9
  473. data/lib/templates/blueprint/seed/configs.rb +0 -28
  474. data/lib/templates/blueprint_types/dsl/app/templates/%blueprint_name%.rb +0 -36
  475. data/lib/templates/blueprint_types/dsl/app/user_data/bootstrap.sh +0 -2
  476. data/lib/templates/blueprint_types/erb/app/definitions/base.rb.tt +0 -1
  477. data/lib/templates/blueprint_types/erb/app/templates/%blueprint_name%.yml +0 -67
  478. data/lib/templates/configset/%configset_name%.gemspec.tt +0 -42
  479. data/lib/templates/configset/.gitignore +0 -10
  480. data/lib/templates/configset/CHANGELOG.md +0 -7
  481. data/lib/templates/configset/Gemfile +0 -4
  482. data/lib/templates/configset/README.md.tt +0 -3
  483. data/lib/templates/configset/Rakefile.tt +0 -9
  484. data/lib/templates/extension/%extension_name%.gemspec.tt +0 -46
  485. data/lib/templates/extension/.gitignore +0 -11
  486. data/lib/templates/extension/.rspec +0 -3
  487. data/lib/templates/extension/CHANGELOG.md +0 -7
  488. data/lib/templates/extension/Gemfile.tt +0 -4
  489. data/lib/templates/extension/Rakefile.tt +0 -9
  490. data/lib/templates/extension/spec/spec_helper.rb.tt +0 -29
  491. data/lib/templates/skeleton/Gemfile +0 -3
  492. data/lib/templates/skeleton/README.md +0 -58
  493. data/lib/templates/skeleton/configs/settings.yml +0 -13
  494. data/vendor/cfn-status/CHANGELOG.md +0 -14
  495. data/vendor/cfn-status/Gemfile +0 -4
  496. data/vendor/cfn-status/Gemfile.lock +0 -49
  497. data/vendor/cfn-status/LICENSE.txt +0 -21
  498. data/vendor/cfn-status/README.md +0 -58
  499. data/vendor/cfn-status/Rakefile +0 -6
  500. data/vendor/cfn-status/bin/console +0 -14
  501. data/vendor/cfn-status/bin/setup +0 -8
  502. data/vendor/cfn-status/cfn-status.gemspec +0 -30
  503. data/vendor/cfn-status/lib/cfn-status.rb +0 -1
  504. data/vendor/cfn-status/lib/cfn_status/aws_service.rb +0 -51
  505. data/vendor/cfn-status/lib/cfn_status/version.rb +0 -3
  506. data/vendor/cfn-status/lib/cfn_status.rb +0 -245
  507. data/vendor/cfn-status/spec/fixtures/cfn/pages/fresh/describe_stack_events-1.json +0 -1103
  508. data/vendor/cfn-status/spec/fixtures/cfn/pages/fresh/describe_stack_events-2.json +0 -1104
  509. data/vendor/cfn-status/spec/fixtures/cfn/pages/fresh/describe_stack_events-3.json +0 -1103
  510. data/vendor/cfn-status/spec/fixtures/cfn/pages/updating/describe_stack_events-1.json +0 -1103
  511. data/vendor/cfn-status/spec/fixtures/cfn/pages/updating/describe_stack_events-2.json +0 -1104
  512. data/vendor/cfn-status/spec/fixtures/cfn/pages/updating/describe_stack_events-3.json +0 -1103
  513. data/vendor/cfn-status/spec/fixtures/cfn/stack-events-complete.json +0 -1080
  514. data/vendor/cfn-status/spec/fixtures/cfn/stack-events-in-progress.json +0 -1080
  515. data/vendor/cfn-status/spec/fixtures/cfn/stack-events-update-rollback-complete.json +0 -1086
  516. data/vendor/cfn-status/spec/lib/cfn_status_spec.rb +0 -153
  517. data/vendor/cfn-status/spec/spec_helper.rb +0 -14
@@ -1,64 +0,0 @@
1
- class Lono::Jade
2
- class Registry
3
- attr_reader :args, :options
4
- attr_accessor :caller_line, :parent, :depends_on
5
- def initialize(args, options)
6
- @args, @options = args, options
7
- end
8
-
9
- def name
10
- @args.first
11
- end
12
-
13
- def gem_options
14
- options = @options.dup
15
- # Delete special options that is not supported by bundler Gemfile
16
- options.delete(:repo)
17
- options.delete(:resource) # configset
18
- options.delete(:vars) # configset
19
- options
20
- end
21
-
22
- # configset
23
- def resource
24
- @options[:resource]
25
- end
26
-
27
- def resource=(v)
28
- @options[:resource] = v
29
- end
30
-
31
- def vars
32
- options[:vars] || {}
33
- end
34
-
35
- class_attribute :tracked_configsets, default: []
36
- class_attribute :downloaded_configsets, default: []
37
- class_attribute :tracked_extensions, default: []
38
- class_attribute :downloaded_extensions, default: []
39
-
40
- class << self
41
- def register_configset(args, options)
42
- registry = new(args, options)
43
- jade_type = determine_jade_type(caller)
44
- jade = Lono::Jade.new(registry.name, jade_type, registry)
45
- self.tracked_configsets << jade
46
- registry
47
- end
48
-
49
- def determine_jade_type(caller)
50
- if caller.detect { |l| l =~ %r{config/configsets.rb} }
51
- 'blueprint/configset'
52
- else
53
- 'configset'
54
- end
55
- end
56
-
57
- def register_extension(args, options)
58
- registry = new(args, options)
59
- self.tracked_extensions << registry
60
- registry
61
- end
62
- end
63
- end
64
- end
data/lib/lono/jade.rb DELETED
@@ -1,110 +0,0 @@
1
- module Lono
2
- class Jade
3
- include Circular
4
- extend Memoist
5
-
6
- delegate :source_type, to: :jadespec
7
-
8
- attr_accessor :dependencies, :from, :depends_ons
9
- attr_reader :name, :type, :registry, :jadespec
10
- def initialize(name, type, registry={})
11
- # type: one of blueprint, configset, blueprint/configset
12
- # registry holds either original registry from configset definition or parent jade which can be used to get the original configset defintion
13
- @name, @type, @registry = name, type, registry
14
- @materialized = false
15
- @resolved = false
16
- @depends_ons = []
17
- end
18
-
19
- def repo
20
- @registry.options[:repo] || @name
21
- end
22
-
23
- # root is kind of special. root is needed for materialization but can accidentally get called too early
24
- # before materialization. So treat it specially with an error.
25
- def root
26
- raise "ERROR: root is not available until jade has been materialized" unless @jadespec
27
- @jadespec.root
28
- end
29
-
30
- def dependencies
31
- @depends_ons.map do |registry|
32
- jade = Lono::Jade.new(registry.depends_on, registry.parent.type, registry) # not same sig as register_configset?
33
- Lono::Jade::Registry.tracked_configsets << jade
34
- jade
35
- end
36
- end
37
-
38
- def resource_from_parent
39
- parent = registry.parent # using local variable intentionally
40
- resource = nil
41
- while parent # go all the way to the highest parent
42
- resource = parent.registry.resource
43
- parent = parent.registry.parent
44
- end
45
- resource
46
- end
47
-
48
- def materialize
49
- @jadespec = finder.find(@name)
50
- download unless @jadespec
51
- # Pretty tricky. Flush memoized finder(true) since download changes filesystem. Not memoizing at all is 2x slower
52
- @jadespec = finder(true).find(@name)
53
- return nil unless @jadespec
54
- if @jadespec.source_type == "materialized"
55
- # possible "duplicated" jade instances with same name but will uniq in final materialized Gemfile
56
- case @jadespec.lono_type
57
- when "configset"
58
- Lono::Jade::Registry.downloaded_configsets << self
59
- when "extension"
60
- Lono::Jade::Registry.downloaded_extensions << self
61
- end
62
- end
63
- evaluate_meta_rb
64
- @jadespec
65
- end
66
- memoize :materialize
67
-
68
- # Must return config to set @jadespec in materialize
69
- # Only allow download of Lono::Blueprint::Configset::Jade
70
- # Other configsets should be configured in project Gemfile.
71
- #
72
- # Cases:
73
- #
74
- # 1a) blueprint/configset top-level - download
75
- # 1b) blueprint/configset depends_on - download
76
- # 2a) configset top-level - dont download, will report to user with validate_all!
77
- # 2b) configset depends_on - download
78
- # 3) extension - download
79
- #
80
- def download
81
- return if finder.find(@name, local_only: true) # no need to download because locally found
82
- return unless %w[blueprint/configset configset extension].include?(@type)
83
- # Comment out. Unsure if this complexity is worth it. Always download jades.
84
- # Only download jades that came from depends_on
85
- # return unless @registry.parent || %w[blueprint/configset extension].include?(@type)
86
- materializer = Materializer.new(self)
87
- materializer.build
88
- end
89
- memoize :download
90
-
91
- def evaluate_meta_rb
92
- return unless %w[blueprint/configset configset].include?(@type)
93
- meta = Lono::Configset::Meta.new(self)
94
- meta.evaluate
95
- end
96
-
97
- def resolved!
98
- @resolved = true
99
- end
100
-
101
- def resolved?
102
- @resolved
103
- end
104
-
105
- def finder
106
- "Lono::Finder::#{@type.camelize}".constantize.new
107
- end
108
- memoize :finder
109
- end
110
- end
data/lib/lono/jadespec.rb DELETED
@@ -1,68 +0,0 @@
1
- require "rubygems"
2
-
3
- module Lono
4
- class Jadespec
5
- extend Memoist
6
-
7
- attr_accessor :from
8
- attr_reader :root, :source_type
9
- def initialize(root, source_type)
10
- @root, @source_type = root, source_type
11
- end
12
-
13
- def name
14
- exist? ? gemspec.name : "not gemspec file found for @root: #{@root}"
15
- end
16
-
17
- def exist?
18
- !!gemspec_file
19
- end
20
-
21
- def gemspec
22
- Gem::Specification::load(gemspec_file)
23
- end
24
- memoize :gemspec
25
-
26
- def gemspec_file
27
- Dir.glob("#{@root}/*.gemspec").first
28
- end
29
-
30
- def lono_type
31
- deprecation_check(metadata)
32
- metadata["lono_type"] || detect_type
33
- end
34
-
35
- def detect_type
36
- configset = Dir.glob("#{@root}/lib/configset.*").size > 0
37
- configset ? "configset" : "blueprint"
38
- end
39
-
40
- def lono_strategy
41
- deprecation_check(metadata)
42
- return metadata["lono_strategy"] if metadata["lono_strategy"]
43
- lono_type == "blueprint" ? "dsl" : "erb" # TODO: default to dsl for configset also in next major release
44
- end
45
-
46
- # backward-compatiable for now
47
- def auto_camelize
48
- metadata["lono_auto_camelize"] || false
49
- end
50
-
51
- def metadata
52
- gemspec.metadata || {}
53
- end
54
- memoize :metadata
55
-
56
- private
57
- @@deprecation_check_shown = {}
58
- def deprecation_check(metadata)
59
- return unless ENV['LONO_DEPRECATION_SOFT']
60
- return if @@deprecation_check_shown[name]
61
-
62
- unless metadata["lono_type"]
63
- puts "DEPRECATION WARNING: lono_type is not set for #{name}".color(:yellow)
64
- end
65
- @@deprecation_check_shown[name] = true
66
- end
67
- end
68
- end
@@ -1,15 +0,0 @@
1
- module Lono::New::Helper
2
- private
3
- def project_class_name
4
- project_name.underscore.camelize
5
- end
6
-
7
- # Files should be named with underscores instead of dashes even though project name can contain a dash.
8
- # This is because autoloading works with underscores in the filenames only.
9
- def underscored_name
10
- project_name.underscore
11
- end
12
-
13
- # project_name is also available from new.rb:
14
- # argument :project_name
15
- end
data/lib/lono/new.rb DELETED
@@ -1,95 +0,0 @@
1
- module Lono
2
- class New < Sequence
3
- include Helper
4
-
5
- argument :project_name
6
-
7
- # Ugly, but when the class_option is only defined in the Thor::Group class
8
- # it doesnt show up with cli-template new help :(
9
- # If anyone knows how to fix this let me know.
10
- # Also options from the cli can be pass through to here
11
- def self.cli_options
12
- [
13
- [:bundle, type: :boolean, default: true, desc: "Runs bundle install on the project"],
14
- [:demo, type: :boolean, default: false, desc: "Also generate demo blueprint"],
15
- [:force, type: :boolean, desc: "Bypass overwrite are you sure prompt for existing files."],
16
- [:git, type: :boolean, default: true, desc: "Git initialize the project"],
17
- [:type, default: "dsl", desc: "Blueprint type: dsl or erb"],
18
- ]
19
- end
20
-
21
- cli_options.each do |args|
22
- class_option(*args)
23
- end
24
-
25
- # for specs
26
- def set_cwd
27
- @cwd = Dir.pwd
28
- end
29
-
30
- def create_project
31
- puts "=> Creating new project called #{project_name}."
32
- directory ".", "#{@cwd}/#{project_name}"
33
- end
34
-
35
- def create_starter_blueprint
36
- return unless @options[:demo]
37
- # https://github.com/erikhuda/thor/wiki/Invocations
38
- Lono::Blueprint::New.start(["demo", "--from-new", "--type", @options[:type], "--project-name", project_name])
39
- end
40
-
41
- # After this commands are executed with the newly created project
42
- def set_destination_root
43
- destination_root = "#{@cwd}/#{project_name}"
44
- self.destination_root = destination_root
45
- FileUtils.cd(self.destination_root)
46
- end
47
-
48
- def make_executable
49
- chmod("exe", 0755 & ~File.umask, verbose: false) if File.exist?("exe")
50
- end
51
-
52
- def git_init
53
- return if File.exist?(".git") # this is a clone repo
54
- run_git_init
55
- end
56
-
57
- def bundle_install
58
- return unless options[:bundle]
59
-
60
- puts "=> Installing dependencies with: bundle install"
61
- Bundler.with_unbundled_env do
62
- system("BUNDLE_IGNORE_CONFIG=1 bundle install")
63
- end
64
- end
65
-
66
- def git_commit
67
- run_git_commit
68
- end
69
-
70
- def welcome_message
71
- puts <<~EOL
72
- #{"="*64}
73
- Congrats 🎉 You have successfully created a lono project. Check things out by going into the created infra folder.
74
-
75
- cd #{project_name}
76
-
77
- To create a new blueprint run:
78
-
79
- lono blueprint new demo
80
-
81
- To deploy the blueprint:
82
-
83
- lono cfn deploy my-demo --blueprint demo
84
-
85
- If you name the stack according to conventions, you can run:
86
-
87
- lono cfn deploy demo
88
-
89
- To list and create additional blueprints refer to https://lono.cloud/docs/core/blueprints
90
-
91
- More info: https://lono.cloud/
92
- EOL
93
- end
94
- end
95
- end
data/lib/lono/param.rb DELETED
@@ -1,14 +0,0 @@
1
- module Lono
2
- class Param < Command
3
- class_option :verbose, type: :boolean
4
- class_option :noop, type: :boolean
5
- class_option :mute, type: :boolean
6
-
7
- desc "generate BLUEPRINT", "Generate parameter output files to `output/params`."
8
- long_desc Lono::Help.text("param/generate")
9
- option :stack, desc: "stack name. defaults to blueprint name."
10
- def generate(blueprint)
11
- Generator.new(options.merge(blueprint: blueprint)).generate
12
- end
13
- end
14
- end
data/lib/lono/pro/base.rb DELETED
@@ -1,16 +0,0 @@
1
- require "text-table"
2
-
3
- class Lono::Pro
4
- class Base
5
- extend Memoist
6
-
7
- def initialize(options={})
8
- @options = options
9
- end
10
-
11
- def api
12
- Lono::Api::Client.new
13
- end
14
- memoize :api
15
- end
16
- end
data/lib/lono/pro/repo.rb DELETED
@@ -1,28 +0,0 @@
1
- class Lono::Pro
2
- class Repo < Base
3
- def run
4
- data = api.repos(@options[:type])
5
- # data = data[7..9]
6
- header = ["Name", "Docs", "Description"]
7
- rows = data.map do |d|
8
- desc = truncate(d[:description])
9
- [d[:name], d[:docs_url], desc]
10
- end
11
- show_table(header, rows)
12
- end
13
-
14
- private
15
- def truncate(string, max=36)
16
- string.length > max ? "#{string[0...max]}..." : string
17
- end
18
-
19
- def show_table(header, data)
20
- table = Text::Table.new
21
- table.head = header
22
- data.each do |item|
23
- table.rows << item
24
- end
25
- puts table
26
- end
27
- end
28
- end
data/lib/lono/pro.rb DELETED
@@ -1,15 +0,0 @@
1
- module Lono
2
- class Pro < Lono::Command
3
- desc "blueprints", "Lists available BoltOps Pro blueprints"
4
- long_desc Help.text("pro/blueprints")
5
- def blueprints
6
- Repo.new(options.merge(type: "blueprint")).run
7
- end
8
-
9
- desc "configsets", "Lists available BoltOps Pro configsets"
10
- long_desc Help.text("pro/configsets")
11
- def configsets
12
- Repo.new(options.merge(type: "configset")).run
13
- end
14
- end
15
- end
@@ -1,35 +0,0 @@
1
- # frozen_string_literal: true
2
- module Lono
3
- # Checks to see command is running in a lono project.
4
- # If not, provide a friendly message and possibly exit.
5
- class ProjectChecker
6
- class << self
7
- @@checked = false
8
- def check
9
- return if @@checked
10
-
11
- unless File.exist?("#{Lono.root}/configs/settings.yml")
12
- puts "ERROR: Could not find configs/settings.yml file. Are you sure you are in lono project?".color(:red)
13
- quit 1
14
- end
15
-
16
- @@checked = true
17
- end
18
-
19
- # Dont exit for this one. It's okay. But show a warning.
20
- def empty_templates
21
- if Dir["#{Lono.config.templates_path}/**/*"].empty?
22
- puts "INFO: The app/templates folder does not contain any lono template definitions.".color(:yellow)
23
- end
24
- end
25
-
26
- def quit(signal)
27
- if ENV['LONO_TEST'] == '1'
28
- signal == 0 || raise("Not in lono project. pwd: #{Dir.pwd}")
29
- else
30
- exit(signal)
31
- end
32
- end
33
- end
34
- end
35
- end
@@ -1,37 +0,0 @@
1
- class Lono::Registration
2
- class Base
3
- extend Memoist
4
-
5
- def initialize(options={})
6
- @options = options
7
- end
8
-
9
- # Same api call for temp_key and registration_key
10
- def request_verification(info)
11
- with_safety do
12
- api.verify(info)
13
- end
14
- end
15
-
16
- def get_temp_key
17
- with_safety do
18
- api.temp_key # grab temp registration key
19
- end
20
- end
21
-
22
- def with_safety
23
- yield
24
- rescue Errno::ECONNREFUSED, Errno::EAFNOSUPPORT
25
- raise if Lono::API != Lono::API_DEFAULT
26
- end
27
-
28
- def api
29
- Lono::Api::Client.new
30
- end
31
- memoize :api
32
-
33
- def say(msg)
34
- puts msg if @options[:cli]
35
- end
36
- end
37
- end
@@ -1,15 +0,0 @@
1
- # Incentive to register. Not meant for security.
2
- class Lono::Registration
3
- class Check
4
- extend Memoist
5
-
6
- def initialize(options={})
7
- @options = options
8
- end
9
-
10
- def check
11
- return true if User.new(@options).check
12
- Temp.new(@options).check
13
- end
14
- end
15
- end
@@ -1,53 +0,0 @@
1
- # Incentive to register. Not meant for security.
2
- class Lono::Registration
3
- class Temp < Base
4
- def check
5
- info = read_registration
6
- if info
7
- resp = request_verification(info)
8
- puts "request_verification resp #{resp.inspect}" if ENV['LONO_DEBUG_REGISTRATION']
9
- # resp nil means non-200 http response. Failsafe behavior is to continue.
10
- return true if resp.nil?
11
- end
12
-
13
- prompt unless resp && resp[:valid]
14
- true
15
- end
16
-
17
- def read_registration
18
- YAML.load_file(temp_path) if File.exist?(temp_path)
19
- end
20
-
21
- def prompt
22
- return if ENV['LONO_TEST']
23
-
24
- puts <<~EOL
25
-
26
- Looks like lono is not registered. Lono registration is optional and free.
27
- If you like lono though, please register to help support it. You can register at:
28
-
29
- https://register.lono.cloud
30
-
31
- This prompt appears every 24 hours when lono is not registered. Registration removes
32
- this message. Registered users can also optionally receive updates and special offers,
33
- including discounts to BoltOps Pro:
34
-
35
- https://lono.cloud/docs/boltops-pro/
36
-
37
- EOL
38
-
39
- # resp nil means non-200 http response
40
- resp = get_temp_key
41
- save_temp_key(resp) unless resp.nil? # save temp key so prompt only happens periodically
42
- end
43
-
44
- def save_temp_key(info)
45
- FileUtils.mkdir_p(File.dirname(temp_path))
46
- IO.write(temp_path, YAML.dump(info.deep_stringify_keys))
47
- end
48
-
49
- def temp_path
50
- "#{ENV['HOME']}/.lono/temp.yml"
51
- end
52
- end
53
- end
@@ -1,60 +0,0 @@
1
- class Lono::Registration
2
- class User < Base
3
- include Lono::Template::Context::Helpers # for ssm helper
4
-
5
- def check
6
- info = read_registration
7
- unless info
8
- say "Lono is not registered."
9
- say "The .lono/registration.yml and ~/.lono/registration.yml file does not exist."
10
- return false
11
- end
12
- unless info[:content].is_a?(Hash)
13
- say "Lono is not registered."
14
- say "#{info[:path]} does not have the right structure"
15
- return false
16
- end
17
-
18
- @resp = request_verification(info[:content])
19
- # A non-200 response means there was a non-200 http response. Failsafe behavior is to continue.
20
- # Unless called from the cli: lono registration check
21
- if @resp.nil?
22
- if @options[:cli]
23
- puts "There was an error with the API. Unable to confirm lono registration."
24
- return false
25
- else
26
- return true
27
- end
28
- end
29
-
30
- if @resp[:valid]
31
- say "Lono registration looks good!"
32
- return true
33
- end
34
-
35
- if @resp[:message]
36
- say "Lono is not correctly registered. Unable to confirm info in #{info[:path]}"
37
- say @resp[:message]
38
- end
39
- false
40
- end
41
-
42
- def read_registration
43
- folders = [Lono.root, ENV['HOME']]
44
- files = folders.map { |f| "#{f}/.lono/registration.yml" }
45
- found = files.find do |path|
46
- File.exist?(path)
47
- end
48
- return unless found
49
-
50
- content = RenderMePretty.result(found, context: self)
51
- if @options[:debug]
52
- puts "Debug mode enabled. Here's the lono registration info being used:"
53
- puts "Using: #{found}"
54
- puts content
55
- puts
56
- end
57
- {path: found, content: YAML.load(content)}
58
- end
59
- end
60
- end