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
@@ -0,0 +1,225 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'deep_merge'
4
+
5
+ module Roro
6
+ module Configurators
7
+ class Reflector
8
+ include Utilities
9
+
10
+ attr_reader :stack
11
+
12
+ def initialize(stack = nil)
13
+ @stack = stack || Roro::CLI.stacks
14
+ end
15
+
16
+ def log_to_mise(name, content)
17
+ path = "#{Dir.pwd}/mise/logs/#{name}.yml"
18
+ File.open(path, 'w') { |f| f.write(content.to_yaml) }
19
+ end
20
+
21
+ def reflection(stack = nil)
22
+ stack ||= @stack
23
+ reflection = {
24
+ inflections: [],
25
+ stacks: {},
26
+ stories: [],
27
+ picks: []
28
+ }
29
+ children(stack).each_with_index do |c, index|
30
+ if %i[inflection inflection_stub].include?(stack_type(c))
31
+ reflection[:inflections] << { stack_name(c).to_sym => reflection(c) }
32
+ elsif [:stack].include?(stack_type(c))
33
+ reflection[:stacks][index + 1] = reflection c
34
+ elsif [:story].include?(stack_type(c))
35
+ reflection[:picks] << index + 1
36
+ story = c.split("#{Roro::CLI.stacks}/").last
37
+ reflection[:stories] << story
38
+ end
39
+ end
40
+ reflection
41
+ end
42
+
43
+ def cases(stack = @stack, sibs = [], kase = [], kases = [])
44
+ case stack_type(stack)
45
+ when :inflection_stub
46
+ children(stack).each { |c| cases(c, sibs, kase, kases) }
47
+ when :inflection
48
+ children(stack).each_with_index do |c, i|
49
+ cases(c, sibs.dup, kase.dup << i += 1, kases)
50
+ end
51
+ when :stack
52
+ inflections = children(stack).select do |c|
53
+ %i[inflection inflection_stub].include?(stack_type(c))
54
+ end
55
+
56
+ cases(inflections.shift, (sibs + inflections), kase, kases)
57
+ when :story
58
+ sibs.empty? ? kases << kase : cases(sibs.shift, sibs, kase, kases)
59
+ end
60
+ kases
61
+ end
62
+
63
+ def stack_itineraries(stack)
64
+ itineraries.select do |itinerary|
65
+ parent = stack.split("#{Roro::CLI.stacks}/").last
66
+ itinerary.any? do |i|
67
+ i.match? parent
68
+ end
69
+ end
70
+ end
71
+
72
+ def itinerary_index(itinerary, stack)
73
+ stack_itineraries(stack).index(itinerary)
74
+ end
75
+
76
+ def itineraries(stack = @stack, siblings = [], kase = [], kases = [])
77
+ case stack_type(stack)
78
+ when :inflection_stub
79
+ children(stack).each { |c| itineraries(c, siblings, kase, kases) }
80
+ when :inflection
81
+ children(stack).each do |c|
82
+ dup = (kase.dup << "#{stack_name(stack)}: #{stack_name(c)}")
83
+ itineraries(c, siblings.dup, dup, kases)
84
+ end
85
+ when :stack
86
+ inflections = children(stack).select do |c|
87
+ %i[inflection inflection_stub]
88
+ .include?(stack_type(c))
89
+ end
90
+
91
+ itineraries(inflections.shift, (siblings + inflections), kase, kases)
92
+ when :story
93
+ if siblings.empty?
94
+ kases << kase
95
+ else
96
+ itineraries(siblings.shift, siblings, kase, kases)
97
+ end
98
+ end
99
+ kases
100
+ end
101
+
102
+ def adventure_structure
103
+ {
104
+ human: adventure_structure_human,
105
+ choices: adventure_structure_choices
106
+ }
107
+ end
108
+
109
+ def adventure_structure_human
110
+ {}.tap do |h|
111
+ itineraries.each do |array|
112
+ hash = {}
113
+ array.reverse.each { |i| hash = { i.split(': ').last => hash } }
114
+ h.deep_merge(hash)
115
+ end
116
+ end
117
+ end
118
+
119
+ def adventure_structure_choices
120
+ {}.tap do |h|
121
+ cases.each do |array|
122
+ hash = {}
123
+ array.reverse.each do |c|
124
+ hash = { c => hash }
125
+ end
126
+ h.deep_merge(hash)
127
+ end
128
+ end
129
+ end
130
+
131
+ def metadata
132
+ @implicit_tags = %w[git okonomi adventures databases frameworks stories versions]
133
+
134
+ data = {}
135
+ data[:adventures] = {}
136
+ itineraries.each_with_index do |itinerary, index|
137
+ data[:adventures][index] = {
138
+ title: adventure_title(itinerary),
139
+ slug: adventure_slug(itinerary),
140
+ canonical_slug: adventure_canonical_slug(itinerary),
141
+ tech_tags: tech_tags(itinerary),
142
+ versioned_tech_tags: versioned_tech_tags(itinerary),
143
+ unversioned_tech_tags: unversioned_tech_tags(itinerary)
144
+ }
145
+ end
146
+ data
147
+ end
148
+
149
+ def tech_tags(kase = [], stack = @stack, tags = [], sibs = [])
150
+ children = children(stack)
151
+ case stack_type(stack)
152
+ when :inflection_stub
153
+ children(stack).each { |c| tech_tags(kase, c, tags, sibs) }
154
+ when :inflection
155
+ choice = children[kase.shift - 1]
156
+ tech_tags(kase, choice, tags, sibs)
157
+ when :stack
158
+ inflections = children(stack).select do |c|
159
+ %i[inflection inflection_stub]
160
+ .include?(stack_type(c))
161
+ end
162
+ stack_stories(stack).each do |child|
163
+ tech_tags(kase, child, tags, sibs) if stack_is_storyfile?(child)
164
+ end
165
+ tech_tags(kase, inflections.shift, tags, (sibs + inflections))
166
+ when :storyfile
167
+ tags << stack_name(stack).split('.').first
168
+ when :story
169
+ children(stack).each do |child|
170
+ tech_tags(kase, child, tags, sibs)
171
+ end
172
+ end
173
+ tech_tags(kase, sibs.shift, tags, sibs) unless sibs.empty?
174
+ ignored = %w[_builder databases]
175
+ tags.reject { |tag| ignored.include?(tag) }
176
+ end
177
+
178
+ def append_tech_to_version(tag, path)
179
+ if stack_parent(path).eql?('versions')
180
+ base = stack_name(stack_parent_path(stack_parent_path(path)))
181
+ "#{base}#{tag.gsub(tag.chr, ':').gsub('_', '.')}"
182
+ else
183
+ tag
184
+ end
185
+ end
186
+
187
+ def unversioned_tech_tags(itinerary)
188
+ tech_tags(itinerary).reject do |t|
189
+ t.match?(':')
190
+ end
191
+ end
192
+
193
+ def versioned_tech_tags(itinerary)
194
+ tech_tags(itinerary).select do |t|
195
+ t.match?(':')
196
+ end
197
+ end
198
+
199
+ def adventure_slug(itinerary)
200
+ array = []
201
+ itinerary.each do |i|
202
+ keyword = i.split('/').last(3) - @implicit_tags
203
+ array << keyword.join('_')
204
+ end
205
+ array.join('-')
206
+ end
207
+
208
+ def adventure_title(itinerary)
209
+ itinerary.map do |item|
210
+ item.split(': ').last
211
+ end.join(' ')
212
+ end
213
+
214
+ def adventure_canonical_slug(itinerary)
215
+ array = []
216
+ itinerary.each do |i|
217
+ inflections = %w[adventures databases frameworks stories versions]
218
+ keyword = i.split('/').last(3) - inflections
219
+ array << keyword.join('_')
220
+ end
221
+ array.join('-')
222
+ end
223
+ end
224
+ end
225
+ end
@@ -16,6 +16,7 @@ module Roro
16
16
  depends_on: [''],
17
17
  env: {
18
18
  base: {},
19
+ ci: {},
19
20
  development: {},
20
21
  staging: {},
21
22
  production: {}
@@ -9,7 +9,7 @@ module Roro
9
9
  attr_reader :stack, :structure, :permitted_hidden_extensions, :permitted_story_extensions, :ext_permitted
10
10
 
11
11
  def initialize(stack = nil, structure = nil)
12
- @stack = stack || Roro::CLI.catalog_root
12
+ @stack = stack || Roro::CLI.stacks
13
13
  @structure = structure || StructureBuilder.build
14
14
  @error = Roro::CatalogError
15
15
  @permitted_story_extensions = %w[yml yaml]
@@ -23,11 +23,13 @@ module Roro
23
23
  end
24
24
 
25
25
  def write_keyfiles(environments = [], directory = nil, extension = nil)
26
+ @writer.write_to_file("#{@mise}/keys/.keep", '')
26
27
  directory ||= @mise
27
28
  extension ||= '.key'
28
29
  if environments.empty?
29
30
  environments = gather_environments(directory, '.env').uniq
30
31
  end
32
+
31
33
  environments.uniq.each { |environment| write_keyfile(environment, extension) }
32
34
  end
33
35
  end
@@ -0,0 +1,5 @@
1
+ env:
2
+ base:
3
+ docker_compose_version:
4
+ name: Docker Compose version
5
+ value: 3.9
@@ -0,0 +1,2 @@
1
+ preface: A minimal Docker image based on Alpine Linux with a complete package index and only 5 MB in size!
2
+
@@ -0,0 +1 @@
1
+ preface: Docker is a hyperviser that allows developers to run software in containers.
@@ -0,0 +1,17 @@
1
+ env:
2
+ base:
3
+ git_config_user_name:
4
+ name: The name you'd like associated with git activities
5
+ value: Jane Doe
6
+ git_config_user_email:
7
+ name: The email address you'd like associated with git activities
8
+ value: jane.doe@example.com
9
+ rails_version:
10
+ name: Ruby on Rails minor version
11
+ value: 7.0
12
+ JOB_WORKER_URL:
13
+ name: Reids job worker url
14
+ value: redis://redis:6379/0
15
+ REDIS_URL:
16
+ name: Reids url
17
+ value: redis://redis:6379/0
@@ -0,0 +1,3 @@
1
+ actions:
2
+ - copy_layer('builder')
3
+ - run 'DOCKER_BUILDKIT=1 docker build --file Dockerfile --output . .'
@@ -0,0 +1,11 @@
1
+ preface: Laravel is a web application framework with expressive, elegant syntax.
2
+ env:
3
+ base:
4
+ php_version:
5
+ name: PHP version
6
+ value: "7.4"
7
+ help: https://www.php.net/supported-versions.php
8
+
9
+ actions:
10
+ - copy_layer('manifest')
11
+ - run "docker-compose build"
@@ -0,0 +1,14 @@
1
+ # syntax=docker/dockerfile:1
2
+
3
+ FROM php:7.4-fpm-alpine as builder
4
+
5
+ WORKDIR /app/
6
+
7
+ COPY --from=composer /usr/bin/composer /usr/bin/composer
8
+
9
+ RUN composer create-project laravel/laravel \
10
+ blog
11
+
12
+ FROM scratch AS export-stage
13
+
14
+ COPY --from=builder ./app/blog .
@@ -0,0 +1,22 @@
1
+ server {
2
+ listen 80;
3
+ index index.php index.html;
4
+ server_name localhost;
5
+ error_log /var/log/nginx/error.log;
6
+ access_log /var/log/nginx/access.log;
7
+ root /var/www/html/public;
8
+
9
+ location / {
10
+ try_files $uri $uri/ /index.php?$query_string;
11
+ }
12
+
13
+ location ~ \.php$ {
14
+ try_files $uri =404;
15
+ fastcgi_split_path_info ^(.+\.php)(/.+)$;
16
+ fastcgi_pass php:9000;
17
+ fastcgi_index index.php;
18
+ include fastcgi_params;
19
+ fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
20
+ fastcgi_param PATH_INFO $fastcgi_path_info;
21
+ }
22
+ }
@@ -0,0 +1,43 @@
1
+ FROM php:<%= @env[:base][:php_version][:value] %>-fpm-alpine
2
+
3
+ WORKDIR /var/www/html
4
+
5
+ RUN apk add --update autoconf \
6
+ build-base \
7
+ freetype-dev \
8
+ imagemagick6 \
9
+ libjpeg-turbo-dev \
10
+ libpng-dev \
11
+ libpq \
12
+ libzip-dev \
13
+ pkgconfig \
14
+ zlib-dev \
15
+ zlib
16
+
17
+ RUN apk add --update \
18
+ postgresql-dev
19
+ #RUN apk add --update \
20
+ # postgresql-dev \
21
+ # sqlite-dev
22
+
23
+
24
+ RUN pecl install -o -f redis
25
+
26
+ RUN docker-php-ext-configure gd
27
+ RUN docker-php-ext-install bcmath \
28
+ exif \
29
+ pcntl \
30
+ sockets \
31
+ zip
32
+
33
+ RUN docker-php-ext-install pgsql \
34
+ pdo_pgsql
35
+
36
+ # RUN docker-php-ext-install pdo_mysql
37
+
38
+ RUN docker-php-ext-enable redis
39
+
40
+ RUN link /usr/local/bin/php /usr/bin/php
41
+
42
+ RUN echo "php_admin_value[memory_limit] = 2G" >> /usr/local/etc/php-fpm.d/www.conf
43
+ RUN echo "memory_limit=2G" >> /usr/local/etc/php/php.ini
@@ -0,0 +1,7 @@
1
+ sleep 60
2
+
3
+ while [ true ]
4
+ do
5
+ php /var/www/html/artisan schedule:run --verbose --no-interaction &
6
+ sleep 60
7
+ done%
@@ -0,0 +1,122 @@
1
+ version: '3'
2
+
3
+ networks:
4
+ laravel:
5
+
6
+ services:
7
+ site:
8
+ image: nginx:stable-alpine
9
+ container_name: laravel_site
10
+ hostname: 'laravel.dev.test'
11
+ ports:
12
+ - 80:80
13
+ - 443:443
14
+ volumes:
15
+ - ./:/var/www/html
16
+ - ./docker/default.conf:/etc/nginx/conf.d/default.conf
17
+ depends_on:
18
+ - php
19
+ - postgres
20
+ - redis
21
+ networks:
22
+ - laravel
23
+
24
+ postgres:
25
+ image: postgres:12.3-alpine
26
+ container_name: laravel_postgres
27
+ ports:
28
+ - 5432
29
+ environment:
30
+ POSTGRES_DB: laravel
31
+ POSTGRES_USER: laravel
32
+ POSTGRES_PASSWORD: secret
33
+ networks:
34
+ - laravel
35
+
36
+ redis:
37
+ image: redis:6-alpine
38
+ container_name: laravel_redis
39
+ ports:
40
+ - 6379
41
+ networks:
42
+ - laravel
43
+
44
+ php:
45
+ build:
46
+ context: .
47
+ dockerfile: docker/php.dockerfile
48
+ container_name: laravel_php
49
+ volumes:
50
+ - ./:/var/www/html
51
+ ports:
52
+ - 9000
53
+ networks:
54
+ - laravel
55
+
56
+ composer:
57
+ image: composer:2
58
+ container_name: laravel_composer
59
+ volumes:
60
+ - ./:/var/www/html
61
+ working_dir: /var/www/html
62
+ depends_on:
63
+ - php
64
+ networks:
65
+ - laravel
66
+
67
+ npm:
68
+ image: node:13.7
69
+ container_name: laravel_npm
70
+ volumes:
71
+ - ./:/var/www/html
72
+ working_dir: /var/www/html
73
+ entrypoint: ['npm']
74
+ networks:
75
+ - laravel
76
+
77
+ artisan:
78
+ build:
79
+ context: .
80
+ dockerfile: docker/php.dockerfile
81
+ container_name: laravel_artisan
82
+ volumes:
83
+ - ./:/var/www/html
84
+ depends_on:
85
+ - postgres
86
+ - php
87
+ - redis
88
+ working_dir: /var/www/html
89
+ entrypoint: ['php', '/var/www/html/artisan']
90
+ networks:
91
+ - laravel
92
+
93
+ scheduler:
94
+ container_name: laravel_scheduler
95
+ build:
96
+ context: .
97
+ dockerfile: docker/php.dockerfile
98
+ volumes:
99
+ - ./docker/scheduler.sh:/run.sh
100
+ - ./:/var/www/html
101
+ working_dir: /var/www/html
102
+ depends_on:
103
+ - site
104
+ networks:
105
+ - laravel
106
+ command: /bin/sh /run.sh
107
+
108
+ worker:
109
+ container_name: laravel_worker
110
+ build:
111
+ context: .
112
+ dockerfile: docker/php.dockerfile
113
+ volumes:
114
+ - ./:/var/www/html
115
+ working_dir: /var/www/html
116
+ restart: always
117
+ depends_on:
118
+ - site
119
+ - redis
120
+ networks:
121
+ - laravel
122
+ command: php /var/www/html/artisan queue:work
@@ -0,0 +1,16 @@
1
+ site:
2
+ image: nginx:stable-alpine
3
+ container_name: laravel_site
4
+ hostname: 'laravel.dev.test'
5
+ ports:
6
+ - 80:80
7
+ - 443:443
8
+ volumes:
9
+ - ./:/var/www/html
10
+ - ./docker/default.conf:/etc/nginx/conf.d/default.conf
11
+ depends_on:
12
+ - php
13
+ - postgres
14
+ - redis
15
+ networks:
16
+ - laravel
@@ -0,0 +1,142 @@
1
+ # # frozen_string_literal: true
2
+ #
3
+ # require 'test_helper'
4
+ #
5
+ # describe 'adventure::laravel::0 ' do
6
+ # Given(:workbench) { }
7
+ #
8
+ # Given { @rollon_loud = false }
9
+ # Given { @rollon_dummies = false }
10
+ # Given { rollon(__dir__) }
11
+ #
12
+ # describe 'directory must contain' do
13
+ # describe 'composer.json' do
14
+ # Given(:file) { 'composer.json' }
15
+ # Then { assert_file file }
16
+ #
17
+ # describe 'must have content' do
18
+ # describe 'equal to' do
19
+ # Then { assert_file file, 'foo' }
20
+ # end
21
+ #
22
+ # describe 'matching' do
23
+ # Then { assert_file file, /foo/ }
24
+ # Then { assert_content file, /foo/ }
25
+ # end
26
+ # end
27
+ # end
28
+ #
29
+ # describe 'docker/default.conf' do
30
+ # Given(:file) { 'docker/default.conf' }
31
+ # Then { assert_file file }
32
+ #
33
+ # describe 'must have content' do
34
+ # describe 'equal to' do
35
+ # Then { assert_file file, 'foo' }
36
+ # end
37
+ #
38
+ # describe 'matching' do
39
+ # Then { assert_file file, /foo/ }
40
+ # # Then { assert_content file, /foo/ }
41
+ # end
42
+ # end
43
+ # end
44
+ #
45
+ # describe 'docker/php.dockerfile' do
46
+ # Given(:file) { 'docker/php.dockerfile' }
47
+ # Then { assert_file file }
48
+ #
49
+ # describe 'must have content' do
50
+ # describe 'equal to' do
51
+ # Then { assert_file file, 'foo' }
52
+ # end
53
+ #
54
+ # describe 'matching' do
55
+ # Then { assert_file file, /foo/ }
56
+ # # Then { assert_content file, /foo/ }
57
+ # end
58
+ # end
59
+ # end
60
+ #
61
+ # describe 'docker/scheduler.sh' do
62
+ # Given(:file) { 'docker/scheduler.sh' }
63
+ # Then { assert_file file }
64
+ #
65
+ # describe 'must have content' do
66
+ # describe 'equal to' do
67
+ # Then { assert_file file, 'foo' }
68
+ # end
69
+ #
70
+ # describe 'matching' do
71
+ # Then { assert_file file, /foo/ }
72
+ # # Then { assert_content file, /foo/ }
73
+ # end
74
+ # end
75
+ # end
76
+ #
77
+ # describe 'docker-compose.yml' do
78
+ # Given(:file) { 'docker-compose.yml' }
79
+ # Then { assert_file file }
80
+ #
81
+ # describe 'must have content' do
82
+ # describe 'equal to' do
83
+ # # Then { assert_file file, 'foo' }
84
+ # end
85
+ #
86
+ # describe 'matching' do
87
+ # Then { assert_file file, /foo/ }
88
+ # # Then { assert_content file, /foo/ }
89
+ # end
90
+ # end
91
+ # end
92
+ # end
93
+ #
94
+ #
95
+ # describe 'directory must contain' do
96
+ # describe 'docker' do
97
+ # Then { assert_file 'docker/default.conf' }
98
+ # And { assert_file 'docker/scheduler.sh' }
99
+ #
100
+ # describe 'php.dockerfile must have correct' do
101
+ # Given(:file) { 'docker/php.dockerfile' }
102
+ #
103
+ # describe 'php version' do
104
+ # Then { assert_file file, /FROM php:7.4-fpm-alpine/ }
105
+ # end
106
+ #
107
+ # describe 'db package' do
108
+ # Then { assert_file file, /\n postgresql-dev/ }
109
+ # end
110
+ #
111
+ # describe 'php extensions' do
112
+ # Then { assert_file file, /\n pdo_pgsql/ }
113
+ # end
114
+ #
115
+ # describe 'redis' do
116
+ # Then { assert_file file, /\nRUN pecl install -o -f redis/ }
117
+ # end
118
+ # end
119
+ # end
120
+ #
121
+ # describe 'docker-compose.yml' do
122
+ # Given(:file) { 'docker-compose.yml' }
123
+ # Given(:data) { read_yaml(file) }
124
+ # Then { assert_file file }
125
+ # And { assert_includes data.keys, :version }
126
+ # And { assert_includes data.keys, :networks }
127
+ #
128
+ # describe 'services' do
129
+ # Then {
130
+ # assert_includes data[:services].keys, :artisan
131
+ # assert_includes data[:services].keys, :composer
132
+ # assert_includes data[:services].keys, :npm
133
+ # assert_includes data[:services].keys, :php
134
+ # assert_includes data[:services].keys, :postgres
135
+ # assert_includes data[:services].keys, :redis
136
+ # assert_includes data[:services].keys, :scheduler
137
+ # assert_includes data[:services].keys, :site
138
+ # assert_includes data[:services].keys, :worker }
139
+ # end
140
+ # end
141
+ # end
142
+ # end