roro 0.3.30 → 0.3.33

Sign up to get free protection for your applications and to get access to all the features.
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,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:7.4-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,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,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 .
@@ -13,5 +13,5 @@ env:
13
13
 
14
14
  actions:
15
15
  - directory 'stage_one', '.', @env
16
- - system "sudo docker-compose build"
17
- - system "sudo docker-compose up -d"
16
+ # - system "sudo docker-compose build"
17
+ # - system "sudo docker-compose up -d"
@@ -0,0 +1 @@
1
+ preface: PHP is a popular general-purpose scripting language that is especially suited to web development. https://www.php.net/
@@ -0,0 +1,3 @@
1
+ actions:
2
+ - copy_layer('builder')
3
+ - run 'DOCKER_BUILDKIT=1 docker build --file Dockerfile --output . .'
@@ -0,0 +1,26 @@
1
+ preface: some string
2
+
3
+ env:
4
+ base:
5
+ db_vendor:
6
+ value: mysql
7
+ db_pkg:
8
+ value: mysql
9
+ db_volume:
10
+ value: db_data:/var/lib/mysql
11
+ db_image:
12
+ value: mysql
13
+ db_image_tag:
14
+ value: ':5.7'
15
+ MYSQL_USER:
16
+ name: MySQL user
17
+ value: mysql
18
+ MYSQL_DATABASE:
19
+ name: MySQL database
20
+ value: mysql
21
+ MYSQL_PASSWORD:
22
+ name: MySQL password
23
+ value: mysql
24
+ MYSQL_ROOT_PASSWORD:
25
+ name: MySQL root password
26
+ value: mysql
@@ -0,0 +1,10 @@
1
+ DATABASES = {
2
+ 'default': {
3
+ 'ENGINE': 'django.db.backends.mysql',
4
+ 'NAME': os.environ.get('MYSQL_DATABASE'),
5
+ 'USER': os.environ.get('MYSQL_USER'),
6
+ 'PASSWORD': os.environ.get('MYSQL_PASSWORD'),
7
+ 'HOST': 'db',
8
+ 'PORT': 3306,
9
+ }
10
+ }
@@ -0,0 +1,7 @@
1
+
2
+ db:
3
+ image: <%= @env[:base][:db_image][:value] %><%= @env[:base][:db_image_tag][:value] %>
4
+ volumes:
5
+ - <%= @env[:base][:db_volume][:value] %>
6
+ env_file:
7
+ - ./mise/env/base.env
@@ -0,0 +1,10 @@
1
+ DATABASES = {
2
+ 'default': {
3
+ 'ENGINE': 'django.db.backends.postgresql',
4
+ 'NAME': os.environ.get('POSTGRES_NAME'),
5
+ 'USER': os.environ.get('POSTGRES_USER'),
6
+ 'PASSWORD': os.environ.get('POSTGRES_PASSWORD'),
7
+ 'HOST': 'db',
8
+ 'PORT': 5432,
9
+ }
10
+ }
@@ -0,0 +1,9 @@
1
+
2
+ db:
3
+ image: postgres
4
+ volumes:
5
+ - ./data/db:/var/lib/postgresql/data
6
+ environment:
7
+ - POSTGRES_NAME=postgres
8
+ - POSTGRES_USER=postgres
9
+ - POSTGRES_PASSWORD=postgres
@@ -1,4 +1,9 @@
1
- preface: Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel. It’s free and open source.
1
+ preface: Django is a high-level Python Web framework that encourages rapid
2
+ development and clean, pragmatic design. Built by experienced developers,
3
+ it takes care of much of the hassle of Web development, so you can focus
4
+ on writing your app without needing to reinvent the wheel.
5
+ It’s free and open source.
6
+
2
7
  env:
3
8
  base:
4
9
  python_version:
@@ -15,7 +20,7 @@ env:
15
20
  help: https://www.postgresql.org/docs/8.0/user-manag.html#DATABASE-USERS
16
21
  POSTGRES_PASSWORD:
17
22
  name: Postgres password
18
- value: password
23
+ value: postgres
19
24
  help: https://www.postgresql.org/docs/8.0/sql-alteruser.html
20
25
  app_name:
21
26
  name: Then name of your application or project
@@ -23,11 +28,8 @@ env:
23
28
  help: https://www.forbes.com/sites/allbusiness/2016/10/23/12-tips-for-naming-your-startup-business/
24
29
 
25
30
  actions:
26
- - template 'stage_two/settings.py', "./#{@env[:base][:app_name][:value]}/settings.pycd cd", @env
27
- - |
28
- run "sudo chown -R $USER:$USER . &&
29
- sudo docker-compose build &&
30
- sudo docker-compose up -d --force-recreate"
31
- - run "echo 'You may open your app at http://localhost:8000 '"
32
-
31
+ - copy_layer('manifest')
32
+ - generate_mise
33
+ - run 'docker-compose build'
34
+ - run 'docker-compose up'
33
35
 
@@ -0,0 +1,20 @@
1
+ # syntax=docker/dockerfile:1
2
+
3
+ FROM python:<%= @env[:base][:python_version][:value] %> AS builder
4
+ ENV PYTHONDONTWRITEBYTECODE=1
5
+ ENV PYTHONUNBUFFERED=1
6
+ WORKDIR /code
7
+
8
+ RUN python -m pip install Django psycopg2
9
+
10
+ <%= partial('python_requirements') %>
11
+
12
+ RUN django-admin startproject <%= @env[:base][:app_name][:value] %> .
13
+
14
+ COPY . /code/
15
+
16
+ RUN pip freeze > requirements.txt
17
+
18
+ FROM scratch AS export-stage
19
+
20
+ COPY --from=builder ./code/ .
@@ -1,7 +1,7 @@
1
1
  """
2
- Django settings for <%= @env[:base][:POSTGRES_DB][:value] %> project.
2
+ Django settings for <%= @env[:base][:app_name][:value] %> project.
3
3
 
4
- Generated by 'django-admin startproject' using Django 3.2.8.
4
+ Generated by 'django-admin startproject' using Django 3.2.12.
5
5
 
6
6
  For more information on this file, see
7
7
  https://docs.djangoproject.com/en/3.2/topics/settings/
@@ -11,6 +11,8 @@ https://docs.djangoproject.com/en/3.2/ref/settings/
11
11
  """
12
12
 
13
13
  from pathlib import Path
14
+ import os
15
+
14
16
 
15
17
  # Build paths inside the project like this: BASE_DIR / 'subdir'.
16
18
  BASE_DIR = Path(__file__).resolve().parent.parent
@@ -20,7 +22,7 @@ BASE_DIR = Path(__file__).resolve().parent.parent
20
22
  # See https://docs.djangoproject.com/en/3.2/howto/deployment/checklist/
21
23
 
22
24
  # SECURITY WARNING: keep the secret key used in production secret!
23
- SECRET_KEY = 'django-insecure-p!ndt2*mek)30&60gxab$j1s$_j1$p3wedmeq2a)3j4$q+py%r'
25
+ SECRET_KEY = 'django-insecure-=az@mipp$c+9o-*z0(djg0&j1nvc0mswncgylya2+as4&3%etz'
24
26
 
25
27
  # SECURITY WARNING: don't run with debug turned on in production!
26
28
  DEBUG = True
@@ -49,7 +51,7 @@ MIDDLEWARE = [
49
51
  'django.middleware.clickjacking.XFrameOptionsMiddleware',
50
52
  ]
51
53
 
52
- ROOT_URLCONF = '<%= @env[:base][:POSTGRES_DB][:value] %>.urls'
54
+ ROOT_URLCONF = '<%= @env[:base][:app_name][:value] %>.urls'
53
55
 
54
56
  TEMPLATES = [
55
57
  {
@@ -67,24 +69,13 @@ TEMPLATES = [
67
69
  },
68
70
  ]
69
71
 
70
- WSGI_APPLICATION = '<%= @env[:base][:POSTGRES_DB][:value] %>.wsgi.application'
72
+ WSGI_APPLICATION = '<%= @env[:base][:app_name][:value] %>.wsgi.application'
71
73
 
72
74
 
73
75
  # Database
74
76
  # https://docs.djangoproject.com/en/3.2/ref/settings/#databases
75
77
 
76
- DATABASES = {
77
- 'default': {
78
- 'ENGINE': 'django.db.backends.postgresql',
79
- 'NAME': 'postgres',
80
- 'USER': 'postgres',
81
- 'PASSWORD': 'postgres',
82
- 'HOST': 'db',
83
- 'PORT': 5432,
84
- }
85
- }
86
-
87
-
78
+ <%= partial('settings_py_databases') %>
88
79
 
89
80
  # Password validation
90
81
  # https://docs.djangoproject.com/en/3.2/ref/settings/#auth-password-validators
@@ -1,7 +1,13 @@
1
1
  # syntax=docker/dockerfile:1
2
+
2
3
  FROM python:<%= @env[:base][:python_version][:value] %>
4
+ ENV PYTHONDONTWRITEBYTECODE=1
3
5
  ENV PYTHONUNBUFFERED=1
6
+
7
+ # establish the working directory
4
8
  WORKDIR /code
5
- COPY requirements.txt /code/
9
+
10
+ # copy and install requirements.txt to speed up caching:
11
+ COPY requirements.txt .
6
12
  RUN pip install -r requirements.txt
7
- COPY . /code/
13
+ COPY . .
@@ -0,0 +1,12 @@
1
+
2
+ web:
3
+ build: .
4
+ command: python manage.py runserver 0.0.0.0:8000
5
+ volumes:
6
+ - .:/code
7
+ ports:
8
+ - "8000:8000"
9
+ env_file:
10
+ - ./mise/env/base.env
11
+ depends_on:
12
+ - db
@@ -0,0 +1,97 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'test_helper'
4
+
5
+ describe '' do
6
+ Given { skip }
7
+ Given(:workbench) {}
8
+
9
+ Given { @rollon_loud = false }
10
+ Given { @rollon_dummies = false }
11
+ Given { rollon(__dir__) }
12
+
13
+ describe 'directory must contain' do
14
+ describe 'requirements.txt' do
15
+ Given(:file) { 'requirements.txt' }
16
+ Then { assert_file file }
17
+ end
18
+ end
19
+
20
+ describe 'directory must contain' do
21
+ describe 'mise' do
22
+ describe 'mise/env' do
23
+ Then { assert_file 'mise/env/base.env' }
24
+ end
25
+ end
26
+
27
+ describe 'docker-compose.yml with' do
28
+ Given(:file) { 'docker-compose.yml' }
29
+
30
+ describe 'correct docker-compose version' do
31
+ Then { assert_file file, /version: '3.9'/ }
32
+ end
33
+
34
+ describe 'correct services' do
35
+ Given(:services) { read_yaml(file)[:services] }
36
+
37
+ describe 'web' do
38
+ Given { skip }
39
+ Then { assert_includes services[:web][:restart], 'always' }
40
+ end
41
+
42
+ describe 'db' do
43
+ Given(:db) { services[:db] }
44
+
45
+ describe 'image' do
46
+ Then { assert_equal 'mysql:5.7', db[:image] }
47
+ end
48
+
49
+ describe 'volumes' do
50
+ Then { assert_match 'db_data:/var/lib/mysql', db[:volumes][0] }
51
+ end
52
+
53
+ describe 'env_file' do
54
+ Then { assert_match './mise/env/base.env', db[:env_file][0] }
55
+ end
56
+ end
57
+ end
58
+ end
59
+
60
+ describe 'requirements.txt' do
61
+ Given(:file) { 'requirements.txt' }
62
+ Then do
63
+ assert_file file, /Django==4.0.2/
64
+ assert_file file, /mysqlclient==2.1.0/
65
+ assert_file file, /psycopg2==2.9.3/
66
+ assert_file file, /asgiref==3.5.0/
67
+ assert_file file, /sqlparse==0.4.2/
68
+ end
69
+ end
70
+
71
+ describe 'app_name/settings.py' do
72
+ Given(:file) { 'unstoppable_django/settings.py' }
73
+ Then { assert_file file, /os.environ.get\('MYSQL_DATABASE'\)/ }
74
+ Then { assert_file file, /os.environ.get\('MYSQL_USER'\)/ }
75
+ Then { assert_file file, / os.environ.get\('MYSQL_PASSWORD'\)/ }
76
+ end
77
+
78
+ describe 'Dockerfile' do
79
+ Given(:file) { 'Dockerfile' }
80
+
81
+ describe 'must have content' do
82
+ describe 'steps' do
83
+ Then { assert_file file, /# syntax=docker/ }
84
+ end
85
+
86
+ describe 'steps' do
87
+ Then { assert_file file, /\nFROM python:3/ }
88
+ And { assert_file file, /\nRUN pip install -r requirements.txt/ }
89
+ end
90
+
91
+ describe 'polished' do
92
+ Then { refute File.exist?('polisher') }
93
+ end
94
+ end
95
+ end
96
+ end
97
+ end
@@ -0,0 +1,5 @@
1
+ asgiref==3.5.0
2
+ Django==4.0.2
3
+ mysqlclient==2.1.0
4
+ psycopg2==2.9.3
5
+ sqlparse==0.4.2