roro 0.3.9 → 0.3.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. checksums.yaml +5 -5
  2. data/{lib/roro/cli/rollon/stories/rails → .circleci}/.keep +0 -0
  3. data/.circleci/config.yml +92 -0
  4. data/{lib/roro/cli/templates/ruby_gem → .circleci}/setup-gem-credentials.sh +1 -1
  5. data/.gitignore +2 -2
  6. data/Guardfile +7 -7
  7. data/docker-compose.yml +15 -0
  8. data/lib/roro.rb +1 -2
  9. data/lib/roro/cli.rb +12 -76
  10. data/lib/roro/cli/base/check_dependencies.rb +0 -1
  11. data/lib/roro/cli/base/utilities.rb +0 -1
  12. data/lib/roro/cli/generate/config.rb +6 -8
  13. data/lib/roro/cli/generate/exposed.rb +14 -0
  14. data/lib/roro/cli/generate/{generate_keys.rb → keys.rb} +22 -0
  15. data/lib/roro/cli/generate/obfuscated.rb +17 -0
  16. data/lib/roro/cli/greenfield/rails.rb +36 -0
  17. data/lib/roro/cli/rollon.rb +2 -66
  18. data/lib/roro/cli/rollon/rails.rb +47 -0
  19. data/lib/roro/cli/rollon/{stories/rails → rails}/database.rb +3 -6
  20. data/lib/roro/cli/rollon/{stories/rails → rails}/database/with_mysql.rb +2 -2
  21. data/lib/roro/cli/rollon/{stories/rails → rails}/database/with_postgresql.rb +2 -2
  22. data/lib/roro/cli/rollon/ruby_gem.rb +1 -0
  23. data/lib/roro/cli/rollon/ruby_gem/with_ci_cd.rb +45 -0
  24. data/lib/roro/cli/rollon/stories.rb +2 -2
  25. data/lib/roro/cli/templates/base/.circleci/_defaults.yml +17 -0
  26. data/lib/roro/cli/templates/base/.circleci/_workflow.yml +2 -0
  27. data/lib/roro/cli/templates/base/.circleci/config.job-example.yml +33 -0
  28. data/lib/roro/cli/templates/base/.circleci/jobs/_build.yml +4 -0
  29. data/lib/roro/cli/templates/base/.circleci/jobs/_release.yml +12 -0
  30. data/lib/roro/cli/templates/base/.circleci/workflows/_build_release.yml +10 -0
  31. data/lib/roro/cli/templates/base/.dockerignore +2 -2
  32. data/lib/roro/cli/templates/base/dotenv +1 -0
  33. data/lib/roro/cli/templates/base/{.keep → jumpstart/.keep} +0 -0
  34. data/lib/roro/cli/templates/{jumpstart → base/jumpstart}/Dockerfile.tt +0 -0
  35. data/lib/roro/cli/templates/{jumpstart → base/jumpstart}/docker-compose.yml +0 -0
  36. data/lib/roro/cli/templates/{jumpstart → base/jumpstart}/docker-entrypoint.sh +0 -0
  37. data/lib/roro/cli/templates/{livereload → base/livereload}/hosts.example +0 -0
  38. data/lib/roro/cli/templates/{jumpstart → base/roro}/.keep +0 -0
  39. data/lib/roro/cli/templates/{roro → base/roro/roro}/.keep +0 -0
  40. data/lib/roro/cli/templates/{roro/roro → base/roro/roro/containers}/.keep +0 -0
  41. data/lib/roro/cli/templates/{roro/roro/containers → base/roro/roro/containers/app}/.keep +0 -0
  42. data/lib/roro/cli/templates/{roro/roro/containers/app → base/roro/roro/containers/frontend}/.keep +0 -0
  43. data/lib/roro/cli/templates/{roro → base/roro}/roro/docker-entrypoint.sh.tt +0 -0
  44. data/lib/roro/cli/templates/{roro/roro/containers/frontend → rails/.circleci}/.keep +0 -0
  45. data/lib/roro/cli/templates/rails/.circleci/_aliases.yml +8 -0
  46. data/lib/roro/cli/templates/rails/.circleci/config.yml.tt +13 -0
  47. data/lib/roro/cli/templates/rails/.circleci/jobs/_build.yml +16 -0
  48. data/lib/roro/cli/templates/rails/.circleci/jobs/_push.yml +23 -0
  49. data/lib/roro/cli/templates/rails/.circleci/jobs/_test.yml +13 -0
  50. data/lib/roro/cli/templates/rails/.circleci/setup-gem-credentials.sh +3 -0
  51. data/lib/roro/cli/templates/rails/.circleci/workflows/_build_test_push.yml +9 -0
  52. data/lib/roro/cli/{rollon/stories/database.rb → templates/rails/.keep} +0 -0
  53. data/lib/roro/cli/templates/{greenfield/Dockerfile.tt → rails/Dockerfile.greenfield.tt} +11 -7
  54. data/lib/roro/cli/templates/{base → rails}/config/database.mysql.yml +0 -0
  55. data/lib/roro/cli/templates/{base → rails}/config/database.pg.yml +0 -0
  56. data/lib/roro/cli/templates/rails/database/with_mysql/_service.yml +10 -0
  57. data/lib/roro/cli/templates/rails/database/with_postgresql/.keep +0 -0
  58. data/lib/roro/cli/templates/rails/database/with_postgresql/_service.yml +7 -0
  59. data/lib/roro/cli/templates/{roro → rails}/docker-compose.yml.tt +7 -8
  60. data/lib/roro/cli/templates/rails/dotenv/.keep +0 -0
  61. data/lib/roro/cli/templates/rails/dotenv/database.mysql.env.tt +3 -0
  62. data/lib/roro/cli/templates/rails/dotenv/database.pg.env.tt +4 -0
  63. data/lib/roro/cli/templates/rails/dotenv/web.env.tt +2 -0
  64. data/lib/roro/cli/templates/rails/roro/.keep +0 -0
  65. data/lib/roro/cli/templates/rails/roro/containers/.keep +0 -0
  66. data/lib/roro/cli/templates/rails/roro/containers/app/.keep +0 -0
  67. data/lib/roro/cli/templates/{base → rails/roro/containers/app}/Dockerfile.tt +16 -10
  68. data/lib/roro/cli/templates/rails/roro/containers/frontend/.keep +0 -0
  69. data/lib/roro/cli/templates/rails/roro/docker-entrypoint.sh.tt +8 -0
  70. data/lib/roro/cli/templates/rails/roro/roro/.keep +0 -0
  71. data/lib/roro/cli/templates/rails/roro/roro/containers/.keep +0 -0
  72. data/lib/roro/cli/templates/rails/roro/roro/containers/app/.keep +0 -0
  73. data/lib/roro/cli/templates/rails/roro/roro/containers/frontend/.keep +0 -0
  74. data/lib/roro/cli/templates/rails/roro/roro/docker-entrypoint.sh.tt +8 -0
  75. data/lib/roro/cli/templates/ruby_gem/.circleci/.keep +0 -0
  76. data/lib/roro/cli/templates/ruby_gem/.circleci/config.yml.tt +16 -0
  77. data/lib/roro/cli/templates/ruby_gem/.circleci/setup-gem-credentials.sh +3 -0
  78. data/lib/roro/cli/templates/ruby_gem/docker-compose.yml +6 -2
  79. data/lib/roro/cli/templates/ruby_gem/roro/containers/ruby_image/Dockerfile.tt +7 -7
  80. data/lib/roro/cli/templates/ruby_gem/roro/containers/ruby_image/ci.env.tt +1 -0
  81. data/lib/roro/cli/templates/stories/ruby_gem/with_ci_cd/_build.yml +11 -0
  82. data/lib/roro/cli/templates/stories/with_mysql/_service.yml +2 -2
  83. data/lib/roro/cli/templates/stories/with_postgresql/_service.yml +2 -2
  84. data/lib/roro/version.rb +1 -1
  85. data/roro.gemspec +10 -11
  86. data/roro/containers/.keep +0 -0
  87. data/roro/containers/ruby_image/Dockerfile +16 -0
  88. data/roro/containers/ruby_image/ci.env.enc +2 -0
  89. data/roro/keys/.keep +0 -0
  90. data/tmp/.keep +0 -0
  91. metadata +132 -147
  92. data/lib/roro/cli/cli.rb +0 -99
  93. data/lib/roro/cli/expose.rb +0 -14
  94. data/lib/roro/cli/greenfield.rb +0 -31
  95. data/lib/roro/cli/obfuscate.rb +0 -19
  96. data/lib/roro/cli/rollon/stories/rails.rb +0 -1
  97. data/lib/roro/cli/rollon/stories/ruby_gem.rb +0 -77
  98. data/lib/roro/cli/rollon/stories/ruby_gem/with_ci_cd.rb +0 -81
  99. data/lib/roro/cli/ruby_gem.rb +0 -67
  100. data/lib/roro/cli/templates/ruby_gem/.circleci/config.yml +0 -17
  101. data/lib/roro/cli/templates/ruby_gem/roro/ci.env.tt +0 -1
  102. data/vendor/cache/actionpack-6.0.3.2.gem +0 -0
  103. data/vendor/cache/actionview-6.0.3.2.gem +0 -0
  104. data/vendor/cache/activesupport-6.0.3.2.gem +0 -0
  105. data/vendor/cache/addressable-2.7.0.gem +0 -0
  106. data/vendor/cache/builder-3.2.4.gem +0 -0
  107. data/vendor/cache/byebug-11.1.3.gem +0 -0
  108. data/vendor/cache/coderay-1.1.3.gem +0 -0
  109. data/vendor/cache/concurrent-ruby-1.1.7.gem +0 -0
  110. data/vendor/cache/crass-1.0.6.gem +0 -0
  111. data/vendor/cache/em-websocket-0.5.1.gem +0 -0
  112. data/vendor/cache/erubi-1.9.0.gem +0 -0
  113. data/vendor/cache/eventmachine-1.2.7.gem +0 -0
  114. data/vendor/cache/ffi-1.13.1.gem +0 -0
  115. data/vendor/cache/formatador-0.2.5.gem +0 -0
  116. data/vendor/cache/gem-release-2.1.1.gem +0 -0
  117. data/vendor/cache/given_core-3.8.0.gem +0 -0
  118. data/vendor/cache/guard-2.16.2.gem +0 -0
  119. data/vendor/cache/guard-compat-1.2.1.gem +0 -0
  120. data/vendor/cache/guard-livereload-2.5.2.gem +0 -0
  121. data/vendor/cache/guard-minitest-2.4.6.gem +0 -0
  122. data/vendor/cache/handsome_fencer-crypto-0.1.6.gem +0 -0
  123. data/vendor/cache/handsome_fencer-test-0.1.1.gem +0 -0
  124. data/vendor/cache/http_parser.rb-0.6.0.gem +0 -0
  125. data/vendor/cache/i18n-1.8.5.gem +0 -0
  126. data/vendor/cache/launchy-2.5.0.gem +0 -0
  127. data/vendor/cache/listen-3.2.1.gem +0 -0
  128. data/vendor/cache/loofah-2.6.0.gem +0 -0
  129. data/vendor/cache/lumberjack-1.2.7.gem +0 -0
  130. data/vendor/cache/method_source-1.0.0.gem +0 -0
  131. data/vendor/cache/mini_portile2-2.4.0.gem +0 -0
  132. data/vendor/cache/minitest-5.14.1.gem +0 -0
  133. data/vendor/cache/minitest-given-3.8.0.gem +0 -0
  134. data/vendor/cache/minitest-matchers_vaccine-1.0.4.gem +0 -0
  135. data/vendor/cache/minitest-rails-6.0.1.gem +0 -0
  136. data/vendor/cache/mocha-1.11.2.gem +0 -0
  137. data/vendor/cache/multi_json-1.15.0.gem +0 -0
  138. data/vendor/cache/nenv-0.3.0.gem +0 -0
  139. data/vendor/cache/net-scp-3.0.0.gem +0 -0
  140. data/vendor/cache/net-ssh-6.1.0.gem +0 -0
  141. data/vendor/cache/nokogiri-1.10.10.gem +0 -0
  142. data/vendor/cache/notiffany-0.1.3.gem +0 -0
  143. data/vendor/cache/os-1.0.0.gem +0 -0
  144. data/vendor/cache/pry-0.13.1.gem +0 -0
  145. data/vendor/cache/public_suffix-4.0.5.gem +0 -0
  146. data/vendor/cache/rack-2.2.3.gem +0 -0
  147. data/vendor/cache/rack-livereload-0.3.17.gem +0 -0
  148. data/vendor/cache/rack-test-1.1.0.gem +0 -0
  149. data/vendor/cache/rails-dom-testing-2.0.3.gem +0 -0
  150. data/vendor/cache/rails-html-sanitizer-1.3.0.gem +0 -0
  151. data/vendor/cache/railties-6.0.3.2.gem +0 -0
  152. data/vendor/cache/rake-13.0.1.gem +0 -0
  153. data/vendor/cache/rb-fsevent-0.10.4.gem +0 -0
  154. data/vendor/cache/rb-inotify-0.10.1.gem +0 -0
  155. data/vendor/cache/shellany-0.0.1.gem +0 -0
  156. data/vendor/cache/shoulda-4.0.0.gem +0 -0
  157. data/vendor/cache/shoulda-context-2.0.0.gem +0 -0
  158. data/vendor/cache/shoulda-matchers-4.3.0.gem +0 -0
  159. data/vendor/cache/sorcerer-2.0.1.gem +0 -0
  160. data/vendor/cache/sshkit-1.18.2.gem +0 -0
  161. data/vendor/cache/thor-1.0.1.gem +0 -0
  162. data/vendor/cache/thread_safe-0.3.6.gem +0 -0
  163. data/vendor/cache/tzinfo-1.2.7.gem +0 -0
  164. data/vendor/cache/zeitwerk-2.4.0.gem +0 -0
@@ -15,11 +15,11 @@ services:
15
15
  - "3000:3000"
16
16
  - "4000:4000"
17
17
  volumes:
18
- - app:/usr/src/app
18
+ - .:/usr/src/app
19
19
  - gem_cache:/gems
20
20
  env_file:
21
- - roro/containers/app/development.env
22
- - roro/containers/database/development.env
21
+ - roro/containers/app/${RORO_ENV:-development}.env
22
+ - roro/containers/database/${RORO_ENV:-development}.env
23
23
  environment:
24
24
  - WEBPACKER_DEV_SERVER_HOST=webpack_dev_server
25
25
 
@@ -33,18 +33,18 @@ services:
33
33
  ports:
34
34
  - 3035:3035
35
35
  volumes:
36
- - app:/usr/src/app
36
+ - .:/usr/src/app
37
37
  - gem_cache:/gems
38
38
  env_file:
39
- - roro/containers/app/development.env
40
- - roro/containers/database/development.env
39
+ - roro/containers/app/${RORO_ENV:-development}.env
40
+ - roro/containers/database/${RORO_ENV:-development}.env
41
41
  environment:
42
42
  - WEBPACKER_DEV_SERVER_HOST=0.0.0.0
43
43
 
44
44
  redis:
45
45
  image: redis
46
46
 
47
- <%= yaml_from_template("stories/with_#{config['database_vendor']}/_service.yml") %>
47
+ <%= yaml_from_template("rails/database/with_#{config['database_vendor']}/_service.yml") %>
48
48
 
49
49
  system_tests:
50
50
  image: selenium/standalone-chrome-debug
@@ -57,4 +57,3 @@ services:
57
57
  volumes:
58
58
  db_data:
59
59
  gem_cache:
60
- app:
@@ -0,0 +1,3 @@
1
+ <% config['mysql_env_vars'].each do |k,v| %><%= "\n" + k + "=" + v %><% end %>
2
+ MYSQL_DATABASE=<%= config['main_app_name'] + "_db"%>
3
+ RAILS_ENV=<%= config['rails_env'] %>
@@ -0,0 +1,4 @@
1
+ <% config['postgresql_env_vars'].each do |k,v| %><%= "\n" + k + "=" + v %><% end %>
2
+ POSTGRES_DB=<%= config['main_app_name'] + "_" + config['rails_env'] %>
3
+ RAILS_ENV=<%= config['rails_env'] %>
4
+
@@ -0,0 +1,2 @@
1
+ DATABASE_HOST=database
2
+ RAILS_LOG_TO_STDOUT=true
@@ -58,25 +58,31 @@ VOLUME ${BUNDLE_PATH}
58
58
  ## with slow-building layers that don't change often underneath smaller,
59
59
  ## lighter, qucker oens that might change a lot.
60
60
 
61
- ## Build your big, slow gem layer by first copying your Gemfile && Gemfile.lock:
62
- COPY Gemfile* ./
63
-
64
61
  ## Set your work directory:
65
62
  WORKDIR ${APP_HOME}
66
63
 
64
+ ## You may need to adjust the bundler version based on your app Gemfile.lock's
65
+ ## bundler version:
66
+ RUN gem install bundler:2.1.4
67
+
68
+ ## Set your work directory. After this line you will be running commands in
69
+ ## ${APP_HOME}. COPY instructions will move files from host to ${APP_HOME}:
70
+ WORKDIR ${APP_HOME}
71
+
72
+ ## Build your big, slow gem layer by first copying your Gemfile && Gemfile.lock:
73
+ COPY package.json ./
74
+ COPY Gemfile* ./
75
+
67
76
  ## build the bundle layer, which now only runs if your Gemfile changes:
68
77
  RUN bundle
69
78
 
70
- ## Now build a layer layer with everything in your app that's likely to change
79
+ ## Now build a layer with everything in your app that's likely to change
71
80
  ## frequently. If you make a change to any of these files, only this layer has
72
- ## to rebuild. smaller, lighter layer
81
+ ## to rebuild:
73
82
  COPY . ${APP_HOME}
74
83
 
75
-
76
- COPY roro/docker-entrypoint.sh /usr/bin/docker-entrypoint.sh
77
- RUN chmod +x /usr/bin/docker-entrypoint.sh
78
- ENTRYPOINT ["docker-entrypoint.sh"]
79
-
84
+ ## Now make your entrypoint executable.
85
+ RUN chmod +x roro/docker-entrypoint.sh
80
86
 
81
87
 
82
88
 
@@ -0,0 +1,8 @@
1
+ #!/bin/bash
2
+ set -e
3
+
4
+ # Remove a potentially pre-existing server.pid for Rails.
5
+ rm -f /usr/src/app/tmp/pids/server.pid
6
+
7
+ # Then exec the container's main process (what's set as CMD in the Dockerfile).
8
+ exec "$@"
@@ -0,0 +1,8 @@
1
+ #!/bin/bash
2
+ set -e
3
+
4
+ # Remove a potentially pre-existing server.pid for Rails.
5
+ rm -f /usr/src/app/tmp/pids/server.pid
6
+
7
+ # Then exec the container's main process (what's set as CMD in the Dockerfile).
8
+ exec "$@"
@@ -0,0 +1,16 @@
1
+ <%= yaml_from_template("base/.circleci/_defaults.yml") %>
2
+
3
+ <%= yaml_from_template("base/.circleci/jobs/_build.yml") %>
4
+
5
+ test:
6
+ machine: true
7
+ steps:
8
+ - placeholder
9
+
10
+ <%= yaml_from_template("base/.circleci/jobs/_release.yml") %>
11
+
12
+ <%= yaml_from_template("base/.circleci/_workflow.yml") %>
13
+
14
+ <%= yaml_from_template("base/.circleci/workflows/_build_release.yml") %>
15
+
16
+
@@ -0,0 +1,3 @@
1
+ mkdir ~/.gem
2
+ echo -e "---\r\n:rubygems_api_key: $RUBYGEMS_API_KEY" > ~/.gem/credentials
3
+ chmod 0600 /home/circleci/.gem/credentials
@@ -7,5 +7,9 @@ services:
7
7
  context: .
8
8
  dockerfile: roro/containers/ruby_image/Dockerfile
9
9
  environment:
10
- - RUBY_IMAGE=${RUBY_IMAGE}
11
- command: bundle exec rake test
10
+ - RUBY_VERSION=${RUBY_VERSION}
11
+ volumes:
12
+ - gem_cache:/gems
13
+
14
+ volumes:
15
+ gem_cache:
@@ -1,16 +1,16 @@
1
- ARG RUBY_IMAGE=ruby:<%= config['ruby_version'] %>-alpine
1
+ ARG RUBY_VERSION=<%= config['ruby_version'] %>
2
+ ARG RUBY_IMAGE=ruby:${RUBY_VERSION}-alpine
2
3
  FROM $RUBY_IMAGE
3
4
 
4
5
  RUN apk add --no-cache --update build-base linux-headers git
5
6
 
6
7
  ENV APP_HOME /usr/src/app/
8
+ ENV BUNDLE_PATH /gems
9
+ ENV GEM_PATH ${BUNDLE_PATH}
10
+ ENV GEM_HOME ${BUNDLE_PATH}
7
11
 
8
- RUN mkdir ${APP_HOME}
9
-
12
+ RUN mkdir ${BUNDLE_PATH}
10
13
 
11
14
  WORKDIR ${APP_HOME}
12
-
13
-
14
15
  COPY . ${APP_HOME}
15
- RUN gem update bundler
16
- RUN bundle
16
+ RUN bundle install
@@ -0,0 +1 @@
1
+ export RUBYGEMS_API_KEY=<%= config['rubygems_api_key'] %>
@@ -0,0 +1,11 @@
1
+ build:
2
+ machine: true
3
+ steps:
4
+ - checkout
5
+
6
+ <%= 'getsome' %>
7
+ - run: gem install roro
8
+ - run: roro generate::exposed ci
9
+ - run: echo 'source roro/containers/ruby_image/ci.env' >> $BASH_ENV
10
+ - run: gem install gem-release
11
+ # - run: gem release --key $RUBYGEMS_API_KEY
@@ -1,8 +1,8 @@
1
1
  database:
2
2
  image: mysql:5.7
3
3
  env_file:
4
- - roro/containers/database/development.env
5
- - roro/containers/app/development.env
4
+ - roro/containers/database/${RORO_ENV:-development}.env
5
+ - roro/containers/app/${RORO_ENV:-development}.env
6
6
  volumes:
7
7
  - db_data:/var/lib/mysql
8
8
  restart: always
@@ -1,7 +1,7 @@
1
1
  database:
2
2
  image: postgres
3
3
  env_file:
4
- - roro/containers/database/development.env
5
- - roro/containers/app/development.env
4
+ - roro/containers/database/${RORO_ENV:-development}.env
5
+ - roro/containers/app/${RORO_ENV:-development}.env
6
6
  volumes:
7
7
  - db_data:/var/lib/postgresql/data
@@ -1,3 +1,3 @@
1
1
  module Roro
2
- VERSION = "0.3.9"
2
+ VERSION = "0.3.17"
3
3
  end
@@ -36,16 +36,15 @@ Gem::Specification.new do |spec|
36
36
  # spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
37
37
  # spec.bindir = "exe"
38
38
  # spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
39
- spec.require_paths = ["lib"]
40
- spec.add_dependency "gem-release", "~> 2.1"
41
- spec.add_dependency "thor", "~> 1.0"
42
- spec.add_dependency "os", "1.0.0"
43
- spec.add_dependency "sshkit", "1.18.2"
44
- spec.add_dependency "handsome_fencer-crypto"
45
- spec.add_dependency "byebug"
46
- spec.add_development_dependency "bundler"
47
- spec.add_development_dependency "rake", ">= 12.3"
48
- spec.add_development_dependency "handsome_fencer-test", "0.1.1"
49
- spec.add_development_dependency "mocha"
39
+ spec.require_paths = ['lib']
40
+ spec.add_dependency 'gem-release', '~> 2.1'
41
+ spec.add_dependency 'handsome_fencer-crypto', '~> 0.1.9'
42
+ spec.add_dependency 'rake', '~> 13.0', '>= 13.0.1'
43
+ spec.add_dependency 'sshkit', '~> 1.21'
44
+ spec.add_dependency 'thor', '~> 1.0', '>= 1.0.1'
45
+ spec.add_development_dependency 'bundler', '~> 2.1', '>= 2.1.4'
46
+ spec.add_development_dependency 'byebug', '~> 11.1', '>= 11.1.3'
47
+ spec.add_development_dependency 'handsome_fencer-test', '~> 0.2.2'
48
+ spec.add_development_dependency 'mocha', '~> 1.11', '>= 1.11.2'
50
49
 
51
50
  end
File without changes
@@ -0,0 +1,16 @@
1
+ ARG RUBY_VERSION=2.7
2
+ ARG RUBY_IMAGE=ruby:${RUBY_VERSION}-alpine
3
+ FROM $RUBY_IMAGE
4
+
5
+ RUN apk add --no-cache --update build-base linux-headers git
6
+
7
+ ENV APP_HOME /usr/src/app/
8
+ ENV BUNDLE_PATH /gems
9
+ ENV GEM_PATH ${BUNDLE_PATH}
10
+ ENV GEM_HOME ${BUNDLE_PATH}
11
+
12
+ RUN mkdir ${BUNDLE_PATH}
13
+
14
+ WORKDIR ${APP_HOME}
15
+ COPY . ${APP_HOME}
16
+ RUN bundle install
@@ -0,0 +1,2 @@
1
+ CP3WnhLldqGcoPdCRgAkzUiXdTYdd166oDCRsXDbJi+YWczgX53oaJsRNlu8
2
+ S/cvOkds770ID3hmbcNXwfyR4A==
File without changes
File without changes
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roro
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.9
4
+ version: 0.3.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - schadenfred
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-08-22 00:00:00.000000000 Z
11
+ date: 2020-08-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gem-release
@@ -25,131 +25,147 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '2.1'
27
27
  - !ruby/object:Gem::Dependency
28
- name: thor
28
+ name: handsome_fencer-crypto
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.0'
33
+ version: 0.1.9
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.0'
40
+ version: 0.1.9
41
41
  - !ruby/object:Gem::Dependency
42
- name: os
42
+ name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '='
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.0.0
47
+ version: '13.0'
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: 13.0.1
48
51
  type: :runtime
49
52
  prerelease: false
50
53
  version_requirements: !ruby/object:Gem::Requirement
51
54
  requirements:
52
- - - '='
55
+ - - "~>"
56
+ - !ruby/object:Gem::Version
57
+ version: '13.0'
58
+ - - ">="
53
59
  - !ruby/object:Gem::Version
54
- version: 1.0.0
60
+ version: 13.0.1
55
61
  - !ruby/object:Gem::Dependency
56
62
  name: sshkit
57
63
  requirement: !ruby/object:Gem::Requirement
58
64
  requirements:
59
- - - '='
65
+ - - "~>"
60
66
  - !ruby/object:Gem::Version
61
- version: 1.18.2
67
+ version: '1.21'
62
68
  type: :runtime
63
69
  prerelease: false
64
70
  version_requirements: !ruby/object:Gem::Requirement
65
71
  requirements:
66
- - - '='
72
+ - - "~>"
67
73
  - !ruby/object:Gem::Version
68
- version: 1.18.2
74
+ version: '1.21'
69
75
  - !ruby/object:Gem::Dependency
70
- name: handsome_fencer-crypto
76
+ name: thor
71
77
  requirement: !ruby/object:Gem::Requirement
72
78
  requirements:
73
- - - ">="
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :runtime
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - ">="
79
+ - - "~>"
81
80
  - !ruby/object:Gem::Version
82
- version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: byebug
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
81
+ version: '1.0'
87
82
  - - ">="
88
83
  - !ruby/object:Gem::Version
89
- version: '0'
84
+ version: 1.0.1
90
85
  type: :runtime
91
86
  prerelease: false
92
87
  version_requirements: !ruby/object:Gem::Requirement
93
88
  requirements:
89
+ - - "~>"
90
+ - !ruby/object:Gem::Version
91
+ version: '1.0'
94
92
  - - ">="
95
93
  - !ruby/object:Gem::Version
96
- version: '0'
94
+ version: 1.0.1
97
95
  - !ruby/object:Gem::Dependency
98
96
  name: bundler
99
97
  requirement: !ruby/object:Gem::Requirement
100
98
  requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '2.1'
101
102
  - - ">="
102
103
  - !ruby/object:Gem::Version
103
- version: '0'
104
+ version: 2.1.4
104
105
  type: :development
105
106
  prerelease: false
106
107
  version_requirements: !ruby/object:Gem::Requirement
107
108
  requirements:
109
+ - - "~>"
110
+ - !ruby/object:Gem::Version
111
+ version: '2.1'
108
112
  - - ">="
109
113
  - !ruby/object:Gem::Version
110
- version: '0'
114
+ version: 2.1.4
111
115
  - !ruby/object:Gem::Dependency
112
- name: rake
116
+ name: byebug
113
117
  requirement: !ruby/object:Gem::Requirement
114
118
  requirements:
119
+ - - "~>"
120
+ - !ruby/object:Gem::Version
121
+ version: '11.1'
115
122
  - - ">="
116
123
  - !ruby/object:Gem::Version
117
- version: '12.3'
124
+ version: 11.1.3
118
125
  type: :development
119
126
  prerelease: false
120
127
  version_requirements: !ruby/object:Gem::Requirement
121
128
  requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '11.1'
122
132
  - - ">="
123
133
  - !ruby/object:Gem::Version
124
- version: '12.3'
134
+ version: 11.1.3
125
135
  - !ruby/object:Gem::Dependency
126
136
  name: handsome_fencer-test
127
137
  requirement: !ruby/object:Gem::Requirement
128
138
  requirements:
129
- - - '='
139
+ - - "~>"
130
140
  - !ruby/object:Gem::Version
131
- version: 0.1.1
141
+ version: 0.2.2
132
142
  type: :development
133
143
  prerelease: false
134
144
  version_requirements: !ruby/object:Gem::Requirement
135
145
  requirements:
136
- - - '='
146
+ - - "~>"
137
147
  - !ruby/object:Gem::Version
138
- version: 0.1.1
148
+ version: 0.2.2
139
149
  - !ruby/object:Gem::Dependency
140
150
  name: mocha
141
151
  requirement: !ruby/object:Gem::Requirement
142
152
  requirements:
153
+ - - "~>"
154
+ - !ruby/object:Gem::Version
155
+ version: '1.11'
143
156
  - - ">="
144
157
  - !ruby/object:Gem::Version
145
- version: '0'
158
+ version: 1.11.2
146
159
  type: :development
147
160
  prerelease: false
148
161
  version_requirements: !ruby/object:Gem::Requirement
149
162
  requirements:
163
+ - - "~>"
164
+ - !ruby/object:Gem::Version
165
+ version: '1.11'
150
166
  - - ">="
151
167
  - !ruby/object:Gem::Version
152
- version: '0'
168
+ version: 1.11.2
153
169
  description: Roro is a containerization and continuous integration framework for Ruby
154
170
  on Rails applications. Like Rails, it favors convention over configuration "...for
155
171
  programmer happiness and sustainable productivity."
@@ -160,6 +176,9 @@ executables:
160
176
  extensions: []
161
177
  extra_rdoc_files: []
162
178
  files:
179
+ - ".circleci/.keep"
180
+ - ".circleci/config.yml"
181
+ - ".circleci/setup-gem-credentials.sh"
163
182
  - ".gitignore"
164
183
  - ".ruby-gemset"
165
184
  - ".travis.yml"
@@ -172,6 +191,7 @@ files:
172
191
  - bin/console
173
192
  - bin/roro
174
193
  - bin/setup
194
+ - docker-compose.yml
175
195
  - lib/roro.rb
176
196
  - lib/roro/cli.rb
177
197
  - lib/roro/cli/base/base.rb
@@ -181,134 +201,98 @@ files:
181
201
  - lib/roro/cli/base/insert_gems.rb
182
202
  - lib/roro/cli/base/insertions.rb
183
203
  - lib/roro/cli/base/utilities.rb
184
- - lib/roro/cli/cli.rb
185
204
  - lib/roro/cli/configuration.rb
186
- - lib/roro/cli/expose.rb
187
205
  - lib/roro/cli/generate/config.rb
188
206
  - lib/roro/cli/generate/config/rails.rb
207
+ - lib/roro/cli/generate/exposed.rb
189
208
  - lib/roro/cli/generate/generate.rb
190
- - lib/roro/cli/generate/generate_keys.rb
191
- - lib/roro/cli/greenfield.rb
192
- - lib/roro/cli/obfuscate.rb
209
+ - lib/roro/cli/generate/keys.rb
210
+ - lib/roro/cli/generate/obfuscated.rb
211
+ - lib/roro/cli/greenfield/rails.rb
193
212
  - lib/roro/cli/rollon.rb
213
+ - lib/roro/cli/rollon/rails.rb
214
+ - lib/roro/cli/rollon/rails/database.rb
215
+ - lib/roro/cli/rollon/rails/database/with_mysql.rb
216
+ - lib/roro/cli/rollon/rails/database/with_postgresql.rb
217
+ - lib/roro/cli/rollon/ruby_gem.rb
218
+ - lib/roro/cli/rollon/ruby_gem/with_ci_cd.rb
194
219
  - lib/roro/cli/rollon/stories.rb
195
- - lib/roro/cli/rollon/stories/database.rb
196
- - lib/roro/cli/rollon/stories/rails.rb
197
- - lib/roro/cli/rollon/stories/rails/.keep
198
- - lib/roro/cli/rollon/stories/rails/database.rb
199
- - lib/roro/cli/rollon/stories/rails/database/with_mysql.rb
200
- - lib/roro/cli/rollon/stories/rails/database/with_postgresql.rb
201
- - lib/roro/cli/rollon/stories/ruby_gem.rb
202
- - lib/roro/cli/rollon/stories/ruby_gem/with_ci_cd.rb
203
220
  - lib/roro/cli/rollon/stories/stories.rb
204
221
  - lib/roro/cli/roro_configurator.yml
205
- - lib/roro/cli/ruby_gem.rb
222
+ - lib/roro/cli/templates/base/.circleci/_defaults.yml
223
+ - lib/roro/cli/templates/base/.circleci/_workflow.yml
224
+ - lib/roro/cli/templates/base/.circleci/config.job-example.yml
225
+ - lib/roro/cli/templates/base/.circleci/jobs/_build.yml
226
+ - lib/roro/cli/templates/base/.circleci/jobs/_release.yml
227
+ - lib/roro/cli/templates/base/.circleci/workflows/_build_release.yml
206
228
  - lib/roro/cli/templates/base/.dockerignore
207
- - lib/roro/cli/templates/base/.env/.keep
208
- - lib/roro/cli/templates/base/.env/database.mysql.env.tt
209
- - lib/roro/cli/templates/base/.env/database.pg.env.tt
210
- - lib/roro/cli/templates/base/.env/web.env.tt
211
- - lib/roro/cli/templates/base/.keep
212
229
  - lib/roro/cli/templates/base/.roro_config.yml
213
- - lib/roro/cli/templates/base/Dockerfile.tt
214
- - lib/roro/cli/templates/base/config/database.mysql.yml
215
- - lib/roro/cli/templates/base/config/database.pg.yml
216
- - lib/roro/cli/templates/greenfield/Dockerfile.tt
217
- - lib/roro/cli/templates/jumpstart/.env/.keep
218
- - lib/roro/cli/templates/jumpstart/.env/development/.keep
219
- - lib/roro/cli/templates/jumpstart/.env/development/database
220
- - lib/roro/cli/templates/jumpstart/.env/development/web
221
- - lib/roro/cli/templates/jumpstart/.keep
222
- - lib/roro/cli/templates/jumpstart/Dockerfile.tt
223
- - lib/roro/cli/templates/jumpstart/docker-compose.yml
224
- - lib/roro/cli/templates/jumpstart/docker-entrypoint.sh
225
- - lib/roro/cli/templates/livereload/hosts.example
226
- - lib/roro/cli/templates/roro/.keep
227
- - lib/roro/cli/templates/roro/docker-compose.yml.tt
228
- - lib/roro/cli/templates/roro/roro/.keep
229
- - lib/roro/cli/templates/roro/roro/containers/.keep
230
- - lib/roro/cli/templates/roro/roro/containers/app/.keep
231
- - lib/roro/cli/templates/roro/roro/containers/frontend/.keep
232
- - lib/roro/cli/templates/roro/roro/docker-entrypoint.sh.tt
233
- - lib/roro/cli/templates/ruby_gem/.circleci/config.yml
230
+ - lib/roro/cli/templates/base/dotenv
231
+ - lib/roro/cli/templates/base/jumpstart/.keep
232
+ - lib/roro/cli/templates/base/jumpstart/Dockerfile.tt
233
+ - lib/roro/cli/templates/base/jumpstart/docker-compose.yml
234
+ - lib/roro/cli/templates/base/jumpstart/docker-entrypoint.sh
235
+ - lib/roro/cli/templates/base/livereload/hosts.example
236
+ - lib/roro/cli/templates/base/roro/.keep
237
+ - lib/roro/cli/templates/base/roro/roro/.keep
238
+ - lib/roro/cli/templates/base/roro/roro/containers/.keep
239
+ - lib/roro/cli/templates/base/roro/roro/containers/app/.keep
240
+ - lib/roro/cli/templates/base/roro/roro/containers/frontend/.keep
241
+ - lib/roro/cli/templates/base/roro/roro/docker-entrypoint.sh.tt
242
+ - lib/roro/cli/templates/rails/.circleci/.keep
243
+ - lib/roro/cli/templates/rails/.circleci/_aliases.yml
244
+ - lib/roro/cli/templates/rails/.circleci/config.yml.tt
245
+ - lib/roro/cli/templates/rails/.circleci/jobs/_build.yml
246
+ - lib/roro/cli/templates/rails/.circleci/jobs/_push.yml
247
+ - lib/roro/cli/templates/rails/.circleci/jobs/_test.yml
248
+ - lib/roro/cli/templates/rails/.circleci/setup-gem-credentials.sh
249
+ - lib/roro/cli/templates/rails/.circleci/workflows/_build_test_push.yml
250
+ - lib/roro/cli/templates/rails/.keep
251
+ - lib/roro/cli/templates/rails/Dockerfile.greenfield.tt
252
+ - lib/roro/cli/templates/rails/config/database.mysql.yml
253
+ - lib/roro/cli/templates/rails/config/database.pg.yml
254
+ - lib/roro/cli/templates/rails/database/with_mysql/_service.yml
255
+ - lib/roro/cli/templates/rails/database/with_postgresql/.keep
256
+ - lib/roro/cli/templates/rails/database/with_postgresql/_service.yml
257
+ - lib/roro/cli/templates/rails/docker-compose.yml.tt
258
+ - lib/roro/cli/templates/rails/dotenv/.keep
259
+ - lib/roro/cli/templates/rails/dotenv/database.mysql.env.tt
260
+ - lib/roro/cli/templates/rails/dotenv/database.pg.env.tt
261
+ - lib/roro/cli/templates/rails/dotenv/web.env.tt
262
+ - lib/roro/cli/templates/rails/roro/.keep
263
+ - lib/roro/cli/templates/rails/roro/containers/.keep
264
+ - lib/roro/cli/templates/rails/roro/containers/app/.keep
265
+ - lib/roro/cli/templates/rails/roro/containers/app/Dockerfile.tt
266
+ - lib/roro/cli/templates/rails/roro/containers/frontend/.keep
267
+ - lib/roro/cli/templates/rails/roro/docker-entrypoint.sh.tt
268
+ - lib/roro/cli/templates/rails/roro/roro/.keep
269
+ - lib/roro/cli/templates/rails/roro/roro/containers/.keep
270
+ - lib/roro/cli/templates/rails/roro/roro/containers/app/.keep
271
+ - lib/roro/cli/templates/rails/roro/roro/containers/frontend/.keep
272
+ - lib/roro/cli/templates/rails/roro/roro/docker-entrypoint.sh.tt
273
+ - lib/roro/cli/templates/ruby_gem/.circleci/.keep
274
+ - lib/roro/cli/templates/ruby_gem/.circleci/config.yml.tt
275
+ - lib/roro/cli/templates/ruby_gem/.circleci/setup-gem-credentials.sh
234
276
  - lib/roro/cli/templates/ruby_gem/docker-compose.yml
235
- - lib/roro/cli/templates/ruby_gem/roro/ci.env.tt
236
277
  - lib/roro/cli/templates/ruby_gem/roro/containers/.keep
237
278
  - lib/roro/cli/templates/ruby_gem/roro/containers/ruby_image/Dockerfile.tt
279
+ - lib/roro/cli/templates/ruby_gem/roro/containers/ruby_image/ci.env.tt
238
280
  - lib/roro/cli/templates/ruby_gem/roro/keys/.keep
239
- - lib/roro/cli/templates/ruby_gem/setup-gem-credentials.sh
240
281
  - lib/roro/cli/templates/stories/.keep
282
+ - lib/roro/cli/templates/stories/ruby_gem/with_ci_cd/_build.yml
241
283
  - lib/roro/cli/templates/stories/with_mysql/_service.yml
242
284
  - lib/roro/cli/templates/stories/with_postgresql/.keep
243
285
  - lib/roro/cli/templates/stories/with_postgresql/_service.yml
244
286
  - lib/roro/version.rb
245
287
  - lib/tasks/deploy.rake
246
288
  - roro.gemspec
289
+ - roro/containers/.keep
290
+ - roro/containers/ruby_image/Dockerfile
291
+ - roro/containers/ruby_image/ci.env.enc
292
+ - roro/keys/.keep
247
293
  - sandbox/.keep
294
+ - tmp/.keep
248
295
  - vendor/bundle/.keep
249
- - vendor/cache/actionpack-6.0.3.2.gem
250
- - vendor/cache/actionview-6.0.3.2.gem
251
- - vendor/cache/activesupport-6.0.3.2.gem
252
- - vendor/cache/addressable-2.7.0.gem
253
- - vendor/cache/builder-3.2.4.gem
254
- - vendor/cache/byebug-11.1.3.gem
255
- - vendor/cache/coderay-1.1.3.gem
256
- - vendor/cache/concurrent-ruby-1.1.7.gem
257
- - vendor/cache/crass-1.0.6.gem
258
- - vendor/cache/em-websocket-0.5.1.gem
259
- - vendor/cache/erubi-1.9.0.gem
260
- - vendor/cache/eventmachine-1.2.7.gem
261
- - vendor/cache/ffi-1.13.1.gem
262
- - vendor/cache/formatador-0.2.5.gem
263
- - vendor/cache/gem-release-2.1.1.gem
264
- - vendor/cache/given_core-3.8.0.gem
265
- - vendor/cache/guard-2.16.2.gem
266
- - vendor/cache/guard-compat-1.2.1.gem
267
- - vendor/cache/guard-livereload-2.5.2.gem
268
- - vendor/cache/guard-minitest-2.4.6.gem
269
- - vendor/cache/handsome_fencer-crypto-0.1.6.gem
270
- - vendor/cache/handsome_fencer-test-0.1.1.gem
271
- - vendor/cache/http_parser.rb-0.6.0.gem
272
- - vendor/cache/i18n-1.8.5.gem
273
- - vendor/cache/launchy-2.5.0.gem
274
- - vendor/cache/listen-3.2.1.gem
275
- - vendor/cache/loofah-2.6.0.gem
276
- - vendor/cache/lumberjack-1.2.7.gem
277
- - vendor/cache/method_source-1.0.0.gem
278
- - vendor/cache/mini_portile2-2.4.0.gem
279
- - vendor/cache/minitest-5.14.1.gem
280
- - vendor/cache/minitest-given-3.8.0.gem
281
- - vendor/cache/minitest-matchers_vaccine-1.0.4.gem
282
- - vendor/cache/minitest-rails-6.0.1.gem
283
- - vendor/cache/mocha-1.11.2.gem
284
- - vendor/cache/multi_json-1.15.0.gem
285
- - vendor/cache/nenv-0.3.0.gem
286
- - vendor/cache/net-scp-3.0.0.gem
287
- - vendor/cache/net-ssh-6.1.0.gem
288
- - vendor/cache/nokogiri-1.10.10.gem
289
- - vendor/cache/notiffany-0.1.3.gem
290
- - vendor/cache/os-1.0.0.gem
291
- - vendor/cache/pry-0.13.1.gem
292
- - vendor/cache/public_suffix-4.0.5.gem
293
- - vendor/cache/rack-2.2.3.gem
294
- - vendor/cache/rack-livereload-0.3.17.gem
295
- - vendor/cache/rack-test-1.1.0.gem
296
- - vendor/cache/rails-dom-testing-2.0.3.gem
297
- - vendor/cache/rails-html-sanitizer-1.3.0.gem
298
- - vendor/cache/railties-6.0.3.2.gem
299
- - vendor/cache/rake-13.0.1.gem
300
- - vendor/cache/rb-fsevent-0.10.4.gem
301
- - vendor/cache/rb-inotify-0.10.1.gem
302
- - vendor/cache/shellany-0.0.1.gem
303
- - vendor/cache/shoulda-4.0.0.gem
304
- - vendor/cache/shoulda-context-2.0.0.gem
305
- - vendor/cache/shoulda-matchers-4.3.0.gem
306
- - vendor/cache/sorcerer-2.0.1.gem
307
- - vendor/cache/sshkit-1.18.2.gem
308
- - vendor/cache/thor-1.0.1.gem
309
- - vendor/cache/thread_safe-0.3.6.gem
310
- - vendor/cache/tzinfo-1.2.7.gem
311
- - vendor/cache/zeitwerk-2.4.0.gem
312
296
  homepage: https://github.com/schadenfred/roro
313
297
  licenses:
314
298
  - MIT
@@ -330,7 +314,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
330
314
  - !ruby/object:Gem::Version
331
315
  version: '0'
332
316
  requirements: []
333
- rubygems_version: 3.1.4
317
+ rubyforge_project:
318
+ rubygems_version: 2.6.13
334
319
  signing_key:
335
320
  specification_version: 4
336
321
  summary: Containerization framwork for Ruby on Rails applications.