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,16 +0,0 @@
1
- module Lono::Configset::Register
2
- class Blueprint < Base
3
- self.configsets = []
4
- self.validations = []
5
-
6
- def evaluate
7
- path = find_configsets
8
- evaluate_file(path)
9
- end
10
-
11
- def find_configsets
12
- path = "#{Lono.blueprint_root}/config/configsets.rb"
13
- path if File.exist?(path)
14
- end
15
- end
16
- end
@@ -1,14 +0,0 @@
1
- module Lono::Configset::Register
2
- module Dsl
3
- def configset(*args, **options)
4
- registry = Lono::Jade::Registry.register_configset(args, options)
5
- self.class.append(registry)
6
- store_for_validation(registry)
7
- end
8
-
9
- # DSL
10
- # def source(v)
11
- # self.class.source = v
12
- # end
13
- end
14
- end
@@ -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,33 +0,0 @@
1
- module Lono::Configset::S3File
2
- class Build < Lono::AbstractBase
3
- include Lono::Utils::Rsync
4
- include Lono::Utils::Item::Zip
5
-
6
- def run
7
- Lono::Configset::S3File::Registry.items.each do |item|
8
- build(item)
9
- end
10
- end
11
-
12
- def build(item)
13
- copy_to_output(item)
14
- compress_output
15
- end
16
-
17
- def copy_to_output(item)
18
- src = "#{item.root}/lib/files/#{item.name}"
19
- dest = "#{Lono.config.output_path}/#{@blueprint}/configsets/#{item.configset}/files/#{item.name}"
20
- rsync(src, dest)
21
- end
22
-
23
- def compress_output
24
- Registry.items.each do |item|
25
- if item.exist?
26
- zip(item)
27
- else
28
- puts "WARN: #{item.src_path} does not exist. Double check that the path is correct in the s3_key call.".color(:yellow)
29
- end
30
- end
31
- end
32
- end
33
- end
@@ -1,38 +0,0 @@
1
- module Lono::Configset::S3File
2
- # Holds metadata about the item in the regsitry.
3
- class Item
4
- include Lono::Utils::Item::FileMethods
5
-
6
- attr_reader :name, :configset, :root
7
- def initialize(name, options={})
8
- @name, @options = name, options
9
- @blueprint = options[:blueprint]
10
- @configset = options[:configset]
11
- @root = options[:root]
12
- @type = options[:type] || 'file'
13
- end
14
-
15
- def src_path
16
- "#{@root}/lib/files"
17
- end
18
-
19
- def output_path
20
- "#{Lono.config.output_path}/#{@blueprint}/configsets/#{@configset}/files/#{@name}"
21
- end
22
-
23
- def replacement_value
24
- aws_data = AwsData.new
25
- #
26
- # "https://s3.amazonaws.com/#{Lono::S3::Bucket.name}/#{s3_path}"
27
- # "https://lono-bucket-12di8xz5sy72z.s3-us-west-2.amazonaws.com/stuff/s3-antivirus.tgz"
28
- #
29
- # us-east-1 is special case:
30
- #
31
- # "https://lono-bucket-12di8xz5sy72z.s3.amazonaws.com/stuff/s3-antivirus.tgz"
32
- #
33
- region = ""
34
- region = "-#{aws_data.region}" unless aws_data.region == "us-east-1"
35
- "https://#{Lono::S3::Bucket.name}.s3#{region}.amazonaws.com/#{s3_path}"
36
- end
37
- end
38
- end
@@ -1,12 +0,0 @@
1
- module Lono::Configset::S3File
2
- class Registry
3
- cattr_reader :items
4
- @@items = []
5
-
6
- class << self
7
- def register(name, options)
8
- @@items << Item.new(name, options) unless @@items.detect { |i| i.name == name }
9
- end
10
- end
11
- end
12
- end
@@ -1,12 +0,0 @@
1
- module Lono::Configset::S3File
2
- class Upload < Lono::AbstractBase
3
- def upload
4
- return unless Registry.items.size > 0
5
- puts "Uploading configset files..."
6
-
7
- Registry.items.each do |item|
8
- Lono::S3::Uploader.new(item.zip_file_path).upload
9
- end
10
- end
11
- end
12
- end
@@ -1,83 +0,0 @@
1
- # Subclasses must implement:
2
- #
3
- # find_evaluation_path - use to set @evaluation_path
4
- # load
5
- #
6
- # Notable instance variables:
7
- #
8
- # @evaluation_path - IE: lib/configset.rb or lib/configset.yml
9
- # @root - IE: /path/to/root/of/configset
10
- #
11
- module Lono::Configset::Strategy
12
- class Base
13
- extend Memoist
14
- include Lono::Configset::EvaluateFile
15
-
16
- # All Lono DSL Helpers and Fn - so configsets have access to instrinic functions like ref
17
- # Not including the Lono::Template::Strategy::Dsl::Builder::Syntax since dont need those methods
18
- #
19
- # Interesting note: must include these modules here so load_project_predefined_variables works.
20
- # Since load_project_predefined_variables calls evaluate_file / instance eval which seems to only be
21
- # able to access methods from the direct class, not inherited classes like Dsl.
22
- #
23
- # This allows methods like ref and sub to work in variables files.
24
- #
25
- include Lono::Template::Strategy::Dsl::Builder::Helpers
26
- include Lono::Template::Strategy::Dsl::Builder::Fn
27
-
28
- def initialize(options={})
29
- @options = options
30
- @configset = options[:configset]
31
- @root = options[:root]
32
- @resource = options[:resource] || "FakeResource"
33
- @blueprint = Lono::Conventions.new(options).blueprint
34
- end
35
-
36
- def build
37
- @evaluation_path = find_evaluation_path # implemented by subclass
38
- copy_instance_variables
39
- load_configset_helpers
40
- init = load # implemented by subclass
41
- finish_full_structure(init)
42
- end
43
- memoize :build
44
-
45
- def finish_full_structure(init)
46
- full = {"Metadata" => {}}
47
- full["Metadata"]["AWS::CloudFormation::Init"] = init["AWS::CloudFormation::Init"]
48
- full["Metadata"]["AWS::CloudFormation::Authentication"] = authentication if authentication # only on dsl
49
- full.deep_stringify_keys!
50
- end
51
-
52
- def copy_instance_variables
53
- load_blueprint_predefined_variables
54
- load_project_predefined_variables
55
- end
56
-
57
- def load_blueprint_predefined_variables
58
- evaluate_file("#{@root}/lib/variables.rb")
59
- end
60
-
61
- def load_project_predefined_variables
62
- paths = [
63
- "#{Lono.root}/configs/#{@blueprint}/configsets/variables.rb", # global
64
- "#{Lono.root}/configs/#{@blueprint}/configsets/variables/#{@configset}.rb", # configset specific
65
- ]
66
- paths.each do |path|
67
- evaluate_file(path)
68
- end
69
- end
70
-
71
- def load_configset_helpers
72
- paths = Dir.glob("#{@root}/lib/helpers/**/*.rb")
73
- paths.sort_by! { |p| p.size } # load possible namespaces first
74
- paths.each do |path|
75
- filename = path.sub(%r{.*/lib/helpers/},'').sub('.rb','')
76
- module_name = filename.camelize
77
-
78
- require path
79
- self.class.send :include, module_name.constantize
80
- end
81
- end
82
- end
83
- end
@@ -1,8 +0,0 @@
1
- module Lono::Configset::Strategy::Helpers
2
- module Dsl
3
- include Auth
4
- include Core
5
- include Package
6
- include Syntax
7
- end
8
- end
@@ -1,9 +0,0 @@
1
- module Lono::Configset::Strategy::Helpers
2
- module Erb
3
- def indent(text, indentation_amount)
4
- text.split("\n").map do |line|
5
- " " * indentation_amount + line
6
- end.join("\n")
7
- end
8
- end
9
- 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,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,11 +0,0 @@
1
- class Lono::Extensions
2
- module Dsl
3
- def extend_with(*args, **options)
4
- register_extension_helper(args, options)
5
- end
6
-
7
- def register_extension_helper(args, options={})
8
- Lono::Jade::Registry.register_extension(args, options)
9
- end
10
- end
11
- end
@@ -1,30 +0,0 @@
1
- class Lono::Extensions
2
- module Loader
3
- include Lono::Template::Context::Loader::LoadFiles
4
-
5
- def load_all_extension_helpers
6
- Lono::Jade::Registry.tracked_extensions.each do |registry|
7
- load_extension_helpers(registry)
8
- end
9
- end
10
-
11
- def load_extension_helpers(registry)
12
- root = find_extensions_root_path(registry)
13
- extension_file = "#{root}/lib/#{registry.name}"
14
- require extension_file
15
- helpers_path = "#{root}/lib/#{registry.name}/helpers"
16
- load_files(helpers_path)
17
- end
18
-
19
- #
20
- # 1. vendor/extensions
21
- # 2. normal gem
22
- # 3. materialized gem
23
- #
24
- def find_extensions_root_path(registry)
25
- @finder ||= Lono::Finder::Extension.new
26
- jadespec = @finder.find(registry.name)
27
- jadespec.root
28
- end
29
- end
30
- 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,18 +0,0 @@
1
- module Lono
2
- class Extensions
3
- include Dsl
4
- include Lono::Template::Evaluate
5
-
6
- def initialize(template_path)
7
- @template_path = template_path
8
- end
9
-
10
- def evaluate
11
- evaluate_template_path(@template_path) # handle extend_with
12
- end
13
-
14
- # The extend_with methods are used in file as the normal DSL evaluation.
15
- # We use method_missing so we dont have to redefine all the normal methods of the DSL.
16
- def method_missing(name, *args, &block); end
17
- end
18
- 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