roro 0.3.30 → 0.3.33

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 (542) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.reference.yml +139 -0
  3. data/.circleci/config.yml +154 -135
  4. data/.circleci/src/@config.yml +2 -0
  5. data/.circleci/src/commands/restore-and-save-cache.yml +11 -0
  6. data/.circleci/src/commands/run-test-case.yml +11 -0
  7. data/.circleci/src/executors/linux.yml +2 -0
  8. data/.circleci/src/executors/ruby.yml +7 -0
  9. data/.circleci/src/jobs/build.yml +5 -0
  10. data/.circleci/src/jobs/release.yml +10 -0
  11. data/.circleci/src/jobs/test-adventures.yml +15 -0
  12. data/.circleci/src/jobs/test-rubies.yml +14 -0
  13. data/.circleci/src/workflows/adventures.yml +49 -0
  14. data/.circleci/src/workflows/adventures.yml.tt +11 -0
  15. data/.circleci/src/workflows/gem-release.yml +9 -0
  16. data/.circleci/src/workflows/rubies.yml +13 -0
  17. data/.circleci/src/workflows/rubies.yml.tt +14 -0
  18. data/.harvest/cases.yml +39 -0
  19. data/.harvest/structure_choices.yml +73 -0
  20. data/.harvest/structure_human.yml +73 -0
  21. data/.harvest.yml +40 -0
  22. data/.idea/markdown.xml +9 -0
  23. data/.idea/roro.iml +380 -77
  24. data/.idea/runConfigurations/_template__of_Test__Unit_Shoulda_Minitest.xml +41 -0
  25. data/.idea/runConfigurations/ci_prepare.xml +36 -0
  26. data/.idea/runConfigurations/ci_test_adventures.xml +39 -0
  27. data/.idea/runConfigurations/ci_test_rubies.xml +36 -0
  28. data/.idea/runConfigurations/generate_annotations.xml +17 -0
  29. data/.idea/runConfigurations/test_adventures.xml +40 -0
  30. data/.idea/runConfigurations/test_all.xml +40 -0
  31. data/.idea/runConfigurations/test_tasks.xml +40 -0
  32. data/.idea/runConfigurations/test_test.xml +40 -0
  33. data/.pryrc +2 -0
  34. data/CODE_OF_CONDUCT.md +20 -25
  35. data/Gemfile.lock +183 -0
  36. data/Guardfile +11 -22
  37. data/README.md +27 -178
  38. data/Rakefile +39 -7
  39. data/cases +1 -0
  40. data/docker-compose.yml +26 -6
  41. data/lib/roro/cli/generate/generate_adventure.rb +23 -0
  42. data/lib/roro/cli/generate/generate_adventure_tests.rb +22 -0
  43. data/lib/roro/cli/generate/generate_environments.rb +1 -0
  44. data/lib/roro/cli/generate/generate_harvest.rb +42 -0
  45. data/lib/roro/cli/rollon.rb +0 -7
  46. data/lib/roro/cli.rb +18 -6
  47. data/lib/roro/common/utilities.rb +44 -13
  48. data/lib/roro/configurators/adventure_chooser.rb +4 -2
  49. data/lib/roro/configurators/adventure_picker.rb +7 -7
  50. data/lib/roro/configurators/adventure_writer.rb +194 -3
  51. data/lib/roro/configurators/catalog_builder.rb +1 -1
  52. data/lib/roro/configurators/configurator.rb +64 -8
  53. data/lib/roro/configurators/dependency_satisfier.rb +135 -136
  54. data/lib/roro/configurators/question_builder.rb +6 -6
  55. data/lib/roro/configurators/reflector.rb +225 -0
  56. data/lib/roro/configurators/structure_builder.rb +1 -0
  57. data/lib/roro/configurators/validator.rb +1 -1
  58. data/lib/roro/crypto/key_writer.rb +2 -0
  59. data/lib/roro/stacks/docker.yml +5 -0
  60. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/alpine.yml +2 -0
  61. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/docker.yml +1 -0
  62. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/git.yml +17 -0
  63. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/_builder.yml +3 -0
  64. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/laravel.yml +11 -0
  65. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/builder/Dockerfile.tt +14 -0
  66. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/builder/composer.json +7 -0
  67. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/manifest/docker/default.conf +22 -0
  68. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/manifest/docker/php.dockerfile.tt +43 -0
  69. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/manifest/docker/scheduler.sh +7 -0
  70. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/manifest/docker-compose.yml.tt +122 -0
  71. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/partials/services/site.erb +16 -0
  72. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/_test.rb +142 -0
  73. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/composer.json +7 -0
  74. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/docker/default.conf +22 -0
  75. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/docker/php.dockerfile +43 -0
  76. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/docker/scheduler.sh +7 -0
  77. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/docker-compose.yml +122 -0
  78. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/layers/_builder/Dockerfile +14 -0
  79. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/layers/_builder/composer.json +7 -0
  80. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/layers/laravel/Dockerfile +14 -0
  81. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/layers/laravel/composer.json +7 -0
  82. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/okonomi/languages/php/adventures}/wordpress/wordpress.yml +2 -2
  83. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/php.yml +1 -0
  84. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/_builder.yml +3 -0
  85. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/mysql/mysql.yml +26 -0
  86. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/mysql/templates/partials/_python_requirements.erb +2 -0
  87. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/mysql/templates/partials/_settings_py_databases.erb +10 -0
  88. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/mysql/templates/partials/services/_db.yml.erb +7 -0
  89. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/postgres/postgres.yml +5 -0
  90. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/postgres/templates/partials/_settings_py_databases.erb +10 -0
  91. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/postgres/templates/partials/services/_db.yml.erb +9 -0
  92. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/okonomi/languages/python/frameworks}/django/django.yml +11 -9
  93. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/templates/builder/Dockerfile.tt +20 -0
  94. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/django/templates/stage_two → unstoppable_developer_styles/okonomi/languages/python/frameworks/django/templates/manifest/%interpolated_app_name%}/settings.py.tt +8 -17
  95. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/django/templates/stage_one → unstoppable_developer_styles/okonomi/languages/python/frameworks/django/templates/manifest}/Dockerfile.tt +8 -2
  96. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/templates/partials/_volumes.erb +4 -0
  97. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/templates/partials/services/_web.yml.erb +12 -0
  98. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/0/_test.rb +97 -0
  99. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/0/dummy/requirements.txt +5 -0
  100. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/2/_test.rb +91 -0
  101. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/2/dummy/requirements.txt +4 -0
  102. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/_builder.yml +3 -0
  103. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/flask.yml +8 -0
  104. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/templates/builder/Dockerfile.tt +16 -0
  105. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/templates/partials/services/_redis.yml.erb +3 -0
  106. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/templates/partials/services/_web.yml.erb +5 -0
  107. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/test/0/_test.rb +74 -0
  108. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/test/0/dummy/Dockerfile +11 -0
  109. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/flask/templates/stage_one → unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/test/0/dummy}/docker-compose.yml +12 -3
  110. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/test/0/layers/flask/Dockerfile +11 -0
  111. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/python.yml +8 -0
  112. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/templates/manifest/docker-compose.yml.tt +9 -0
  113. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/versions/python_3_10_1/python_3_10_1.yml +5 -0
  114. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/versions/python_3_9_9/python_3_9_9.yml +5 -0
  115. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/_builder.yml +3 -0
  116. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/postgres.yml +26 -0
  117. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/templates/partials/packages/_postgres.erb +3 -0
  118. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/templates/partials/services/_db.erb +7 -0
  119. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/versions/postgres_13_5/postgres_13_5.yml +4 -0
  120. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/versions/postgres_14_1/postgres_14_1.yml +4 -0
  121. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/sqlite/sqlite.yml +8 -0
  122. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/sqlite/templates/partials/packages/_sqlite.erb +3 -0
  123. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/sqlite/templates/partials/services/_db.erb +9 -0
  124. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases.yml +33 -0
  125. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/rails.yml +14 -0
  126. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/schedulers/resque/resque.yml +1 -0
  127. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/schedulers/sidekiq/sidekiq.yml +1 -0
  128. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/templates/stage_one → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/builder}/Dockerfile.tt +5 -6
  129. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/manifest/Dockerfile.tt +20 -0
  130. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/manifest/docker-compose.yml.tt +7 -0
  131. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/partials/packages/_base.erb +7 -0
  132. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/partials/services/_app.erb +17 -0
  133. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/partials/shared/_env_file.erb +3 -0
  134. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/partials/volumes/_base.erb +3 -0
  135. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/rails_6_1.yml +12 -0
  136. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/templates/partials/_packages_adventure.erb +8 -0
  137. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/_test.rb +71 -0
  138. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/dummy/Gemfile +56 -0
  139. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/dummy/config/environments/production.rb +120 -0
  140. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/dummy/docker-compose.yml +32 -0
  141. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/layers/_builder/Dockerfile +41 -0
  142. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/layers/rails/Dockerfile +37 -0
  143. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/_test.rb +94 -0
  144. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/dummy/Dockerfile +37 -0
  145. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/dummy/Gemfile +56 -0
  146. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/dummy/config/environments/production.rb +120 -0
  147. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/dummy/docker-compose.yml +33 -0
  148. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/rails_7_0.yml +10 -0
  149. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/_test.rb +90 -0
  150. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/dummy/Dockerfile +29 -0
  151. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/dummy/Gemfile +72 -0
  152. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/dummy/config/database.yml +25 -0
  153. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/idiot/Dockerfile +29 -0
  154. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/idiot/docker-compose.yml +33 -0
  155. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/layers/rails/config/database.yml +25 -0
  156. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/layers/rails/docker-compose.yml +34 -0
  157. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/layers/rails/mise/env/base.env +19 -0
  158. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/_test.rb +61 -0
  159. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/dummy/Dockerfile +29 -0
  160. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/dummy/Gemfile +72 -0
  161. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/dummy/config/database.yml +25 -0
  162. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/idiot/Dockerfile +29 -0
  163. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/idiot/docker-compose.yml +33 -0
  164. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/layers/rails/config/database.yml +25 -0
  165. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/layers/rails/docker-compose.yml +34 -0
  166. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/layers/rails/mise/env/base.env +19 -0
  167. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/_test.rb +76 -0
  168. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/dummy/Dockerfile +29 -0
  169. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/test/stage_one/stage_dummy → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/dummy}/Gemfile +22 -16
  170. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/dummy/docker-compose.yml +33 -0
  171. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/idiot/Dockerfile +29 -0
  172. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/test/stage_one/stage_dummy → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/idiot}/Gemfile +22 -16
  173. data/lib/roro/stacks/{stories_v1/templates/rails/config/database.pg.yml → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/idiot/config/database.yml} +2 -2
  174. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/idiot/docker-compose.yml +33 -0
  175. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/layers/_builder/Dockerfile +34 -0
  176. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/layers/rails/Dockerfile +29 -0
  177. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/layers/rails/Gemfile +72 -0
  178. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/layers/rails/config/database.yml +19 -0
  179. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/_test.rb +81 -0
  180. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy/Dockerfile +29 -0
  181. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy/Gemfile +72 -0
  182. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy/config/database.yml +19 -0
  183. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy/docker-compose.yml +33 -0
  184. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/layers/_builder/Dockerfile +34 -0
  185. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/layers/rails/config/database.yml +19 -0
  186. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/_test.rb +80 -0
  187. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy/Dockerfile +29 -0
  188. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy/Gemfile +72 -0
  189. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy/config/database.yml +19 -0
  190. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy/docker-compose.yml +33 -0
  191. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/layers/_builder/Dockerfile +34 -0
  192. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/layers/rails/Dockerfile +29 -0
  193. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/layers/rails/Gemfile +72 -0
  194. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/layers/rails/config/database.yml +19 -0
  195. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/_test.rb +82 -0
  196. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy/Dockerfile +29 -0
  197. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy/Gemfile +72 -0
  198. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy/config/database.yml +19 -0
  199. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy/docker-compose.yml +33 -0
  200. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/layers/_builder/Dockerfile +34 -0
  201. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/layers/rails/Dockerfile +29 -0
  202. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/layers/rails/Gemfile +72 -0
  203. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/layers/rails/config/database.yml +19 -0
  204. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/ruby_gem/ruby_gem.yml +1 -0
  205. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/ruby_gem/templates/stage_one/.gitignore +56 -0
  206. data/lib/roro/stacks/{catalog/unstoppable/developer_styles → unstoppable_developer_styles}/okonomi/languages/ruby/ruby.yml +1 -1
  207. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/versions/ruby_2_7/ruby_2_7.yml +4 -0
  208. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/versions/ruby_3_0/ruby_3_0.yml +6 -0
  209. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/okonomi.yml +8 -0
  210. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/templates/manifest/.dockerignore.tt +32 -0
  211. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/.env +1 -1
  212. data/lib/roro/stacks/unstoppable_developer_styles/omakase/frameworks/wordpress/test/0/_test.rb +12 -0
  213. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories → unstoppable_developer_styles/omakase/frameworks}/wordpress/wordpress.yml +3 -3
  214. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/circleci.yml +31 -0
  215. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/partials/_ignores.erb +9 -0
  216. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/.circleci/config.yml.tt +45 -0
  217. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/Dockerfile +3 -0
  218. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/index.html +7 -0
  219. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s/app-deployment.yml.tt +23 -0
  220. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s/app-service.yml.tt +15 -0
  221. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s-general/cicd-role-binding.yml +13 -0
  222. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s-general/cicd-role.yml +9 -0
  223. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s-general/cicd-service-account.yml +5 -0
  224. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/scripts/ci-deploy.sh.tt +23 -0
  225. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/test/0/_test.rb +57 -0
  226. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/devops.yml +1 -0
  227. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/kubernetes.yml +1 -0
  228. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/ingress.yml +2 -0
  229. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/nginx.yml +1 -0
  230. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/test/0/_test.rb +15 -0
  231. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/env-configmap.yaml.tt +1 -1
  232. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/test/0/_test.rb +15 -0
  233. data/lib/roro/templates/adventure/%adventure_name%.yml.tt +5 -0
  234. data/lib/roro/templates/adventure/test/0/_test.rb.tt +8 -0
  235. data/lib/roro/templates/adventure_test/_test.rb.tt +31 -0
  236. data/lib/roro/version.rb +1 -1
  237. data/lib/roro.rb +9 -2
  238. data/mise/containers/ruby_gem/Dockerfile +25 -12
  239. data/mise/containers/ruby_gem/Dockerfile-ubuntu +13 -0
  240. data/mise/logs/cases.yml +235 -0
  241. data/mise/logs/getsome.yml +204 -0
  242. data/mise/logs/itineraries.yml +235 -0
  243. data/mise/logs/reflector.yml +204 -0
  244. data/mise/scripts/ci/jobs/run.sh +6 -0
  245. data/mise/scripts/rollon/build_app.sh +7 -0
  246. data/mise/scripts/rollon/down.sh +9 -0
  247. data/mise/scripts/rollon/git_commit.sh +8 -0
  248. data/mise/scripts/rollon/image_build.sh +7 -0
  249. data/mise/scripts/rollon/image_push.sh +8 -0
  250. data/mise/scripts/rollon/prune.sh +3 -0
  251. data/mise/scripts/rollon/reset_sandbox.sh +13 -0
  252. data/mise/scripts/rollon/run.sh +16 -0
  253. data/mise/scripts/rollon-pull.sh +37 -0
  254. data/mise/scripts/rollon.sh +26 -0
  255. data/rakelib/ci/prepare/config/pack.rake +15 -0
  256. data/rakelib/ci/prepare/config/process.rake +12 -0
  257. data/rakelib/ci/prepare/config/validate.rake +13 -0
  258. data/rakelib/ci/prepare/config.rake +8 -0
  259. data/rakelib/ci/prepare/workflows/adventures.rake +70 -0
  260. data/rakelib/ci/prepare/workflows/rubies.rake +15 -0
  261. data/rakelib/ci/prepare.rake +11 -0
  262. data/rakelib/ci/test/adventures.rake +18 -0
  263. data/rakelib/ci/test/rubies.rake +12 -0
  264. data/rakelib/ci/update.rake +6 -0
  265. data/rakelib/club/harvest.rake +9 -0
  266. data/rakelib/docker/image/build.rake +8 -0
  267. data/rakelib/test/annotate.rake +16 -0
  268. data/roro.gemspec +19 -17
  269. metadata +383 -296
  270. data/.circleci/setup-gem-credentials.sh +0 -3
  271. data/.travis.yml +0 -7
  272. data/lib/roro/configurators/adventure_case_builder.rb +0 -65
  273. data/lib/roro/configurators/utilities.rb +0 -188
  274. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/fatsufodo.yml +0 -1
  275. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/django/_django.yml +0 -7
  276. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/django/templates/stage_one/docker-compose.yml.tt +0 -20
  277. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/django/templates/stage_one/requirements.txt.tt +0 -2
  278. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/django/test/stage_one/stage_one_test.rb +0 -37
  279. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/expressjs/expressjs.yml +0 -8
  280. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/expressjs/templates/stage_one/Dockerfile.tt +0 -14
  281. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/expressjs/templates/stage_one/docker-compose.yml.tt +0 -21
  282. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/flask/flask.yml +0 -14
  283. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/flask/templates/stage_one/requirements.txt +0 -2
  284. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/flask/test/stage_one/stage_test.rb +0 -37
  285. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/rails/rails.yml +0 -12
  286. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/rails/templates/stage_one/docker-compose.yml.tt +0 -9
  287. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/python/python.yml +0 -10
  288. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/python/test/stage_one/stage_test.rb +0 -42
  289. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/rails.yml +0 -36
  290. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/6_1.yml +0 -44
  291. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/templates/stage_one/.env +0 -6
  292. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/templates/stage_one/Dockerfile.tt +0 -28
  293. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/templates/stage_one/config/initializers/sidekiq.rb +0 -13
  294. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/templates/stage_one/docker-compose.yml.tt +0 -57
  295. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/templates/stage_one/entrypoints/sidekiq-entrypoint.sh +0 -9
  296. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/test/stage_one/stage_test.rb +0 -38
  297. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/7_0.yml +0 -38
  298. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/templates/stage_one/.env +0 -6
  299. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/templates/stage_one/Dockerfile.tt +0 -28
  300. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/templates/stage_one/config/initializers/sidekiq.rb +0 -13
  301. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/templates/stage_one/docker-compose.yml.tt +0 -57
  302. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/templates/stage_one/entrypoints/docker-entrypoint.sh +0 -9
  303. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/templates/stage_one/entrypoints/sidekiq-entrypoint.sh +0 -9
  304. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/test/stage_one/stage_test.rb +0 -37
  305. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/okonomi.yml +0 -4
  306. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/templates/stage_one/.dockerignore +0 -18
  307. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/rails/templates/stage_one/Dockerfile.tt +0 -16
  308. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/rails/templates/stage_one/Gemfile.tt +0 -2
  309. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/rails/templates/stage_one/entrypoint.sh +0 -8
  310. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/rails/templates/stage_two/database.yml.tt +0 -16
  311. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/wordpress/test/stage_one/stage_test.rb +0 -32
  312. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/test/stage_one/stage_test.rb +0 -32
  313. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_one/.env +0 -4
  314. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_one/.gitignore +0 -55
  315. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/rails/test/stage_one/stage_test.rb +0 -33
  316. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/roll_your_own.yml +0 -24
  317. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/%interpolated_story_name%.yml.tt +0 -10
  318. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/test/stage_one/stage_test.rb.tt +0 -41
  319. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/templates/stage_one/.gitignore.tt +0 -55
  320. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/test/stage_one/stage_one_test.rb +0 -64
  321. data/lib/roro/stacks/library/roro/.keep +0 -0
  322. data/lib/roro/stacks/library/roro/docker_compose/docker-compose.yml +0 -22
  323. data/lib/roro/stacks/library/roro/k8s/k8s.yml +0 -15
  324. data/lib/roro/stacks/library/roro/plots/node/.keep +0 -0
  325. data/lib/roro/stacks/library/roro/plots/node/node.yml +0 -22
  326. data/lib/roro/stacks/library/roro/plots/php/.keep +0 -0
  327. data/lib/roro/stacks/library/roro/plots/php/php.yml +0 -22
  328. data/lib/roro/stacks/library/roro/plots/python/plots/django/.keep +0 -0
  329. data/lib/roro/stacks/library/roro/plots/python/plots/django/django.yml +0 -10
  330. data/lib/roro/stacks/library/roro/plots/python/plots/django/templates/Dockerfile +0 -7
  331. data/lib/roro/stacks/library/roro/plots/python/plots/django/templates/docker-compose.yml +0 -20
  332. data/lib/roro/stacks/library/roro/plots/python/plots/django/templates/requirements.txt +0 -2
  333. data/lib/roro/stacks/library/roro/plots/python/plots/flask/flask.yml +0 -0
  334. data/lib/roro/stacks/library/roro/plots/python/python.yml +0 -1
  335. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/databases/.keep +0 -0
  336. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/databases/mysql.yml +0 -22
  337. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/databases/postgres.yml +0 -22
  338. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/plots/rails/rails.yml +0 -22
  339. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/plots/rails/templates/.keep +0 -0
  340. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/plots/rails_react/rails_react.yml +0 -22
  341. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/plots/rails_react/templates/.keep +0 -0
  342. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/plots/rails_vue/rails_vue.yml +0 -22
  343. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/plots/rails_vue/templates/.keep +0 -0
  344. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/rails.yml +0 -16
  345. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/templates/.keep +0 -0
  346. data/lib/roro/stacks/library/roro/plots/ruby/plots/ruby_gem/ruby_gem.yml +0 -22
  347. data/lib/roro/stacks/library/roro/plots/ruby/ruby.yml +0 -22
  348. data/lib/roro/stacks/library/roro/roro/roro.yml +0 -15
  349. data/lib/roro/stacks/stories_v1/greenfield/rails.yml +0 -9
  350. data/lib/roro/stacks/stories_v1/greenfield/roro.yml +0 -7
  351. data/lib/roro/stacks/stories_v1/greenfield.yml +0 -1
  352. data/lib/roro/stacks/stories_v1/rollon/rails/ci_cd/circleci.yml +0 -2
  353. data/lib/roro/stacks/stories_v1/rollon/rails/ci_cd.yml +0 -1
  354. data/lib/roro/stacks/stories_v1/rollon/rails/database/mysql.yml +0 -17
  355. data/lib/roro/stacks/stories_v1/rollon/rails/database/postgresql.yml +0 -15
  356. data/lib/roro/stacks/stories_v1/rollon/rails/database.yml +0 -9
  357. data/lib/roro/stacks/stories_v1/rollon/rails/kubernetes/postgresql/default.yml +0 -1
  358. data/lib/roro/stacks/stories_v1/rollon/rails/kubernetes/postgresql/edge.yml +0 -1
  359. data/lib/roro/stacks/stories_v1/rollon/rails/kubernetes/postgresql.yml +0 -10
  360. data/lib/roro/stacks/stories_v1/rollon/rails/kubernetes.yml +0 -1
  361. data/lib/roro/stacks/stories_v1/rollon/rails.yml +0 -76
  362. data/lib/roro/stacks/stories_v1/rollon/roro.yml +0 -5
  363. data/lib/roro/stacks/stories_v1/rollon/ruby_gem.yml +0 -5
  364. data/lib/roro/stacks/stories_v1/rollon.yml +0 -42
  365. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/.keep +0 -0
  366. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/config.yml.tt +0 -11
  367. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/jobs/_build.yml +0 -14
  368. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/jobs/_push.yml +0 -11
  369. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/jobs/_test.yml +0 -12
  370. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/setup-gem-credentials.sh +0 -3
  371. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/workflows/_build_test_push.yml +0 -12
  372. data/lib/roro/stacks/stories_v1/templates/rails/.keep +0 -0
  373. data/lib/roro/stacks/stories_v1/templates/rails/Dockerfile.greenfield.tt +0 -51
  374. data/lib/roro/stacks/stories_v1/templates/rails/config/database.mysql.yml +0 -19
  375. data/lib/roro/stacks/stories_v1/templates/rails/database/with_mysql/_service.yml +0 -10
  376. data/lib/roro/stacks/stories_v1/templates/rails/database/with_postgresql/.keep +0 -0
  377. data/lib/roro/stacks/stories_v1/templates/rails/database/with_postgresql/_service.yml +0 -7
  378. data/lib/roro/stacks/stories_v1/templates/rails/docker-compose.yml.tt +0 -59
  379. data/lib/roro/stacks/stories_v1/templates/rails/dotenv/.keep +0 -0
  380. data/lib/roro/stacks/stories_v1/templates/rails/dotenv/database.mysql.env.tt +0 -6
  381. data/lib/roro/stacks/stories_v1/templates/rails/dotenv/database.pg.env.tt +0 -4
  382. data/lib/roro/stacks/stories_v1/templates/rails/dotenv/web.env.tt +0 -2
  383. data/lib/roro/stacks/stories_v1/templates/rails/kube.rake.tt +0 -114
  384. data/lib/roro/stacks/stories_v1/templates/rails/roro/.keep +0 -0
  385. data/lib/roro/stacks/stories_v1/templates/rails/roro/containers/.keep +0 -0
  386. data/lib/roro/stacks/stories_v1/templates/rails/roro/containers/app/.keep +0 -0
  387. data/lib/roro/stacks/stories_v1/templates/rails/roro/containers/app/Dockerfile.tt +0 -34
  388. data/lib/roro/stacks/stories_v1/templates/rails/roro/containers/frontend/.keep +0 -0
  389. data/lib/roro/stacks/stories_v1/templates/rails/roro/docker-entrypoint.sh +0 -8
  390. data/lib/roro/stacks/stories_v1/templates/rails/roro/keys/.keep +0 -0
  391. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/.keep +0 -0
  392. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/certificate.yml.tt +0 -0
  393. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/cluster-issuer.yml.tt +0 -0
  394. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployment.yml.tt +0 -50
  395. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployments/postgres_deploy.yaml +0 -47
  396. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployments/rails_deploy.yaml +0 -62
  397. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployments/redis_deploy.yaml +0 -23
  398. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployments/sidekiq_deploy.yaml +0 -56
  399. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/ingress.yml.tt +0 -0
  400. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/ingresses/ingress.yaml +0 -13
  401. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/job-migrate.yml.tt +0 -0
  402. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/jobs/setup.yaml +0 -42
  403. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/secret-digital-ocean.yml.tt +0 -4
  404. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/service.yml.tt +0 -10
  405. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/services/postgres_svc.yaml +0 -13
  406. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/services/rails_svc.yaml +0 -13
  407. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/services/redis_svc.yaml +0 -13
  408. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/volumes/postgres_volumes.yaml +0 -25
  409. data/lib/roro/stacks/stories_v1/templates/roro/containers/.keep +0 -0
  410. data/lib/roro/stacks/stories_v1/templates/roro/containers/database/env/.keep +0 -0
  411. data/lib/roro/stacks/stories_v1/templates/roro/containers/database/scripts/.keep +0 -0
  412. data/lib/roro/stacks/stories_v1/templates/roro/env/.keep +0 -0
  413. data/lib/roro/stacks/stories_v1/templates/roro/keys/.keep +0 -0
  414. data/lib/roro/stacks/stories_v1/templates/roro/scripts/.keep +0 -0
  415. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base/bundler.sh +0 -22
  416. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base/git.sh +0 -21
  417. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base/rvm.sh +0 -38
  418. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base/utilities.sh +0 -53
  419. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base.sh +0 -6
  420. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize/clone_idea.sh +0 -14
  421. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize/clone_repos.sh +0 -33
  422. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize/install_correct_bundler.sh +0 -21
  423. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize/install_rubies.sh +0 -6
  424. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize.sh +0 -18
  425. data/lib/roro/stacks/stories_v1/templates/roro/scripts/roro.sh +0 -15
  426. data/lib/roro/stacks/stories_v1/templates/roro/scripts/source.sh +0 -28
  427. data/lib/roro/stacks/stories_v1/templates/roro/scripts/utility/bundle_all.sh +0 -12
  428. data/lib/roro/stacks/stories_v1/templates/roro/scripts/utility/git_pull_all.sh +0 -15
  429. data/lib/roro/stacks/stories_v1/templates/roro/scripts/utility/rvm_install_all.sh +0 -12
  430. data/lib/roro/stacks/stories_v1/templates/roro/scripts/utility/yarn_install_all.sh +0 -10
  431. data/lib/roro/stacks/stories_v1/templates/ruby_gem/.circleci/.keep +0 -0
  432. data/lib/roro/stacks/stories_v1/templates/ruby_gem/.circleci/config.yml.tt +0 -16
  433. data/lib/roro/stacks/stories_v1/templates/ruby_gem/.circleci/jobs/_test.yml +0 -4
  434. data/lib/roro/stacks/stories_v1/templates/ruby_gem/.circleci/setup-gem-credentials.sh +0 -3
  435. data/lib/roro/stacks/stories_v1/templates/ruby_gem/docker-compose.yml +0 -15
  436. data/lib/roro/stacks/stories_v1/templates/ruby_gem/roro/containers/.keep +0 -0
  437. data/lib/roro/stacks/stories_v1/templates/ruby_gem/roro/containers/ruby_image/Dockerfile.tt +0 -16
  438. data/lib/roro/stacks/stories_v1/templates/ruby_gem/roro/containers/ruby_image/ci.env.tt +0 -1
  439. data/lib/roro/stacks/stories_v1/templates/ruby_gem/roro/keys/.keep +0 -0
  440. data/mise/containers/backend/env/.keep +0 -0
  441. data/mise/containers/backend/scripts/.keep +0 -0
  442. data/mise/containers/database/env/.keep +0 -0
  443. data/mise/containers/database/scripts/.keep +0 -0
  444. data/mise/containers/frontend/env/.keep +0 -0
  445. data/mise/containers/frontend/scripts/.keep +0 -0
  446. data/mise/containers/ruby_gem/Dockerfile-app +0 -51
  447. data/mise/containers/ruby_gem/Dockerfile-ruby_gem +0 -16
  448. /data/{.circleci → lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel}/.keep +0 -0
  449. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/django/test/stage_one/dummy → unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/manifest}/.keep +0 -0
  450. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/django/test/stage_two/dummy → unstoppable_developer_styles/okonomi/languages/php/adventures/wordpress/templates/manifest}/.keep +0 -0
  451. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/flask/templates/stage_one → unstoppable_developer_styles/okonomi/languages/php/adventures/wordpress/templates/partials}/.keep +0 -0
  452. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/okonomi/languages/php/adventures}/wordpress/templates/stage_one/docker-compose.yml.tt +0 -0
  453. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/flask/test → unstoppable_developer_styles/okonomi/languages/php/adventures/wordpress/test/0}/.keep +0 -0
  454. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/flask/test/stage_one → unstoppable_developer_styles/okonomi/languages/python/frameworks/django}/.keep +0 -0
  455. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/flask/test/stage_one/stage_dummy → unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/mysql/templates/manifest}/.keep +0 -0
  456. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/python/templates/stage_one → unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/postgres/templates/manifest}/.keep +0 -0
  457. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/python/test → unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/2/dummy}/.keep +0 -0
  458. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/flask/templates/stage_one/Dockerfile → unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/templates/manifest/Dockerfile.tt} +0 -0
  459. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/flask/templates/stage_one → unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/templates/manifest}/app.py +0 -0
  460. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/python/test/stage_one → unstoppable_developer_styles/okonomi/languages/python/templates/manifest}/.keep +0 -0
  461. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/templates/stage_one → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/templates/manifest}/config/database.yml +0 -0
  462. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/python/test/stage_one/stage_dummy → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/schedulers/resque/templates/manifest}/.keep +0 -0
  463. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/templates/stage_one → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/schedulers/sidekiq/templates/manifest}/.keep +0 -0
  464. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/templates/stage_one → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/manifest}/entrypoints/docker-entrypoint.sh +0 -0
  465. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/templates/stage_one/entrypoints → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/templates/stage_one}/.keep +0 -0
  466. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/test → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/dummy}/.keep +0 -0
  467. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/test/stage_one → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/dummy}/.keep +0 -0
  468. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/6_1/test/stage_one/stage_dummy → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/templates/partials}/.keep +0 -0
  469. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/templates/stage_one/entrypoints → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/templates/stage_one}/.keep +0 -0
  470. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/test → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/dummy}/.keep +0 -0
  471. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/templates/stage_one → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/dummy}/config/database.yml +0 -0
  472. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/test/stage_one → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy}/.keep +0 -0
  473. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories/rails/templates/stage_one/Gemfile.lock.tt → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/layers/postgres/config/database.yml} +0 -0
  474. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/languages/ruby/stories/rails/versions/7_0/test/stage_one/stage_dummy → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy}/.keep +0 -0
  475. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy}/.keep +0 -0
  476. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories → unstoppable_developer_styles/omakase/frameworks}/rails/rails.yml +0 -0
  477. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_one/Dockerfile.tt +0 -0
  478. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_one/Gemfile.lock.tt +0 -0
  479. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_one/Gemfile.tt +0 -0
  480. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_one/docker-compose.yml.tt +0 -0
  481. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_one/entrypoint.sh +0 -0
  482. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_two/database.yml.tt +0 -0
  483. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/test → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/.keep +0 -0
  484. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/LICENSE +0 -0
  485. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/README.md +0 -0
  486. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/build.sh +0 -0
  487. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/config/nginx/cfg/nginx-custom-configs.conf +0 -0
  488. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/config/nginx/cfg/nginx-wp-hardening.conf +0 -0
  489. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/config/nginx/tpl/nginx-http.conf.template +0 -0
  490. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/config/nginx/tpl/nginx-https.conf.example +0 -0
  491. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/config/php.conf.ini +0 -0
  492. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/data/certbot/conf/.placeholder +0 -0
  493. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/data/certbot/www/.placeholder +0 -0
  494. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/docker-compose-build.yml +0 -0
  495. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/docker-compose-dev.yml +0 -0
  496. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/docker-compose-prod.yml +0 -0
  497. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/dump_mysql.sh +0 -0
  498. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/init_letsencrypt.sh +0 -0
  499. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/mysql-dumps/.placeholder +0 -0
  500. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/push.sh +0 -0
  501. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/wordpress/Dockerfile +0 -0
  502. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/wordpress/adduser.sh +0 -0
  503. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/wordpress-sql/.placeholder +0 -0
  504. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/templates/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/wordpress-src/.placeholder +0 -0
  505. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/test/stage_one → unstoppable_developer_styles/omakase/frameworks/wordpress/test}/.keep +0 -0
  506. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/test/stage_one/stage_dummy → unstoppable_developer_styles/omakase/frameworks/wordpress/test/0/dummy}/.keep +0 -0
  507. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles → unstoppable_developer_styles}/omakase/omakase.yml +0 -0
  508. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/templates/stage_1/.keep → unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/.gitignore} +0 -0
  509. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/test → unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/test/0/dummy}/.keep +0 -0
  510. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/cert-manager.yml → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/cert_manager.yml} +0 -0
  511. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager}/templates/stage_2/echo_ingress.yaml.tt +0 -0
  512. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager}/templates/stage_3/echo_ingress.yaml.tt +0 -0
  513. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager}/templates/stage_3/ingress_nginx_svc.yaml.tt +0 -0
  514. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/test → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates}/stage_one/.keep +0 -0
  515. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/templates/stage_1 → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one}/echo1.yaml +0 -0
  516. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/templates/stage_1 → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one}/echo2.yaml +0 -0
  517. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/templates/stage_1 → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one}/echo_ingress.yaml.tt +0 -0
  518. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/templates/stage_1 → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one}/prod_issuer.yaml.tt +0 -0
  519. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/templates/stage_1 → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one}/staging_issuer.yaml.tt +0 -0
  520. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/kubernetes/stories/ingress/stories/nginx/stories/cert-manager/test/stage_one/stage_dummy → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/test}/.keep +0 -0
  521. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_one → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/test/0/dummy}/.keep +0 -0
  522. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/rails.yml +0 -0
  523. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_one/k8s → unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one}/.keep +0 -0
  524. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/docker-compose.yml.tt +0 -0
  525. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/rails/test → unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s}/.keep +0 -0
  526. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/app-deployment.yaml.tt +0 -0
  527. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/app-service.yaml.tt +0 -0
  528. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/database-deployment.yaml.tt +0 -0
  529. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/database-service.yaml.tt +0 -0
  530. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/db-data-persistentvolumeclaim.yaml.tt +0 -0
  531. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/redis-deployment.yaml.tt +0 -0
  532. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/redis-service.yaml.tt +0 -0
  533. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/secret.yaml.tt +0 -0
  534. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/sashimi/frameworks}/rails/templates/stage_one/k8s/sidekiq-deployment.yaml.tt +0 -0
  535. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/rails/test/stage_one → unstoppable_developer_styles/sashimi/frameworks/rails/test}/.keep +0 -0
  536. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/rails/test/stage_one/stage_dummy → unstoppable_developer_styles/sashimi/frameworks/rails/test/0/dummy}/.keep +0 -0
  537. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles → unstoppable_developer_styles}/sashimi/sashimi.yml +0 -0
  538. /data/lib/roro/{stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/templates/stage_one → templates/adventure}/.keep +0 -0
  539. /data/lib/roro/{stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/test → templates/adventure/templates/manifest}/.keep +0 -0
  540. /data/lib/roro/{stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/test/stage_one → templates/adventure/test/0/dummy}/.keep +0 -0
  541. /data/lib/roro/{stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/test/stage_one/stage_dummy → templates/adventure_test/dummy}/.keep +0 -0
  542. /data/{lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roll_your_own/test/stage_one/dummy → mise/env}/.keep +0 -0
@@ -11,17 +11,204 @@ module Roro
11
11
  no_commands do
12
12
 
13
13
  def write(buildenv, storyfile)
14
+ @buildenv = buildenv
15
+ @storyfile = storyfile
14
16
  @env = buildenv[:env]
15
17
  @env[:force] = true
18
+ @env[:exit_on_failure] = true
16
19
  actions = read_yaml(storyfile)[:actions]
17
20
  unless actions.nil?
18
- self.source_paths << "#{stack_parent_path(storyfile)}/templates"
19
21
  actions.each do |a|
20
- eval a
22
+ self.source_paths.shift
23
+ self.source_paths << "#{stack_parent_path(storyfile)}/templates"
24
+ begin
25
+ eval a
26
+ if ENV['RORO_DOCUMENT_LAYERS'].eql?('true')
27
+ save_layer(storyfile)
28
+ end
29
+ rescue
30
+ raise Error, msg: "#{a} #{storyfile}"
31
+ end
21
32
  end
33
+ end
34
+ end
35
+
36
+ def copy_manifest(dir = nil)
37
+ paths = manifest_paths
38
+ paths.each do |path|
39
+ self.source_paths.shift
40
+ self.source_paths << path
41
+ begin
42
+
43
+ directory '', '.', @env
44
+ rescue
45
+ Roro::Error
46
+ end
47
+ end
48
+ end
49
+
50
+ # def polish
51
+ # if File.exist?('polisher')
52
+ # FileUtils.cp_r('polisher/.', '.')
53
+ # FileUtils.rm_rf('polisher')
54
+ # end
55
+ # end
56
+
57
+ def save_layer(stack)
58
+ stacks = Roro::CLI.stacks
59
+ reflector = Reflector.new
60
+ parent = stack_name(stack.split("#{stacks}/").last).split('.').first
61
+ @buildenv[:itinerary].each do |i|
62
+ index = reflector.itinerary_index(@buildenv[:itinerary], i)
63
+ ['dummy', "layers/#{parent}"].each do |dir|
64
+ target = "#{stacks}/#{i}/test/#{index}/#{dir}"
65
+ artifacts = Dir.glob("#{target}/**/{*,.*}")
66
+ artifacts.map! { |a| a.split("#{target}/").last }.each do |g|
67
+ t = "#{target}/#{g}"
68
+ if File.file?(g) && File.exist?(t)
69
+ FileUtils.cp(g, t) unless File.read(g).eql?(File.read(t))
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
75
+
76
+ def success_response(url, desired_response = '200')
77
+ actual_response = system("curl -o /dev/null -s -w '%{http_code}\n' http://localhost")
78
+ raise Roro::Error unless actual_response.eql?(desired_response)
79
+ end
80
+
81
+ def generate_mise
82
+ generator = Roro::CLI.new
83
+ generator.generate_mise
84
+ generator.generate_containers 'app', 'db'
85
+ generator.generate_environments @env
86
+ generator.generate_keys
87
+ end
88
+
89
+ def copy_layer(dir)
90
+ paths = template_paths
91
+ paths.each do |path|
22
92
  self.source_paths.shift
93
+ self.source_paths << path
94
+ begin
95
+ directory dir, '.', @env
96
+ rescue
97
+ Roro::Error
98
+ end
99
+ end
100
+ end
101
+
102
+ def epilogue(log)
103
+ array = []
104
+ log[:itinerary].each do |i|
105
+ parent_path = stack_parent_path(i)
106
+ if stack_parent(i).eql?('versions')
107
+ keyword = stack_parent(parent_path)
108
+ else
109
+ keyword = stack_name(i)
110
+ end
111
+ array << keyword
112
+ end
113
+ "https://www.handsomefencer.com/tutorials/#{array.join('-')}"
114
+ end
115
+
116
+ def write_log(log)
117
+ create_file 'mise/log.yml', log.to_yaml
118
+ say 'Arigato.'
119
+ say epilogue(log)
120
+ end
121
+
122
+ def section(name)
123
+ array = []
124
+ section_partials(name).each do |p|
125
+ array << read_partial(p)
126
+ end
127
+ array.empty? ? (raise Roro::Error) : array.join("\n")
128
+ end
129
+
130
+ def section_partials(name)
131
+ array = partials.select do |p|
132
+ p.match?(/#{name}/)
133
+ end
134
+ matchers = array.map { |p| p.split("/partials/#{name}/").last }.uniq
135
+ innermosts = []
136
+ matchers.each do |m|
137
+ duplicates = array.select do |p|
138
+ p.match? m
139
+ end
140
+ innermosts<< duplicates.last
141
+ end
142
+ innermosts
143
+ end
144
+
145
+ def partial(name)
146
+ read_partial(partials.select { |p| p.match?(/_#{name}.*.erb/) }.last)
147
+ end
148
+
149
+ def read_partial(partial)
150
+ begin
151
+ ERB.new(File.read(partial)).result(binding) if partial
152
+ rescue
153
+ msg = "Missing variable in #{partial}"
154
+ raise Roro::Error, msg
155
+ end
156
+ end
157
+
158
+ def partials
159
+ array = []
160
+ itinerary = @buildenv[:itinerary]
161
+ itinerary.each do |file|
162
+ array += partials_for(file)
163
+ end
164
+ array.uniq
165
+ end
166
+
167
+ def partials_for(ancestor = nil, crumbs = nil, paths = [] )
168
+ if crumbs.nil?
169
+ origin = Roro::CLI.stacks
170
+ crumbs = ancestor.split("#{origin}/").last.split('/')
171
+ ancestor = origin
172
+ end
173
+ path = "#{ancestor}/templates/partials"
174
+ paths += Dir.glob("#{path}/**/_*.erb") if File.exist?(path)
175
+ if crumbs.empty?
176
+ paths
177
+ else
178
+ partials_for("#{ancestor}/#{crumbs.shift}", crumbs, paths)
179
+ end
180
+ end
181
+
182
+ def manifest_paths(dir = nil, stack = nil, array = nil, paths = [] )
183
+ dir ||= 'manifest'
184
+ stack ||= Roro::CLI.stacks
185
+ array ||= @storyfile.split("#{stack}/").last.split('/')
186
+ path = "#{stack}/templates/#{dir}"
187
+ if File.exist?(path)
188
+ paths << path
189
+ end
190
+ child = "#{stack}/#{array.shift}"
191
+ array.empty? ? paths : manifest_paths(dir, child, array, paths)
192
+ end
23
193
 
194
+ def template_paths_for(stack, array = nil, paths = [] )
195
+ if array.nil?
196
+ array ||= stack.split("#{stack}/").last.split('/')
197
+ stack = Roro::CLI.stacks
198
+ end
199
+ path = "#{stack}/templates"
200
+ if File.exist?(path)
201
+ paths << path
24
202
  end
203
+ array.empty? ? paths : template_paths_for("#{stack}/#{array.shift}", array, paths)
204
+ end
205
+
206
+ def template_paths
207
+ array = []
208
+ @buildenv[:itinerary].each do |stack|
209
+ array += template_paths_for(stack)
210
+ end
211
+ array.uniq
25
212
  end
26
213
 
27
214
  def interpolated_stack_path
@@ -31,7 +218,11 @@ module Roro
31
218
  def interpolated_story_name
32
219
  "#{@env[:story]}"
33
220
  end
221
+
222
+ def interpolated_app_name
223
+ @env[:base][:app_name][:value]
224
+ end
34
225
  end
35
226
  end
36
227
  end
37
- end
228
+ end
@@ -10,7 +10,7 @@ module Roro
10
10
  end
11
11
 
12
12
  def self.base
13
- Roro::CLI.catalog_root
13
+ Roro::CLI.stacks
14
14
  end
15
15
  end
16
16
  end
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  require 'yaml'
3
4
 
4
5
  module Roro
@@ -19,15 +20,17 @@ module Roro
19
20
  @asker = QuestionAsker.new
20
21
  @writer = AdventureWriter.new
21
22
  @env = @structure[:env]
23
+ @log = @structure
22
24
  end
23
25
 
24
26
  def rollon
25
27
  validate_stack
26
28
  choose_adventure
27
- satisfy_dependencies
29
+ # satisfy_dependencies
28
30
  build_env
29
31
  write_story
30
- structure[:env] = structure[:env].merge(@dependency_hash)
32
+ # structure[:env] = structure[:env].merge(@dependency_hash)
33
+ write_log
31
34
  end
32
35
 
33
36
  def validate_stack
@@ -41,14 +44,16 @@ module Roro
41
44
  end
42
45
 
43
46
  def build_env
44
- manifest.each { |story| accrete_story(story) }
47
+ manifest.each do |story|
48
+ accrete_story(story)
49
+ end
45
50
  override_environment_variables
46
51
  end
47
52
 
48
- def satisfy_dependencies
49
- @satisfier = DependencySatisfier.new
50
- @dependency_hash = @satisfier.satisfy_dependencies(manifest)
51
- end
53
+ # def satisfy_dependencies
54
+ # @satisfier = DependencySatisfier.new
55
+ # @dependency_hash = @satisfier.satisfy_dependencies(manifest)
56
+ # end
52
57
 
53
58
  def accrete_story(story)
54
59
  content = read_yaml(story)[:env]
@@ -63,8 +68,59 @@ module Roro
63
68
  end
64
69
  end
65
70
 
71
+ # def copy_stage_dummy(stage)
72
+ # location = Dir.pwd
73
+ # index = itinerary_index(stage).index(itinerary)
74
+ # test_dir = "#{stack_parent_path(stage)}/test"
75
+ # return unless File.exist?(test_dir)
76
+ # stage_dummy = "#{test_dir}/#{index}/dummy"
77
+ # generated = Dir.glob("#{location}/**/*")
78
+ # dummies = Dir.glob("#{stage_dummy}/**/*")
79
+ # dummies.each do |dummy|
80
+ # generated.select do |g|
81
+ # if dummy.split(stage_dummy).last.match?(g.split(Dir.pwd).last)
82
+ # if File.file?(g)
83
+ # FileUtils.cp_r(g, "#{stage_dummy}#{g.split(Dir.pwd).last}")
84
+ # end
85
+ # end
86
+ # end
87
+ # end
88
+ # end
89
+
90
+ def itinerary_index(stage)
91
+ itineraries = read_yaml("#{Roro.gem_root}/test/fixtures/matrixes/itineraries.yml")
92
+ foo = itineraries.select! do |i|
93
+ i.include?(stack_parent_path(stage.split(Roro::CLI.stacks).last))
94
+ end
95
+ foo
96
+ end
97
+
66
98
  def write_story
67
- @manifest.sort.each { |m| @writer.write(@structure, m) }
99
+ @manifest.each do |m|
100
+ @structure[:itinerary] = @itinerary
101
+ @writer.write(@structure, m)
102
+ # copy_stage_dummy(m) if ENV['RORO_ENV'].eql?('test')
103
+ end
104
+ end
105
+
106
+ def write_log
107
+ @log[:dependency_hash] = @dependency_hash
108
+ @log[:itinerary] = @itinerary
109
+ @log[:manifest] = @manifest
110
+ @log[:stack] = @stack
111
+ @log[:structure] = @structure
112
+ @writer.write_log(@log)
113
+ end
114
+
115
+ private
116
+
117
+ def stage_dummy_index(stack)
118
+ itineraries = read_yaml("#{Roro::CLI.test_root}/fixtures/matrixes/itineraries.yml")
119
+ adventures = itineraries.select! do |i|
120
+ candidate = stack.split(Roro::CLI.stacks).last
121
+ i.include? stack_parent_path(candidate)
122
+ end
123
+ adventures.index(itinerary)
68
124
  end
69
125
  end
70
126
  end
@@ -1,136 +1,135 @@
1
- # frozen_string_literal: true
2
-
3
- require 'os'
4
-
5
- module Roro
6
- module Configurators
7
- class DependencySatisfier < Thor
8
- include Thor::Actions
9
- include Utilities
10
-
11
- attr_reader :dependencies, :checks, :dependencies, :manifest, :builder, :env
12
-
13
- no_commands do
14
-
15
- def satisfy_dependencies(manifest = [])
16
- @manifest = manifest
17
- @builder = {
18
- actions: [],
19
- env: {}
20
- }
21
- @dependencies = {}.tap do |d|
22
- d.merge!(gather_base_dependencies)
23
- d.merge!(gather_stack_dependencies)
24
- end
25
- gather_checks
26
- checks.each { |c| validate_check(c) }
27
- checks.each { |c| satisfy(c) }
28
- install_dependencies
29
-
30
- end
31
-
32
- def install_dependencies
33
- actions = @builder[:actions]
34
- actions.each do |a|
35
- eval a
36
- end
37
- @env = @builder[:env] || {}
38
- end
39
-
40
- def gather_base_dependencies(stack = Roro::CLI.dependency_root)
41
- {}.tap do |b|
42
- children(stack).each { |c| b.merge!(read_yaml(c)) }
43
- end
44
- end
45
-
46
- def gather_stack_dependencies
47
- {}.tap do |b|
48
- manifest.each { |c| b.merge!(read_yaml(c)[:dependencies] || {}) }
49
- end
50
- end
51
-
52
- def gather_checks
53
- @checks = []
54
- manifest.each do |f|
55
- read_yaml(f).dig(:depends_on)&.each do |c|
56
- @checks << c
57
- end
58
- end
59
- @checks
60
- end
61
-
62
- def validate_check(check)
63
- msg = "No #{check} dependency exists. Please define it before depending on it."
64
- dependencies[check.to_sym] || raise(Roro::Error, msg)
65
- end
66
-
67
- def satisfy(check)
68
- d = dependencies[check.to_sym]
69
- return if dependency_met?(check)
70
- help = hint(d, :help)
71
- lucky = hint(d, :lucky)
72
- msg = ["\n\n#{set_color("Missing Dependency", :yellow)}: #{check}"]
73
- if lucky
74
- msg << " #{set_color("Platform", :yellow)}: #{platform}"
75
- msg << " #{set_color("Install with", :yellow)}: $ #{lucky.shift}"
76
- lucky.each do |c|
77
- msg << " $ #{c}"
78
- end
79
- end
80
- if help
81
- msg << " Help: #{help}" if help
82
- end
83
- say(msg.join("\n\s\s"))
84
- if lucky && yes?("Do you feel lucky?")
85
- @builder ||= {
86
- actions: [],
87
- env: {}
88
- }
89
- @builder[:env].merge!(d.dig(:env) || {})
90
- @builder[:actions] = @builder[:actions] + lucky
91
- end
92
- end
93
-
94
-
95
-
96
- def hint(hash, key)
97
- hash
98
- case
99
- when OS.linux? && hash.dig(:overrides, platform_for(hash), key )
100
- hash.dig(:overrides, platform_for(hash), key)
101
- when hash.dig(:overrides, platform, key)
102
- hash.dig(:overrides, platform, key)
103
- when hash.dig(key)
104
- hash.dig(key)
105
- end
106
- end
107
-
108
- def dependency_met?(command)
109
- system(command.to_s) ? true : false
110
- end
111
-
112
- def platform_for(dependency)
113
- overrides = dependency.dig(:overrides)
114
- return if overrides.nil? || overrides.empty?
115
- return platform if overrides.keys.include?(platform)
116
- overrides.select do |key, value|
117
- return key if value.dig(:aliases)&.include?(platform.to_s)
118
- end
119
- end
120
-
121
- def platform
122
- case
123
- when OS.linux?
124
- distro
125
- else
126
- OS.host_os.to_sym
127
- end
128
- end
129
-
130
- def distro
131
- OS.parse_os_release[:ID].to_sym
132
- end
133
- end
134
- end
135
- end
136
- end
1
+ # # frozen_string_literal: true
2
+ #
3
+ # require 'os'
4
+ #
5
+ # module Roro
6
+ # module Configurators
7
+ # class DependencySatisfier < Thor
8
+ # include Thor::Actions
9
+ # include Utilities
10
+ #
11
+ # attr_reader :dependencies, :checks, :dependencies, :manifest, :builder, :env
12
+ #
13
+ # no_commands do
14
+ #
15
+ # def satisfy_dependencies(manifest = [])
16
+ # @manifest = manifest
17
+ # @builder = {
18
+ # actions: [],
19
+ # env: {}
20
+ # }
21
+ # @dependencies = {}.tap do |d|
22
+ # d.merge!(gather_base_dependencies)
23
+ # d.merge!(gather_stack_dependencies)
24
+ # end
25
+ # gather_checks
26
+ # checks.each { |c| validate_check(c) }
27
+ # checks.each { |c| satisfy(c) }
28
+ # install_dependencies
29
+ #
30
+ # end
31
+ #
32
+ # def install_dependencies
33
+ # actions = @builder[:actions]
34
+ # actions.each do |a|
35
+ # eval a
36
+ # end
37
+ # @env = @builder[:env] || {}
38
+ # end
39
+ #
40
+ # def gather_base_dependencies(stack = Roro::CLI.dependency_root)
41
+ # {}.tap do |b|
42
+ # children(stack).each { |c| b.merge!(read_yaml(c)) }
43
+ # end
44
+ # end
45
+ #
46
+ # def gather_stack_dependencies
47
+ # {}.tap do |b|
48
+ # manifest.each { |c| b.merge!(read_yaml(c)[:dependencies] || {}) }
49
+ # end
50
+ # end
51
+ #
52
+ # def gather_checks
53
+ # @checks = []
54
+ # manifest.each do |f|
55
+ # read_yaml(f).dig(:depends_on)&.each do |c|
56
+ # @checks << c
57
+ # end
58
+ # end
59
+ # @checks
60
+ # end
61
+ #
62
+ # def validate_check(check)
63
+ # msg = "No #{check} dependency exists. Please define it before depending on it."
64
+ # dependencies[check.to_sym] || raise(Roro::Error, msg)
65
+ # end
66
+ #
67
+ # def satisfy(check)
68
+ # d = dependencies[check.to_sym]
69
+ # return if dependency_met?(check)
70
+ # help = hint(d, :help)
71
+ # lucky = hint(d, :lucky)
72
+ # msg = ["\n\n#{set_color("Missing Dependency", :yellow)}: #{check}"]
73
+ # if lucky
74
+ # msg << " #{set_color("Platform", :yellow)}: #{platform}"
75
+ # msg << " #{set_color("Install with", :yellow)}: $ #{lucky.shift}"
76
+ # lucky.each do |c|
77
+ # msg << " $ #{c}"
78
+ # end
79
+ # end
80
+ # if help
81
+ # msg << " Help: #{help}" if help
82
+ # end
83
+ # say(msg.join("\n\s\s"))
84
+ # if lucky && yes?("Do you feel lucky?")
85
+ # @builder ||= {
86
+ # actions: [],
87
+ # env: {}
88
+ # }
89
+ # @builder[:env].merge!(d.dig(:env) || {})
90
+ # @builder[:actions] = @builder[:actions] + lucky
91
+ # end
92
+ # end
93
+ #
94
+ #
95
+ # def hint(hash, key)
96
+ # hash
97
+ # case
98
+ # when OS.linux? && hash.dig(:overrides, platform_for(hash), key )
99
+ # hash.dig(:overrides, platform_for(hash), key)
100
+ # when hash.dig(:overrides, platform, key)
101
+ # hash.dig(:overrides, platform, key)
102
+ # when hash.dig(key)
103
+ # hash.dig(key)
104
+ # end
105
+ # end
106
+ #
107
+ # def dependency_met?(command)
108
+ # system(command.to_s) ? true : false
109
+ # end
110
+ #
111
+ # def platform_for(dependency)
112
+ # overrides = dependency.dig(:overrides)
113
+ # return if overrides.nil? || overrides.empty?
114
+ # return platform if overrides.keys.include?(platform)
115
+ # overrides.select do |key, value|
116
+ # return key if value.dig(:aliases)&.include?(platform.to_s)
117
+ # end
118
+ # end
119
+ #
120
+ # def platform
121
+ # case
122
+ # when OS.linux?
123
+ # distro
124
+ # else
125
+ # OS.host_os.to_sym
126
+ # end
127
+ # end
128
+ #
129
+ # def distro
130
+ # OS.parse_os_release[:ID].to_sym
131
+ # end
132
+ # end
133
+ # end
134
+ # end
135
+ # end
@@ -21,7 +21,7 @@ module Roro
21
21
 
22
22
  def override_prompt(environment, key, value)
23
23
  name = value.dig(:name) || key
24
- prompt = "Would you like to accept the default value for #{name}?\n"
24
+ # prompt = "Would you like to accept the default value for #{name}?\n"
25
25
  help = value.dig(:help) ? "#{value.dig(:help)}" : nil
26
26
  default = "#{key}=#{value[:value]}"
27
27
  ["\nEnvironment: #{environment}",
@@ -42,17 +42,17 @@ module Roro
42
42
 
43
43
  def inflection_prompt
44
44
  prompt = 'Please choose from these'
45
- collection = name(@inflection).gsub('_', ' ') + ":\n"
45
+ collection = stack_name(@inflection).gsub('_', ' ') + ":\n"
46
46
  [prompt, stack_parent(@inflection), collection].join(' ')
47
47
  end
48
48
 
49
49
  def inflection_options
50
50
  Hash.new.tap do |h|
51
51
  children(@inflection)
52
- .map { |f| name(f) }
52
+ .map { |f| stack_name(f) }
53
53
  .sort
54
54
  .each_with_index do |c, i|
55
- h[(i + 1).to_s] = name(c)
55
+ h[(i + 1).to_s] = stack_name(c)
56
56
  end
57
57
  end
58
58
  end
@@ -67,9 +67,9 @@ module Roro
67
67
  end
68
68
 
69
69
  def get_story_preface(story)
70
- storyfile = "#{story}/#{name(story)}.yml"
70
+ storyfile = "#{story}/#{stack_name(story)}.yml"
71
71
  if stack_is_storyfile?(storyfile)
72
- read_yaml("#{story}/#{name(story)}.yml")[:preface]
72
+ read_yaml("#{story}/#{stack_name(story)}.yml")[:preface]
73
73
  else
74
74
  nil
75
75
  end