roro 0.3.28 → 0.3.33

Sign up to get free protection for your applications and to get access to all the features.
Files changed (539) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.reference.yml +139 -0
  3. data/.circleci/config.yml +154 -119
  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/.gitignore +8 -0
  23. data/.idea/inspectionProfiles/Project_Default.xml +6 -0
  24. data/.idea/markdown.xml +9 -0
  25. data/.idea/misc.xml +4 -0
  26. data/.idea/modules.xml +8 -0
  27. data/.idea/roro.iml +419 -0
  28. data/.idea/runConfigurations/_template__of_Test__Unit_Shoulda_Minitest.xml +41 -0
  29. data/.idea/runConfigurations/ci_prepare.xml +36 -0
  30. data/.idea/runConfigurations/ci_test_adventures.xml +39 -0
  31. data/.idea/runConfigurations/ci_test_rubies.xml +36 -0
  32. data/.idea/runConfigurations/generate_annotations.xml +17 -0
  33. data/.idea/runConfigurations/test_adventures.xml +40 -0
  34. data/.idea/runConfigurations/test_all.xml +40 -0
  35. data/.idea/runConfigurations/test_tasks.xml +40 -0
  36. data/.idea/runConfigurations/test_test.xml +40 -0
  37. data/.idea/vcs.xml +6 -0
  38. data/.pryrc +2 -0
  39. data/CODE_OF_CONDUCT.md +16 -67
  40. data/Gemfile.lock +183 -0
  41. data/Guardfile +11 -22
  42. data/README.md +27 -178
  43. data/Rakefile +39 -7
  44. data/cases +1 -0
  45. data/docker-compose.yml +26 -6
  46. data/lib/roro/cli/generate/generate_adventure.rb +23 -0
  47. data/lib/roro/cli/generate/generate_adventure_tests.rb +22 -0
  48. data/lib/roro/cli/generate/generate_containers.rb +0 -5
  49. data/lib/roro/cli/generate/generate_environments.rb +1 -0
  50. data/lib/roro/cli/generate/generate_harvest.rb +42 -0
  51. data/lib/roro/cli/rollon.rb +0 -7
  52. data/lib/roro/cli.rb +25 -13
  53. data/lib/roro/common/utilities.rb +44 -13
  54. data/lib/roro/configurators/adventure_chooser.rb +5 -2
  55. data/lib/roro/configurators/adventure_picker.rb +8 -7
  56. data/lib/roro/configurators/adventure_writer.rb +198 -4
  57. data/lib/roro/configurators/catalog_builder.rb +1 -1
  58. data/lib/roro/configurators/configurator.rb +71 -8
  59. data/lib/roro/configurators/dependency_satisfier.rb +135 -0
  60. data/lib/roro/configurators/question_asker.rb +3 -3
  61. data/lib/roro/configurators/question_builder.rb +6 -6
  62. data/lib/roro/configurators/reflector.rb +225 -0
  63. data/lib/roro/configurators/structure_builder.rb +3 -0
  64. data/lib/roro/configurators/validator.rb +3 -1
  65. data/lib/roro/crypto/key_writer.rb +2 -0
  66. data/lib/roro/dependencies/base.yml +90 -0
  67. data/lib/roro/stacks/docker.yml +5 -0
  68. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/alpine.yml +2 -0
  69. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/docker.yml +1 -0
  70. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/git.yml +17 -0
  71. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/_builder.yml +3 -0
  72. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/laravel.yml +11 -0
  73. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/builder/Dockerfile.tt +14 -0
  74. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/builder/composer.json +7 -0
  75. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/manifest/docker/default.conf +22 -0
  76. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/manifest/docker/php.dockerfile.tt +43 -0
  77. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/manifest/docker/scheduler.sh +7 -0
  78. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/manifest/docker-compose.yml.tt +122 -0
  79. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/templates/partials/services/site.erb +16 -0
  80. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/_test.rb +142 -0
  81. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/composer.json +7 -0
  82. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/docker/default.conf +22 -0
  83. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/docker/php.dockerfile +43 -0
  84. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/docker/scheduler.sh +7 -0
  85. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/dummy/docker-compose.yml +122 -0
  86. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/layers/_builder/Dockerfile +14 -0
  87. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/layers/_builder/composer.json +7 -0
  88. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/layers/laravel/Dockerfile +14 -0
  89. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel/test/0/layers/laravel/composer.json +7 -0
  90. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/okonomi/languages/php/adventures}/wordpress/wordpress.yml +2 -2
  91. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/php.yml +1 -0
  92. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/_builder.yml +3 -0
  93. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/mysql/mysql.yml +26 -0
  94. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/mysql/templates/partials/_python_requirements.erb +2 -0
  95. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/mysql/templates/partials/_settings_py_databases.erb +10 -0
  96. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/mysql/templates/partials/services/_db.yml.erb +7 -0
  97. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/postgres/postgres.yml +5 -0
  98. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/postgres/templates/partials/_settings_py_databases.erb +10 -0
  99. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/postgres/templates/partials/services/_db.yml.erb +9 -0
  100. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories → unstoppable_developer_styles/okonomi/languages/python/frameworks}/django/django.yml +12 -13
  101. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/templates/builder/Dockerfile.tt +20 -0
  102. 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
  103. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/django/templates/stage_one → unstoppable_developer_styles/okonomi/languages/python/frameworks/django/templates/manifest}/Dockerfile.tt +8 -2
  104. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/templates/partials/_volumes.erb +4 -0
  105. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/templates/partials/services/_web.yml.erb +12 -0
  106. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/0/_test.rb +97 -0
  107. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/0/dummy/requirements.txt +5 -0
  108. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/2/_test.rb +91 -0
  109. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/2/dummy/requirements.txt +4 -0
  110. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/_builder.yml +3 -0
  111. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/flask.yml +8 -0
  112. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/templates/builder/Dockerfile.tt +16 -0
  113. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/templates/partials/services/_redis.yml.erb +3 -0
  114. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/templates/partials/services/_web.yml.erb +5 -0
  115. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/test/0/_test.rb +74 -0
  116. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/test/0/dummy/Dockerfile +11 -0
  117. 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
  118. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/frameworks/flask/test/0/layers/flask/Dockerfile +11 -0
  119. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/python.yml +8 -0
  120. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/templates/manifest/docker-compose.yml.tt +9 -0
  121. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/versions/python_3_10_1/python_3_10_1.yml +5 -0
  122. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/python/versions/python_3_9_9/python_3_9_9.yml +5 -0
  123. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/_builder.yml +3 -0
  124. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/postgres.yml +26 -0
  125. data/lib/roro/stacks/{stories_v1/templates/rails/config/database.pg.yml → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/templates/manifest/config/database.yml} +2 -2
  126. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/templates/partials/packages/_postgres.erb +3 -0
  127. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/templates/partials/services/_db.erb +7 -0
  128. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/versions/postgres_13_5/postgres_13_5.yml +4 -0
  129. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/postgres/versions/postgres_14_1/postgres_14_1.yml +4 -0
  130. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/sqlite/sqlite.yml +8 -0
  131. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/sqlite/templates/partials/packages/_sqlite.erb +3 -0
  132. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases/sqlite/templates/partials/services/_db.erb +9 -0
  133. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/databases.yml +33 -0
  134. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/rails.yml +14 -0
  135. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/schedulers/resque/resque.yml +1 -0
  136. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/schedulers/sidekiq/sidekiq.yml +1 -0
  137. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/builder/Dockerfile.tt +25 -0
  138. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/manifest/Dockerfile.tt +20 -0
  139. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/manifest/docker-compose.yml.tt +7 -0
  140. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/manifest/entrypoints/docker-entrypoint.sh +9 -0
  141. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/partials/packages/_base.erb +7 -0
  142. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/partials/services/_app.erb +17 -0
  143. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/partials/shared/_env_file.erb +3 -0
  144. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/templates/partials/volumes/_base.erb +3 -0
  145. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/rails_6_1.yml +12 -0
  146. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/templates/partials/_packages_adventure.erb +8 -0
  147. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/_test.rb +71 -0
  148. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/dummy/Gemfile +56 -0
  149. 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
  150. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/dummy/docker-compose.yml +32 -0
  151. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/layers/_builder/Dockerfile +41 -0
  152. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/layers/rails/Dockerfile +37 -0
  153. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/_test.rb +94 -0
  154. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/dummy/Dockerfile +37 -0
  155. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/dummy/Gemfile +56 -0
  156. 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
  157. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/dummy/docker-compose.yml +33 -0
  158. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/rails_7_0.yml +10 -0
  159. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/_test.rb +90 -0
  160. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/dummy/Dockerfile +29 -0
  161. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/dummy/Gemfile +72 -0
  162. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/dummy/config/database.yml +25 -0
  163. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/idiot/Dockerfile +29 -0
  164. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/0/idiot/docker-compose.yml +33 -0
  165. 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
  166. 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
  167. 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
  168. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/_test.rb +61 -0
  169. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/dummy/Dockerfile +29 -0
  170. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/dummy/Gemfile +72 -0
  171. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/dummy/config/database.yml +25 -0
  172. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/idiot/Dockerfile +29 -0
  173. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/1/idiot/docker-compose.yml +33 -0
  174. 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
  175. 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
  176. 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
  177. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/_test.rb +76 -0
  178. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/dummy/Dockerfile +29 -0
  179. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/dummy/Gemfile +72 -0
  180. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/dummy/config/database.yml +19 -0
  181. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/dummy/docker-compose.yml +33 -0
  182. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/idiot/Dockerfile +29 -0
  183. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/idiot/Gemfile +72 -0
  184. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/idiot/config/database.yml +19 -0
  185. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/idiot/docker-compose.yml +33 -0
  186. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/layers/_builder/Dockerfile +34 -0
  187. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/layers/rails/Dockerfile +29 -0
  188. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2/layers/rails/Gemfile +72 -0
  189. 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
  190. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/_test.rb +81 -0
  191. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy/Dockerfile +29 -0
  192. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy/Gemfile +72 -0
  193. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy/config/database.yml +19 -0
  194. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy/docker-compose.yml +33 -0
  195. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/layers/_builder/Dockerfile +34 -0
  196. 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
  197. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/_test.rb +80 -0
  198. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy/Dockerfile +29 -0
  199. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy/Gemfile +72 -0
  200. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy/config/database.yml +19 -0
  201. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy/docker-compose.yml +33 -0
  202. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/layers/_builder/Dockerfile +34 -0
  203. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/layers/rails/Dockerfile +29 -0
  204. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/layers/rails/Gemfile +72 -0
  205. 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
  206. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/_test.rb +82 -0
  207. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy/Dockerfile +29 -0
  208. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy/Gemfile +72 -0
  209. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy/config/database.yml +19 -0
  210. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy/docker-compose.yml +33 -0
  211. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/layers/_builder/Dockerfile +34 -0
  212. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/layers/rails/Dockerfile +29 -0
  213. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/layers/rails/Gemfile +72 -0
  214. 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
  215. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/ruby_gem/ruby_gem.yml +1 -0
  216. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/frameworks/ruby_gem/templates/stage_one/.gitignore +56 -0
  217. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/ruby.yml +10 -0
  218. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/versions/ruby_2_7/ruby_2_7.yml +4 -0
  219. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/ruby/versions/ruby_3_0/ruby_3_0.yml +6 -0
  220. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/okonomi.yml +8 -0
  221. data/lib/roro/stacks/unstoppable_developer_styles/okonomi/templates/manifest/.dockerignore.tt +32 -0
  222. data/lib/roro/stacks/unstoppable_developer_styles/omakase/frameworks/wordpress/test/0/_test.rb +12 -0
  223. data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories → unstoppable_developer_styles/omakase/frameworks}/wordpress/wordpress.yml +3 -3
  224. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/circleci.yml +31 -0
  225. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/partials/_ignores.erb +9 -0
  226. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/.circleci/config.yml.tt +45 -0
  227. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/Dockerfile +3 -0
  228. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/index.html +7 -0
  229. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s/app-deployment.yml.tt +23 -0
  230. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s/app-service.yml.tt +15 -0
  231. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s-general/cicd-role-binding.yml +13 -0
  232. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s-general/cicd-role.yml +9 -0
  233. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/k8s-general/cicd-service-account.yml +5 -0
  234. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/scripts/ci-deploy.sh.tt +23 -0
  235. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/test/0/_test.rb +57 -0
  236. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/devops/devops.yml +1 -0
  237. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/kubernetes.yml +1 -0
  238. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/ingress.yml +2 -0
  239. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/nginx.yml +1 -0
  240. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/cert_manager.yml +32 -0
  241. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_2/echo_ingress.yaml.tt +25 -0
  242. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_3/echo_ingress.yaml.tt +25 -0
  243. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_3/ingress_nginx_svc.yaml.tt +31 -0
  244. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one/echo1.yaml +32 -0
  245. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one/echo2.yaml +32 -0
  246. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one/echo_ingress.yaml.tt +18 -0
  247. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one/prod_issuer.yaml.tt +19 -0
  248. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one/staging_issuer.yaml.tt +19 -0
  249. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/test/0/_test.rb +15 -0
  250. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/rails.yml +51 -0
  251. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/docker-compose.yml.tt +41 -0
  252. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/app-deployment.yaml.tt +72 -0
  253. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/app-service.yaml.tt +20 -0
  254. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/database-deployment.yaml.tt +59 -0
  255. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/database-service.yaml.tt +19 -0
  256. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/db-data-persistentvolumeclaim.yaml.tt +14 -0
  257. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/env-configmap.yaml.tt +12 -0
  258. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/redis-deployment.yaml.tt +33 -0
  259. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/redis-service.yaml.tt +19 -0
  260. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/secret.yaml.tt +11 -0
  261. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s/sidekiq-deployment.yaml.tt +56 -0
  262. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/frameworks/rails/test/0/_test.rb +15 -0
  263. data/lib/roro/stacks/unstoppable_developer_styles/sashimi/sashimi.yml +1 -0
  264. data/lib/roro/templates/adventure/%adventure_name%.yml.tt +5 -0
  265. data/lib/roro/templates/adventure/test/0/_test.rb.tt +8 -0
  266. data/lib/roro/templates/adventure_test/_test.rb.tt +31 -0
  267. data/lib/roro/version.rb +1 -1
  268. data/lib/roro.rb +13 -12
  269. data/mise/containers/ruby_gem/Dockerfile +25 -12
  270. data/mise/containers/ruby_gem/Dockerfile-ubuntu +13 -0
  271. data/mise/logs/cases.yml +235 -0
  272. data/mise/logs/getsome.yml +204 -0
  273. data/mise/logs/itineraries.yml +235 -0
  274. data/mise/logs/reflector.yml +204 -0
  275. data/mise/scripts/ci/jobs/run.sh +6 -0
  276. data/mise/scripts/rollon/build_app.sh +7 -0
  277. data/mise/scripts/rollon/down.sh +9 -0
  278. data/mise/scripts/rollon/git_commit.sh +8 -0
  279. data/mise/scripts/rollon/image_build.sh +7 -0
  280. data/mise/scripts/rollon/image_push.sh +8 -0
  281. data/mise/scripts/rollon/prune.sh +3 -0
  282. data/mise/scripts/rollon/reset_sandbox.sh +13 -0
  283. data/mise/scripts/rollon/run.sh +16 -0
  284. data/mise/scripts/rollon-pull.sh +37 -0
  285. data/mise/scripts/rollon.sh +26 -0
  286. data/rakelib/ci/prepare/config/pack.rake +15 -0
  287. data/rakelib/ci/prepare/config/process.rake +12 -0
  288. data/rakelib/ci/prepare/config/validate.rake +13 -0
  289. data/rakelib/ci/prepare/config.rake +8 -0
  290. data/rakelib/ci/prepare/workflows/adventures.rake +70 -0
  291. data/rakelib/ci/prepare/workflows/rubies.rake +15 -0
  292. data/rakelib/ci/prepare.rake +11 -0
  293. data/rakelib/ci/test/adventures.rake +18 -0
  294. data/rakelib/ci/test/rubies.rake +12 -0
  295. data/rakelib/ci/update.rake +6 -0
  296. data/rakelib/club/harvest.rake +9 -0
  297. data/rakelib/docker/image/build.rake +8 -0
  298. data/rakelib/test/annotate.rake +16 -0
  299. data/roro.gemspec +21 -19
  300. metadata +408 -278
  301. data/.circleci/setup-gem-credentials.sh +0 -3
  302. data/.ruby-version +0 -1
  303. data/.travis.yml +0 -7
  304. data/lib/roro/cli/roll_your_own.rb +0 -12
  305. data/lib/roro/configurator.rb +0 -15
  306. data/lib/roro/configurators/adventure_case_builder.rb +0 -65
  307. data/lib/roro/configurators/utilities.rb +0 -188
  308. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/fatsufodo.yml +0 -1
  309. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/django/django.yml +0 -39
  310. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/django/templates/stage_one/Dockerfile.tt +0 -7
  311. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/django/templates/stage_one/docker-compose.yml.tt +0 -20
  312. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/django/templates/stage_one/requirements.txt.tt +0 -2
  313. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/django/test/stage_one/stage_one_test.rb +0 -37
  314. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/expressjs/expressjs.yml +0 -8
  315. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/expressjs/templates/stage_one/Dockerfile.tt +0 -14
  316. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/expressjs/templates/stage_one/docker-compose.yml.tt +0 -21
  317. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/flask/flask.yml +0 -14
  318. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/flask/templates/stage_one/requirements.txt +0 -2
  319. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/flask/test/stage_one/stage_test.rb +0 -37
  320. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/rails/rails.yml +0 -12
  321. data/lib/roro/stacks/catalog/unstoppable/developer_styles/fatsufodo/stories/rails/templates/stage_one/docker-compose.yml.tt +0 -9
  322. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/okonomi.yml +0 -1
  323. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/stories/roll_your_own/roll_your_own.yml +0 -23
  324. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/%interpolated_story_name%.yml.tt +0 -10
  325. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/test/stage_one/stage_test.rb.tt +0 -37
  326. data/lib/roro/stacks/catalog/unstoppable/developer_styles/okonomi/stories/roll_your_own/test/stage_one/stage_one_test.rb +0 -63
  327. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/rails/templates/stage_one/Dockerfile.tt +0 -16
  328. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/rails/templates/stage_one/Gemfile.tt +0 -2
  329. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/rails/templates/stage_one/entrypoint.sh +0 -8
  330. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/rails/templates/stage_two/database.yml.tt +0 -16
  331. data/lib/roro/stacks/catalog/unstoppable/developer_styles/omakase/stories/wordpress/test/stage_one/stage_test.rb +0 -40
  332. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/sashimi.yml +0 -1
  333. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/django/templates/stage_one/docker-compose.yml.tt +0 -20
  334. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/django/templates/stage_one/requirements.txt.tt +0 -2
  335. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/django/templates/stage_two/settings.py +0 -130
  336. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/django/test/stage_one/stage_one_test.rb +0 -37
  337. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/expressjs/expressjs.yml +0 -7
  338. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/expressjs/templates/stage_one/Dockerfile.tt +0 -14
  339. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/expressjs/templates/stage_one/docker-compose.yml.tt +0 -21
  340. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/rails/rails.yml +0 -12
  341. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_one/Dockerfile.tt +0 -16
  342. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_one/Gemfile.tt +0 -2
  343. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_one/docker-compose.yml.tt +0 -17
  344. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_one/entrypoint.sh +0 -8
  345. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_two/database.yml.tt +0 -16
  346. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/__MACOSX/scripts/._.DS_Store +0 -0
  347. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/.DS_Store +0 -0
  348. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/base/bundler.sh +0 -22
  349. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/base/git.sh +0 -21
  350. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/base/rvm.sh +0 -38
  351. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/base/utilities.sh +0 -53
  352. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/base.sh +0 -6
  353. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/initialize/clone_idea.sh +0 -14
  354. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/initialize/clone_repos.sh +0 -33
  355. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/initialize/install_correct_bundler.sh +0 -21
  356. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/initialize/install_rubies.sh +0 -6
  357. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/initialize.sh +0 -18
  358. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/roro.sh +0 -15
  359. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/source.sh +0 -28
  360. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/utility/bundle_all.sh +0 -12
  361. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/utility/git_pull_all.sh +0 -15
  362. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/utility/rvm_install_all.sh +0 -12
  363. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/roro/templates/scripts/utility/yarn_install_all.sh +0 -10
  364. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/wordpress/templates/stage_one/docker-compose.yml.tt +0 -31
  365. data/lib/roro/stacks/catalog/unstoppable/developer_styles/sashimi/stories/wordpress/wordpress.yml +0 -16
  366. data/lib/roro/stacks/library/roro/docker_compose/docker-compose.yml +0 -22
  367. data/lib/roro/stacks/library/roro/k8s/k8s.yml +0 -15
  368. data/lib/roro/stacks/library/roro/plots/node/node.yml +0 -22
  369. data/lib/roro/stacks/library/roro/plots/php/php.yml +0 -22
  370. data/lib/roro/stacks/library/roro/plots/python/plots/django/django.yml +0 -10
  371. data/lib/roro/stacks/library/roro/plots/python/plots/django/templates/Dockerfile +0 -7
  372. data/lib/roro/stacks/library/roro/plots/python/plots/django/templates/docker-compose.yml +0 -20
  373. data/lib/roro/stacks/library/roro/plots/python/plots/django/templates/requirements.txt +0 -2
  374. data/lib/roro/stacks/library/roro/plots/python/plots/flask/flask.yml +0 -0
  375. data/lib/roro/stacks/library/roro/plots/python/python.yml +0 -1
  376. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/databases/mysql.yml +0 -22
  377. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/databases/postgres.yml +0 -22
  378. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/plots/rails/rails.yml +0 -22
  379. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/plots/rails_react/rails_react.yml +0 -22
  380. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/plots/rails_vue/rails_vue.yml +0 -22
  381. data/lib/roro/stacks/library/roro/plots/ruby/plots/rails/rails.yml +0 -16
  382. data/lib/roro/stacks/library/roro/plots/ruby/plots/ruby_gem/ruby_gem.yml +0 -22
  383. data/lib/roro/stacks/library/roro/plots/ruby/ruby.yml +0 -22
  384. data/lib/roro/stacks/library/roro/roro/roro.yml +0 -15
  385. data/lib/roro/stacks/stories_v1/greenfield/rails.yml +0 -9
  386. data/lib/roro/stacks/stories_v1/greenfield/roro.yml +0 -7
  387. data/lib/roro/stacks/stories_v1/greenfield.yml +0 -1
  388. data/lib/roro/stacks/stories_v1/rollon/rails/ci_cd/circleci.yml +0 -2
  389. data/lib/roro/stacks/stories_v1/rollon/rails/ci_cd.yml +0 -1
  390. data/lib/roro/stacks/stories_v1/rollon/rails/database/mysql.yml +0 -17
  391. data/lib/roro/stacks/stories_v1/rollon/rails/database/postgresql.yml +0 -15
  392. data/lib/roro/stacks/stories_v1/rollon/rails/database.yml +0 -9
  393. data/lib/roro/stacks/stories_v1/rollon/rails/kubernetes/postgresql/default.yml +0 -1
  394. data/lib/roro/stacks/stories_v1/rollon/rails/kubernetes/postgresql/edge.yml +0 -1
  395. data/lib/roro/stacks/stories_v1/rollon/rails/kubernetes/postgresql.yml +0 -10
  396. data/lib/roro/stacks/stories_v1/rollon/rails/kubernetes.yml +0 -1
  397. data/lib/roro/stacks/stories_v1/rollon/rails.yml +0 -76
  398. data/lib/roro/stacks/stories_v1/rollon/roro.yml +0 -5
  399. data/lib/roro/stacks/stories_v1/rollon/ruby_gem.yml +0 -5
  400. data/lib/roro/stacks/stories_v1/rollon.yml +0 -42
  401. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/config.yml.tt +0 -11
  402. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/jobs/_build.yml +0 -14
  403. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/jobs/_push.yml +0 -11
  404. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/jobs/_test.yml +0 -12
  405. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/setup-gem-credentials.sh +0 -3
  406. data/lib/roro/stacks/stories_v1/templates/rails/.circleci/workflows/_build_test_push.yml +0 -12
  407. data/lib/roro/stacks/stories_v1/templates/rails/Dockerfile.greenfield.tt +0 -51
  408. data/lib/roro/stacks/stories_v1/templates/rails/config/database.mysql.yml +0 -19
  409. data/lib/roro/stacks/stories_v1/templates/rails/database/with_mysql/_service.yml +0 -10
  410. data/lib/roro/stacks/stories_v1/templates/rails/database/with_postgresql/_service.yml +0 -7
  411. data/lib/roro/stacks/stories_v1/templates/rails/docker-compose.yml.tt +0 -59
  412. data/lib/roro/stacks/stories_v1/templates/rails/dotenv/database.mysql.env.tt +0 -6
  413. data/lib/roro/stacks/stories_v1/templates/rails/dotenv/database.pg.env.tt +0 -4
  414. data/lib/roro/stacks/stories_v1/templates/rails/dotenv/web.env.tt +0 -2
  415. data/lib/roro/stacks/stories_v1/templates/rails/kube.rake.tt +0 -114
  416. data/lib/roro/stacks/stories_v1/templates/rails/roro/containers/app/Dockerfile.tt +0 -34
  417. data/lib/roro/stacks/stories_v1/templates/rails/roro/docker-entrypoint.sh +0 -8
  418. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/certificate.yml.tt +0 -0
  419. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/cluster-issuer.yml.tt +0 -0
  420. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployment.yml.tt +0 -50
  421. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployments/postgres_deploy.yaml +0 -47
  422. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployments/rails_deploy.yaml +0 -62
  423. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployments/redis_deploy.yaml +0 -23
  424. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/deployments/sidekiq_deploy.yaml +0 -56
  425. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/ingress.yml.tt +0 -0
  426. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/ingresses/ingress.yaml +0 -13
  427. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/job-migrate.yml.tt +0 -0
  428. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/jobs/setup.yaml +0 -42
  429. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/secret-digital-ocean.yml.tt +0 -4
  430. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/service.yml.tt +0 -10
  431. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/services/postgres_svc.yaml +0 -13
  432. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/services/rails_svc.yaml +0 -13
  433. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/services/redis_svc.yaml +0 -13
  434. data/lib/roro/stacks/stories_v1/templates/rails/roro/kube/volumes/postgres_volumes.yaml +0 -25
  435. data/lib/roro/stacks/stories_v1/templates/roro/containers/database/env/.keep +0 -0
  436. data/lib/roro/stacks/stories_v1/templates/roro/containers/database/scripts/.keep +0 -0
  437. data/lib/roro/stacks/stories_v1/templates/roro/env/.keep +0 -0
  438. data/lib/roro/stacks/stories_v1/templates/roro/keys/.keep +0 -0
  439. data/lib/roro/stacks/stories_v1/templates/roro/scripts/.keep +0 -0
  440. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base/bundler.sh +0 -22
  441. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base/git.sh +0 -21
  442. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base/rvm.sh +0 -38
  443. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base/utilities.sh +0 -53
  444. data/lib/roro/stacks/stories_v1/templates/roro/scripts/base.sh +0 -6
  445. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize/clone_idea.sh +0 -14
  446. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize/clone_repos.sh +0 -33
  447. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize/install_correct_bundler.sh +0 -21
  448. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize/install_rubies.sh +0 -6
  449. data/lib/roro/stacks/stories_v1/templates/roro/scripts/initialize.sh +0 -18
  450. data/lib/roro/stacks/stories_v1/templates/roro/scripts/roro.sh +0 -15
  451. data/lib/roro/stacks/stories_v1/templates/roro/scripts/source.sh +0 -28
  452. data/lib/roro/stacks/stories_v1/templates/roro/scripts/utility/bundle_all.sh +0 -12
  453. data/lib/roro/stacks/stories_v1/templates/roro/scripts/utility/git_pull_all.sh +0 -15
  454. data/lib/roro/stacks/stories_v1/templates/roro/scripts/utility/rvm_install_all.sh +0 -12
  455. data/lib/roro/stacks/stories_v1/templates/roro/scripts/utility/yarn_install_all.sh +0 -10
  456. data/lib/roro/stacks/stories_v1/templates/ruby_gem/.circleci/.keep +0 -0
  457. data/lib/roro/stacks/stories_v1/templates/ruby_gem/.circleci/config.yml.tt +0 -16
  458. data/lib/roro/stacks/stories_v1/templates/ruby_gem/.circleci/jobs/_test.yml +0 -4
  459. data/lib/roro/stacks/stories_v1/templates/ruby_gem/.circleci/setup-gem-credentials.sh +0 -3
  460. data/lib/roro/stacks/stories_v1/templates/ruby_gem/docker-compose.yml +0 -15
  461. data/lib/roro/stacks/stories_v1/templates/ruby_gem/roro/containers/.keep +0 -0
  462. data/lib/roro/stacks/stories_v1/templates/ruby_gem/roro/containers/ruby_image/Dockerfile.tt +0 -16
  463. data/lib/roro/stacks/stories_v1/templates/ruby_gem/roro/containers/ruby_image/ci.env.tt +0 -1
  464. data/lib/roro/stacks/stories_v1/templates/ruby_gem/roro/keys/.keep +0 -0
  465. data/mise/containers/ruby_gem/Dockerfile-app +0 -51
  466. data/mise/containers/ruby_gem/Dockerfile-ruby_gem +0 -16
  467. /data/{.circleci → lib/roro/stacks/unstoppable_developer_styles/okonomi/languages/php/adventures/laravel}/.keep +0 -0
  468. /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
  469. /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
  470. /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
  471. /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
  472. /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
  473. /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
  474. /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
  475. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/templates/stage_one → unstoppable_developer_styles/okonomi/languages/python/frameworks/django/databases/postgres/templates/manifest}/.keep +0 -0
  476. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/test → unstoppable_developer_styles/okonomi/languages/python/frameworks/django/test/2/dummy}/.keep +0 -0
  477. /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
  478. /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
  479. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/test/stage_one → unstoppable_developer_styles/okonomi/languages/python/templates/manifest}/.keep +0 -0
  480. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/stories/roll_your_own/templates/stage_one/%interpolated_stack_path%/test/stage_one/stage_dummy → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/schedulers/resque/templates/manifest}/.keep +0 -0
  481. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/okonomi/stories/roll_your_own/test/stage_one/dummy → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/schedulers/sidekiq/templates/manifest}/.keep +0 -0
  482. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1}/templates/stage_one/.keep +0 -0
  483. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/test → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/0/dummy}/.keep +0 -0
  484. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/test/stage_one → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_6_1/test/2/dummy}/.keep +0 -0
  485. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories/wordpress/test/stage_one/stage_dummy → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/templates/partials}/.keep +0 -0
  486. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/django/test/stage_one/dummy → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/templates/stage_one}/.keep +0 -0
  487. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/django/test/stage_two → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/2}/dummy/.keep +0 -0
  488. /data/lib/roro/stacks/{library/roro → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/3/dummy}/.keep +0 -0
  489. /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
  490. /data/lib/roro/stacks/{library/roro/plots/node → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/4/dummy}/.keep +0 -0
  491. /data/lib/roro/stacks/{library/roro/plots/php → unstoppable_developer_styles/okonomi/languages/ruby/frameworks/rails/versions/rails_7_0/test/5/dummy}/.keep +0 -0
  492. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories → unstoppable_developer_styles/omakase/frameworks}/rails/rails.yml +0 -0
  493. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_one/Dockerfile.tt +0 -0
  494. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/omakase/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_one/Gemfile.lock.tt +0 -0
  495. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_one/Gemfile.tt +0 -0
  496. /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
  497. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_one/entrypoint.sh +0 -0
  498. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/fatsufodo/stories → unstoppable_developer_styles/omakase/frameworks}/rails/templates/stage_two/database.yml.tt +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}/.env +0 -0
  500. /data/lib/roro/stacks/{library/roro/plots/python/plots/django → unstoppable_developer_styles/omakase/frameworks/wordpress/templates/manifest}/.keep +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}/LICENSE +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}/README.md +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}/build.sh +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}/config/nginx/cfg/nginx-custom-configs.conf +0 -0
  505. /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
  506. /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
  507. /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
  508. /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
  509. /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
  510. /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
  511. /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
  512. /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
  513. /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
  514. /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
  515. /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
  516. /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
  517. /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
  518. /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
  519. /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
  520. /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
  521. /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
  522. /data/lib/roro/stacks/{library/roro/plots/ruby/plots/rails/databases → unstoppable_developer_styles/omakase/frameworks/wordpress/test}/.keep +0 -0
  523. /data/lib/roro/stacks/{library/roro/plots/ruby/plots/rails/plots/rails/templates → unstoppable_developer_styles/omakase/frameworks/wordpress/test/0/dummy}/.keep +0 -0
  524. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles → unstoppable_developer_styles}/omakase/omakase.yml +0 -0
  525. /data/lib/roro/stacks/{catalog/unstoppable/developer_styles/sashimi/stories/rails/templates/stage_one/Gemfile.lock.tt → unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/templates/stage_one/.gitignore} +0 -0
  526. /data/lib/roro/stacks/{library/roro/plots/ruby/plots/rails/plots/rails_react/templates → unstoppable_developer_styles/sashimi/devops/ci_styles/circleci/test/0/dummy}/.keep +0 -0
  527. /data/lib/roro/stacks/{library/roro/plots/ruby/plots/rails/plots/rails_vue/templates → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/templates/stage_one}/.keep +0 -0
  528. /data/lib/roro/stacks/{library/roro/plots/ruby/plots/rails/templates → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/test}/.keep +0 -0
  529. /data/lib/roro/stacks/{stories_v1/templates/rails/.circleci → unstoppable_developer_styles/sashimi/frameworks/kubernetes/stories/ingress/stories/nginx/stories/cert_manager/test/0/dummy}/.keep +0 -0
  530. /data/lib/roro/stacks/{stories_v1/templates/rails → unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one}/.keep +0 -0
  531. /data/lib/roro/stacks/{stories_v1/templates/rails/database/with_postgresql → unstoppable_developer_styles/sashimi/frameworks/rails/templates/stage_one/k8s}/.keep +0 -0
  532. /data/lib/roro/stacks/{stories_v1/templates/rails/dotenv → unstoppable_developer_styles/sashimi/frameworks/rails/test}/.keep +0 -0
  533. /data/lib/roro/stacks/{stories_v1/templates/rails/roro → unstoppable_developer_styles/sashimi/frameworks/rails/test/0/dummy}/.keep +0 -0
  534. /data/lib/roro/{stacks/stories_v1/templates/rails/roro/containers → templates/adventure}/.keep +0 -0
  535. /data/lib/roro/{stacks/stories_v1/templates/rails/roro/containers/app → templates/adventure/templates/manifest}/.keep +0 -0
  536. /data/lib/roro/{stacks/stories_v1/templates/rails/roro/containers/frontend → templates/adventure/test/0/dummy}/.keep +0 -0
  537. /data/lib/roro/{stacks/stories_v1/templates/rails/roro/keys → templates/adventure_test/dummy}/.keep +0 -0
  538. /data/{lib/roro/stacks/stories_v1/templates/rails/roro/kube → mise/env}/.keep +0 -0
  539. /data/{lib/roro/stacks/stories_v1/templates/roro/containers → mise/scripts}/.keep +0 -0
@@ -0,0 +1,31 @@
1
+ preface: some string
2
+
3
+ env:
4
+ base:
5
+ app_name:
6
+ name: Name for your app
7
+ value: 'unstoppable_devops_app'
8
+ DOCKERHUB_ORGANIZATION:
9
+ name: The hub.docker.com organization for your image is often but not always the same as your username.
10
+ value: your-dockerhub-organization
11
+ ci:
12
+ DOCKERHUB_USERNAME:
13
+ name: The username you log into hub.docker.com with
14
+ value: dhusername
15
+ required: true
16
+ DOCKERHUB_PASSWORD:
17
+ name: The password you log into hub.docker.com with
18
+ value: dhpassword
19
+ required: true
20
+
21
+
22
+ actions:
23
+ - directory 'stage_one', '.', @env
24
+ - append_to_file '.gitignore', '/k8s-general/'
25
+ - append_to_file '.gitignore', partial('ignores')
26
+ - |
27
+ generator = Roro::CLI.new
28
+ generator.generate_mise
29
+ generator.generate_environments @env
30
+ generator.generate_keys
31
+
@@ -0,0 +1,9 @@
1
+ ## roro
2
+ *.key
3
+ *.env
4
+ !/lib/roro/stacks/**/*.key
5
+ !/lib/roro/stacks/**/*.env
6
+ !test/**/*.key
7
+ !test/**/*.env
8
+
9
+ process.yml
@@ -0,0 +1,45 @@
1
+ version: 2.1
2
+ jobs:
3
+ build:
4
+ docker:
5
+ - image: cimg/ruby:2.7
6
+ environment:
7
+ IMAGE_NAME: <%= @env[:base][:DOCKERHUB_ORGANIZATION][:value] %>/<%= @env[:base][:app_name][:value] %>
8
+ working_directory: ~/app
9
+ steps:
10
+ - checkout
11
+ - setup_remote_docker
12
+ - run:
13
+ name: Build Docker image
14
+ command: |
15
+ docker build -t $IMAGE_NAME:latest .
16
+ - run:
17
+ name: Push Docker Image
18
+ command: |
19
+ gem install roro
20
+ roro generate:exposed ci
21
+ source mise/env/ci.env
22
+ echo "$DOCKERHUB_PASSWORD" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin
23
+ docker tag $IMAGE_NAME:latest $IMAGE_NAME:$CIRCLE_SHA1
24
+ docker push $IMAGE_NAME:latest
25
+ docker push $IMAGE_NAME:$CIRCLE_SHA1
26
+ - run:
27
+ name: Install envsubst
28
+ command: |
29
+ sudo apt-get update && sudo apt-get -y install gettext-base
30
+ - run:
31
+ name: Install kubectl
32
+ command: |
33
+ curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
34
+ chmod u+x ./kubectl
35
+ - run:
36
+ name: Deploy Code
37
+ command: ./scripts/ci-deploy.sh
38
+ workflows:
39
+ version: 2
40
+ build-master:
41
+ jobs:
42
+ - build:
43
+ filters:
44
+ branches:
45
+ only: master
@@ -0,0 +1,3 @@
1
+ FROM nginx:1.14
2
+
3
+ COPY index.html /usr/share/nginx/html/index.html
@@ -0,0 +1,7 @@
1
+ <!DOCTYPE html>
2
+ <title>DigitalOcean</title>
3
+ <body>
4
+ Kubernetes Sample Application
5
+
6
+ getsome
7
+ </body>
@@ -0,0 +1,23 @@
1
+ apiVersion: apps/v1
2
+ kind: Deployment
3
+ metadata:
4
+ name: <%= @env[:base][:app_name][:value] %>
5
+ namespace: default
6
+ labels:
7
+ app: <%= @env[:base][:app_name][:value] %>
8
+ spec:
9
+ replicas: 1
10
+ selector:
11
+ matchLabels:
12
+ app: <%= @env[:base][:app_name][:value] %>
13
+ template:
14
+ metadata:
15
+ labels:
16
+ app: <%= @env[:base][:app_name][:value] %>
17
+ spec:
18
+ containers:
19
+ - name: <%= @env[:base][:app_name][:value] %>
20
+ image: <%= @env[:base][:DOCKERHUB_ORGANIZATION][:value] %>/<%= @env[:base][:app_name][:value] %>:$COMMIT_SHA1
21
+ ports:
22
+ - containerPort: 80
23
+ name: http
@@ -0,0 +1,15 @@
1
+ apiVersion: v1
2
+ kind: Service
3
+ metadata:
4
+ name: <%= @env[:base][:app_name][:value] %>
5
+ namespace: default
6
+ labels:
7
+ app: <%= @env[:base][:app_name][:value] %>
8
+ spec:
9
+ type: ClusterIP
10
+ ports:
11
+ - port: 80
12
+ targetPort: http
13
+ name: http
14
+ selector:
15
+ app: <%= @env[:base][:app_name][:value] %>
@@ -0,0 +1,13 @@
1
+ kind: RoleBinding
2
+ apiVersion: rbac.authorization.k8s.io/v1
3
+ metadata:
4
+ name: cicd
5
+ namespace: default
6
+ subjects:
7
+ - kind: ServiceAccount
8
+ name: cicd
9
+ namespace: default
10
+ roleRef:
11
+ kind: Role
12
+ name: cicd
13
+ apiGroup: rbac.authorization.k8s.io
@@ -0,0 +1,9 @@
1
+ kind: Role
2
+ apiVersion: rbac.authorization.k8s.io/v1
3
+ metadata:
4
+ name: cicd
5
+ namespace: default
6
+ rules:
7
+ - apiGroups: ["", "apps", "batch", "extensions"]
8
+ resources: ["deployments", "services", "replicasets", "pods", "jobs", "cronjobs"]
9
+ verbs: ["*"]
@@ -0,0 +1,5 @@
1
+ apiVersion: v1
2
+ kind: ServiceAccount
3
+ metadata:
4
+ name: cicd
5
+ namespace: default
@@ -0,0 +1,23 @@
1
+ #! /bin/bash
2
+ # exit script when any command ran here returns with non-zero exit code
3
+ set -e
4
+
5
+ COMMIT_SHA1=$CIRCLE_SHA1
6
+
7
+ # We must export it so it's available for envsubst
8
+ export COMMIT_SHA1=$COMMIT_SHA1
9
+
10
+ # since the only way for envsubst to work on files is using input/output redirection,
11
+ # it's not possible to do in-place substitution, so we need to save the output to another file
12
+ # and overwrite the original with that one.
13
+ envsubst <./k8s/app-deployment.yml >./k8s/app-deployment.yml.out
14
+ mv ./k8s/app-deployment.yml.out ./k8s/app-deployment.yml
15
+
16
+ echo "$KUBERNETES_CLUSTER_CERTIFICATE" | base64 --decode > cert.crt
17
+
18
+ ./kubectl \
19
+ --kubeconfig=/dev/null \
20
+ --server=$KUBERNETES_SERVER \
21
+ --certificate-authority=cert.crt \
22
+ --token=$KUBERNETES_TOKEN \
23
+ apply -f ./k8s/
@@ -0,0 +1,57 @@
1
+ require 'test_helper'
2
+
3
+ describe 'adventure::circleci::0 rails' do
4
+ Given { skip }
5
+ Given(:workbench) {}
6
+ Given { @rollon_loud = false }
7
+ Given { @rollon_dummies = false }
8
+ Given { rollon(__dir__) }
9
+
10
+ describe 'must generate a' do
11
+ Given(:app_name) { 'unstoppable_devops' }
12
+ Given(:org_name) { 'your-dockerhub-organization' }
13
+ Given(:image) { "#{org_name}/#{app_name}" }
14
+
15
+ describe 'scripts directory with ci-deploy.sh' do
16
+ Then { assert_file './scripts/ci-deploy.sh', %r{k8s/app-deployment.yml} }
17
+ end
18
+
19
+ describe '.circleci directory with config.yml' do
20
+ Then { assert_file './.circleci/config.yml', /IMAGE_NAME: #{image}/ }
21
+ end
22
+
23
+ describe 'k8s directory with' do
24
+ describe 'app-deployment.yml' do
25
+ Then { assert_file './k8s/app-deployment.yml', /image: #{image}/ }
26
+ end
27
+
28
+ describe 'app-service.yml' do
29
+ Then { assert_file './k8s/app-service.yml', /app: #{app_name}/ }
30
+ And { assert_file './k8s/app-service.yml', /name: #{app_name}/ }
31
+ end
32
+ end
33
+
34
+ describe 'kube-general folder with' do
35
+ describe 'cicd-service-account.yml' do
36
+ Given(:kind) { 'kind: ServiceAccount' }
37
+ Then { assert_file 'k8s-general/cicd-service-account.yml', /#{kind}/ }
38
+ end
39
+
40
+ describe 'cicd-service-account.yml' do
41
+ Given(:kind) { 'kind: ServiceAccount' }
42
+ Then { assert_file 'k8s-general/cicd-service-account.yml', /#{kind}/ }
43
+ end
44
+ end
45
+
46
+ describe '.gitignore' do
47
+ Given(:ignoreds) do
48
+ %w[
49
+ /k8s-general/
50
+ \*.env
51
+ \*.key
52
+ ]
53
+ end
54
+ Then { ignoreds.each { |i| assert_file '.gitignore', /#{i}/ } }
55
+ end
56
+ end
57
+ end
@@ -0,0 +1 @@
1
+ preface: Adventures in dev ops. Add ci/cd.
@@ -0,0 +1 @@
1
+ preface: Kubernetes, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications.
@@ -0,0 +1,2 @@
1
+ preface: An ingress is an API object that manages external access to the services in a cluster, typically HTTP. It may provide load balancing, SSL termination and name-based virtual hosting.
2
+
@@ -0,0 +1 @@
1
+ preface: It is built around the Kubernetes Ingress resource, using a ConfigMap to store the NGINX configuration.
@@ -0,0 +1,32 @@
1
+ preface: some string
2
+
3
+ env:
4
+ base:
5
+ do_cluster_name:
6
+ name: Digital Ocean Kubernetes cluster name
7
+ value: k8s-1-21-5-do-0-nyc1-1635194329871
8
+ help: https://docs.digitalocean.com/products/kubernetes/how-to/connect-to-cluster/
9
+ domain_name:
10
+ name: Domain name people will use to find your app
11
+ value: bierstiefel.com
12
+ do_cluster_id:
13
+ name:
14
+ Digital Ocean Kubernetes cluster id
15
+ value: df160ada-6534-44db-bb77-282dd7b812ad
16
+ help: https://docs.digitalocean.com/reference/doctl/reference/kubernetes/cluster/get/
17
+ cert_email:
18
+ name: Email address to put on your Let's Encrypt certificate
19
+ value: localpart@domain.tld
20
+ required: true
21
+ actions:
22
+ - directory 'stage_one', '.', @env
23
+ - run "doctl kubernetes cluster kubeconfig save \"#{@env[:base][:do_cluster_name][:value]}\""
24
+ - run "kubectl config current-context"
25
+ - run "kubectl config get-contexts"
26
+ - run "kubectl apply -f echo1.yaml"
27
+ - run "kubectl apply -f echo2.yaml"
28
+ - run "kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.34.1/deploy/static/provider/do/deploy.yaml"
29
+ - run "kubectl get svc"
30
+ # - run "kubectl get pods -n ingress-nginx -l app.kubernetes.io/name=ingress-nginx"
31
+ # - run "doctl compute domain records list \"#{@env[:base][:do_cluster_name][:value]}\""
32
+ # - run "kubectl apply -f echo_ingress.yaml"
@@ -0,0 +1,25 @@
1
+ apiVersion: networking.k8s.io/v1beta1
2
+ kind: Ingress
3
+ metadata:
4
+ name: echo-ingress
5
+ annotations:
6
+ cert-manager.io/cluster-issuer: "letsencrypt-staging"
7
+ spec:
8
+ tls:
9
+ - hosts:
10
+ - echo1.<%= @env[:base][:domain_name][:value] %>
11
+ - echo2.<%= @env[:base][:domain_name][:value] %>
12
+ secretName: echo-tls
13
+ rules:
14
+ - host: echo1.<%= @env[:base][:domain_name][:value] %>
15
+ http:
16
+ paths:
17
+ - backend:
18
+ serviceName: echo1
19
+ servicePort: 80
20
+ - host: echo2.example.com
21
+ http:
22
+ paths:
23
+ - backend:
24
+ serviceName: echo2
25
+ servicePort: 80
@@ -0,0 +1,25 @@
1
+ apiVersion: networking.k8s.io/v1beta1
2
+ kind: Ingress
3
+ metadata:
4
+ name: echo-ingress
5
+ annotations:
6
+ cert-manager.io/cluster-issuer: "letsencrypt-prod"
7
+ spec:
8
+ tls:
9
+ - hosts:
10
+ - echo1.<%= @env[:base][:domain_name][:value] %>
11
+ - echo2.<%= @env[:base][:domain_name][:value] %>
12
+ secretName: echo-tls
13
+ rules:
14
+ - host: echo1.<%= @env[:base][:domain_name][:value] %>
15
+ http:
16
+ paths:
17
+ - backend:
18
+ serviceName: echo1
19
+ servicePort: 80
20
+ - host: echo2.example.com
21
+ http:
22
+ paths:
23
+ - backend:
24
+ serviceName: echo2
25
+ servicePort: 80
@@ -0,0 +1,31 @@
1
+ apiVersion: v1
2
+ kind: Service
3
+ metadata:
4
+ annotations:
5
+ service.beta.kubernetes.io/do-loadbalancer-enable-proxy-protocol: 'true'
6
+ service.beta.kubernetes.io/do-loadbalancer-hostname: "workaround.bierstiefel.com"
7
+ labels:
8
+ helm.sh/chart: ingress-nginx-2.11.1
9
+ app.kubernetes.io/name: ingress-nginx
10
+ app.kubernetes.io/instance: ingress-nginx
11
+ app.kubernetes.io/version: 0.34.1
12
+ app.kubernetes.io/managed-by: Helm
13
+ app.kubernetes.io/component: controller
14
+ name: ingress-nginx-controller
15
+ namespace: ingress-nginx
16
+ spec:
17
+ type: LoadBalancer
18
+ externalTrafficPolicy: Local
19
+ ports:
20
+ - name: http
21
+ port: 80
22
+ protocol: TCP
23
+ targetPort: http
24
+ - name: https
25
+ port: 443
26
+ protocol: TCP
27
+ targetPort: https
28
+ selector:
29
+ app.kubernetes.io/name: ingress-nginx
30
+ app.kubernetes.io/instance: ingress-nginx
31
+ app.kubernetes.io/component: controller
@@ -0,0 +1,32 @@
1
+ apiVersion: v1
2
+ kind: Service
3
+ metadata:
4
+ name: echo1
5
+ spec:
6
+ ports:
7
+ - port: 80
8
+ targetPort: 5678
9
+ selector:
10
+ app: echo1
11
+ ---
12
+ apiVersion: apps/v1
13
+ kind: Deployment
14
+ metadata:
15
+ name: echo1
16
+ spec:
17
+ selector:
18
+ matchLabels:
19
+ app: echo1
20
+ replicas: 2
21
+ template:
22
+ metadata:
23
+ labels:
24
+ app: echo1
25
+ spec:
26
+ containers:
27
+ - name: echo1
28
+ image: hashicorp/http-echo
29
+ args:
30
+ - "-text=echo1"
31
+ ports:
32
+ - containerPort: 5678
@@ -0,0 +1,32 @@
1
+ apiVersion: v1
2
+ kind: Service
3
+ metadata:
4
+ name: echo2
5
+ spec:
6
+ ports:
7
+ - port: 80
8
+ targetPort: 5678
9
+ selector:
10
+ app: echo2
11
+ ---
12
+ apiVersion: apps/v1
13
+ kind: Deployment
14
+ metadata:
15
+ name: echo2
16
+ spec:
17
+ selector:
18
+ matchLabels:
19
+ app: echo2
20
+ replicas: 1
21
+ template:
22
+ metadata:
23
+ labels:
24
+ app: echo2
25
+ spec:
26
+ containers:
27
+ - name: echo2
28
+ image: hashicorp/http-echo
29
+ args:
30
+ - "-text=echo2"
31
+ ports:
32
+ - containerPort: 5678
@@ -0,0 +1,18 @@
1
+ apiVersion: networking.k8s.io/v1
2
+ kind: Ingress
3
+ metadata:
4
+ name: echo-ingress
5
+ spec:
6
+ rules:
7
+ - host: echo1.<%= @env[:base][:domain_name][:value] %>
8
+ http:
9
+ paths:
10
+ - backend:
11
+ serviceName: echo1
12
+ servicePort: 80
13
+ - host: echo2.<%= @env[:base][:domain_name][:value] %>
14
+ http:
15
+ paths:
16
+ - backend:
17
+ serviceName: echo2
18
+ servicePort: 80
@@ -0,0 +1,19 @@
1
+ apiVersion: cert-manager.io/v1alpha2
2
+ kind: ClusterIssuer
3
+ metadata:
4
+ name: letsencrypt-prod
5
+ namespace: cert-manager
6
+ spec:
7
+ acme:
8
+ # The ACME server URL
9
+ server: https://acme-v02.api.letsencrypt.org/directory
10
+ # Email address used for ACME registration
11
+ email: <%= @env[:base][:cert_email][:value] %>
12
+ # Name of a secret used to store the ACME account private key
13
+ privateKeySecretRef:
14
+ name: letsencrypt-prod
15
+ # Enable the HTTP-01 challenge provider
16
+ solvers:
17
+ - http01:
18
+ ingress:
19
+ class: nginx
@@ -0,0 +1,19 @@
1
+ apiVersion: cert-manager.io/v1alpha2
2
+ kind: ClusterIssuer
3
+ metadata:
4
+ name: letsencrypt-staging
5
+ namespace: cert-manager
6
+ spec:
7
+ acme:
8
+ # The ACME server URL
9
+ server: https://acme-staging-v02.api.letsencrypt.org/directory
10
+ # Email address used for ACME registration
11
+ email: <%= @env[:base][:cert_email][:value] %>
12
+ # Name of a secret used to store the ACME account private key
13
+ privateKeySecretRef:
14
+ name: letsencrypt-staging
15
+ # Enable the HTTP-01 challenge provider
16
+ solvers:
17
+ - http01:
18
+ ingress:
19
+ class: nginx
@@ -0,0 +1,15 @@
1
+ require 'test_helper'
2
+
3
+ describe 'adventure::cert_manager::0 circleci' do
4
+ Given { skip }
5
+ Given(:workbench) { }
6
+ Given { @rollon_loud = false }
7
+ Given { @rollon_dummies = false }
8
+ Given { rollon(__dir__) }
9
+
10
+ describe 'k8s manifests' do
11
+ Then { assert_file "k8s/app-deployment.yaml", /image: handsomefencer\/rails-kubernetes/ }
12
+ # And { assert_file "k8s/database-deployment.yaml", /name: database-secret/ }
13
+ # And { assert_file "k8s/secret.yaml", /DATABASE_NAME: cG9zdGdyZXM=/ }
14
+ end
15
+ end
@@ -0,0 +1,51 @@
1
+ preface: some string
2
+
3
+ depends_on:
4
+ - doctl
5
+
6
+ env:
7
+ base:
8
+ do_cluster_id:
9
+ name: Digital Ocean Kubernetes cluster id
10
+ value: 0e23750a-05a4-49f0-8fad-42a201995afc
11
+ help: https://docs.digitalocean.com/reference/doctl/reference/kubernetes/cluster/get/
12
+ do_cluster_name:
13
+ name: Digital Ocean Kubernetes cluster name
14
+ value: k8s-1-21-5-do-0-sfo3-1635359659910
15
+ help: https://docs.digitalocean.com/products/kubernetes/how-to/connect-to-cluster/
16
+ domain_name:
17
+ name: Domain name people will use to find your app
18
+ value: bierstiefel.com
19
+ docker_hub_username:
20
+ name: The username you log into hub.docker.com with
21
+ value: dhusername
22
+ required: true
23
+ docker_hub_password:
24
+ name: The password you log into hub.docker.com with
25
+ value: dhpassword
26
+ required: true
27
+ docker_hub_organization:
28
+ name: The hub.docker.com organization for your image is often but not always the same as your username.
29
+ value: handsomefencer
30
+ app_name:
31
+ name: Name for your app
32
+ value: rails-kubernetes
33
+ DATABASE_NAME:
34
+ name: Database name
35
+ value: postgres
36
+ DATABASE_PASSWORD:
37
+ name: Database password
38
+ value: postgres
39
+ DATABASE_USER:
40
+ name: Database username
41
+ value: postgres
42
+
43
+ actions:
44
+ - directory 'stage_one', '.', @env
45
+ - run "doctl kubernetes cluster kubeconfig save \"#{@env[:base][:do_cluster_id][:value]}\""
46
+ - |
47
+ inside('k8s') do
48
+ run "kubectl create -f ./ --validate=true"
49
+ run "kubectl get pods -l io.kompose.service=app"
50
+ end
51
+ - run "kubectl exec $(kubectl get pods -o=name -l io.kompose.service=app) -- rake db:migrate"
@@ -0,0 +1,41 @@
1
+ version: '3'
2
+
3
+ services:
4
+ app:
5
+ image: <%= @env[:base][:docker_hub_organization][:value] %>/<%= @env[:base][:app_name][:value] %>
6
+ depends_on:
7
+ - database
8
+ - redis
9
+ ports:
10
+ - "3000:3000"
11
+ env_file: .env
12
+ environment:
13
+ RAILS_ENV: development
14
+
15
+ database:
16
+ image: postgres:12.1
17
+ volumes:
18
+ - db_data:/var/lib/postgresql/data
19
+ ports:
20
+ - "5432:5432"
21
+ environment:
22
+ PGDATA: /var/lib/postgresql/data/pgdata
23
+
24
+ redis:
25
+ image: redis:5.0.7
26
+ ports:
27
+ - "6379:6379"
28
+
29
+ sidekiq:
30
+ image: <%= @env[:base][:docker_hub_organization][:value] %>/<%= @env[:base][:app_name][:value] %>
31
+ depends_on:
32
+ - app
33
+ - database
34
+ - redis
35
+ env_file: .env
36
+ environment:
37
+ RAILS_ENV: development
38
+ entrypoint: ./entrypoints/sidekiq-entrypoint.sh
39
+
40
+ volumes:
41
+ db_data: