jt_tools 0.0.2 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +35 -7
  3. data/.github/FUNDING.yml +4 -0
  4. data/.standard.yml +10 -0
  5. data/Gemfile +3 -1
  6. data/README.md +21 -11
  7. data/Rakefile +5 -5
  8. data/_config.yml +2 -1
  9. data/bin/test +22 -9
  10. data/jt_tools.gemspec +14 -14
  11. data/lib/install/.circleci/{config.yml.sample → config.yml} +72 -30
  12. data/lib/install/.dependabot/config.yml +3 -3
  13. data/lib/install/.editorconfig +70 -0
  14. data/lib/install/.erb-lint.yml +7 -7
  15. data/lib/install/.eslintrc.js +8 -11
  16. data/lib/install/.pronto.yml +3 -5
  17. data/lib/install/.reek.yml +8 -16
  18. data/lib/install/.rubocop.yml +59 -20
  19. data/lib/install/.simplecov +17 -0
  20. data/lib/install/{.yamllint → .yamllint.yml} +2 -1
  21. data/lib/install/Brewfile +15 -10
  22. data/lib/install/Gemfile.tools +4 -2
  23. data/lib/install/app.json +19 -41
  24. data/lib/install/bin/circleci-auto_upgrade_tools +3 -3
  25. data/lib/install/bin/git-hooks/{post-merge.sample → post-merge} +5 -10
  26. data/lib/install/bin/git-hooks/{pre-push.sample → pre-push} +1 -1
  27. data/lib/install/bin/heroku-postdeploy +1 -7
  28. data/lib/install/bin/heroku-release +4 -1
  29. data/lib/install/bin/{lint-github-pr → lint-pr} +0 -0
  30. data/lib/install/bin/tools-setup +1 -1
  31. data/lib/install/bin/tools-upgrade +2 -0
  32. data/lib/install/codecov.yml +5 -4
  33. data/lib/install/config/rails_best_practices.yml +43 -0
  34. data/lib/jt_tools.rb +3 -1
  35. data/lib/jt_tools/railtie.rb +4 -2
  36. data/lib/{version.rb → jt_tools/version.rb} +1 -1
  37. data/lib/tasks/install.rake +6 -4
  38. data/rejuvenation.rb +4 -5
  39. data/template.rb +139 -69
  40. metadata +14 -14
  41. data/_sample/test_erb.html.erb +0 -2
  42. data/_sample/test_eslint.js +0 -1
  43. data/_sample/test_yamlint.yml +0 -1
  44. data/lib/install/.prettierrc.js +0 -4
  45. data/lib/install/lib/test/coverage.rb +0 -14
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b8fb6f06a07bd971f50e67990613d4e54c0d875cd267157a591274c3d0cdf2f8
4
- data.tar.gz: a2e443bb4c2f0c69736104afa340a439d7bb56b63c6c6cb85c3507b62a9ff27b
3
+ metadata.gz: 110820f3c765883cb41d8be9ab041d2378e7bb02d2f0932274f0ea60130e616d
4
+ data.tar.gz: c2507a76f727d277f1e58457ed3f3d47732f48fdc42dc66529c3c65b5311d709
5
5
  SHA512:
6
- metadata.gz: fb4f90d8cb5ffb05774500c70e27b8418691aee7cce474ad31d92e223cc98a17555074927d774c94a581e5cf3a8c41051ef34ec9d3bd6ae3bf9adfbdbbaed88c
7
- data.tar.gz: 3709e81ba37922dde45c3851407f4a6b5f5a374277c203fe7697a5785bc8c753dae8e36315c1a881edcdd7b1fe89c4fe0b2bde106223dfa4ef4829cc0077c9b6
6
+ metadata.gz: 0031d018dd400ecb1762a59e2a3a7907cada91ded4059b166bcd56fc6ab9995ab12caad80822750a269361c617abab31cb80612604bccd9771d112bc186ab445
7
+ data.tar.gz: 8edd821baf1efc31ce37f31930daf29b3cb997cb9ce48db4937060cc77a142e9bea44b8a077ed80d51a52b17993e38fe4b13be717903d58b9653853fc2b81905
@@ -1,17 +1,45 @@
1
+ ---
1
2
  version: 2.1
2
3
  jobs:
3
4
  test:
4
5
  docker:
5
- - image: circleci/ruby:2.6-node
6
- parallelism: 1
6
+ - image: cimg/ruby:2.7-node
7
+ environment:
8
+ DATABASE_URL: postgresql://ubuntu@127.0.0.1/db_test
9
+ BUNDLE_JOBS: 4
10
+ BUNDLE_RETRY: 3
11
+
12
+ - image: circleci/postgres:alpine-ram
13
+ environment:
14
+ POSTGRES_USER: ubuntu
15
+ POSTGRES_DB: db_test
16
+ parallelism: 2
7
17
  steps:
8
18
  - checkout
19
+ - restore_cache:
20
+ keys:
21
+ - rails-v2-{{ arch }}-{{ .Revision }}
22
+ - rails-v2-{{ arch }}-
23
+ - rails-v2-
24
+
9
25
  - run: gem install rails -N --update-sources
10
- - run: sudo apt-get install cmake curl
11
- - run: curl -fLSs https://circle.ci/cli | sudo bash
26
+
27
+ - run: sudo apt-get update -qq && sudo apt-get install -yq --no-install-recommends
28
+ cmake curl yamllint python3-setuptools python3-pkg-resources pkg-config
29
+ - run: curl -fLSs https://raw.githubusercontent.com/CircleCI-Public/circleci-cli/master/install.sh |
30
+ sudo bash
12
31
  - run: git config --global user.email "you@example.com" && git config --global user.name "Your Name"
13
- - run: bin/test
14
- - run: TEST_APP_TEMPLATE=true bin/test
32
+
33
+ - run: |
34
+ [[ $CIRCLE_NODE_INDEX == "0" ]] || bin/test
35
+ - run: |
36
+ [[ $CIRCLE_NODE_INDEX == "1" ]] || TEST_APP_TEMPLATE=true bin/test
37
+
38
+ - save_cache:
39
+ key: rails-v2-{{ arch }}-{{ .Revision }}
40
+ paths:
41
+ - /home/circleci/.rubygems
42
+ - /home/circleci/.cache
15
43
 
16
44
  workflows:
17
45
  test:
@@ -19,7 +47,7 @@ workflows:
19
47
  - test
20
48
 
21
49
  daily:
22
- triggers: #use the triggers key to indicate a scheduled build
50
+ triggers:
23
51
  - schedule:
24
52
  cron: "0 0 * * *"
25
53
  filters:
@@ -0,0 +1,4 @@
1
+ ---
2
+ github: [pftg]
3
+ patreon: pftg
4
+ custom: ['https://www.jetthoughts.com', 'https://jtway.co']
@@ -0,0 +1,10 @@
1
+ default_ignores: false
2
+ #fix: true
3
+ format: progress
4
+ parallel: true
5
+ ruby_version: 2.7.1
6
+
7
+ ignore:
8
+ - 'test/**/*':
9
+ - Layout/AlignHash
10
+ - 'tmp/**/*'
data/Gemfile CHANGED
@@ -1,4 +1,6 @@
1
- source 'https://rubygems.org'
1
+ source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in jt_tools.gemspec
4
4
  gemspec
5
+
6
+ gem "standard"
data/README.md CHANGED
@@ -1,8 +1,9 @@
1
1
  [![CircleCI](https://circleci.com/gh/jetthoughts/jt_tools.svg?style=svg)](https://circleci.com/gh/jetthoughts/jt_tools)
2
+ [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fjetthoughts%2Fjt_tools.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Fjetthoughts%2Fjt_tools?ref=badge_shield)
2
3
 
3
4
  # JetThoughts Tools
4
5
 
5
- Ruby on Rails ecosystem to maintain projects without losing your mind.
6
+ Ruby on Rails Continious Deployemnt ecosystem to maintain projects without losing your mind.
6
7
  Automatization scripts and services integrations which make your product world class level with no effort!
7
8
 
8
9
  More details could be found in such posts:
@@ -10,17 +11,23 @@ More details could be found in such posts:
10
11
  * [How to Setup a Project That Can Host Up to 1000 Users for Free](https://jtway.co/how-to-setup-a-project-that-can-host-up-to-1000-users-for-free-ab59ad3edaf1)
11
12
  * [Our Default Ruby Development Stack](https://jtway.co/our-default-ruby-development-stack-9d7e80ef21df)
12
13
  * [Heroku Reviews Apps prevent delivering bugs on production](https://jtway.co/make-master-stable-again-b15c9ff3b129)
14
+ * [Effortless Code Conventions Review for Pull Request Changes](https://jtway.co/effortless-code-review-for-pull-request-changes-241206b1cb04)
13
15
 
14
16
  # Services and Tools
15
17
 
16
18
  Pre-setup for service
17
19
 
18
- * Heroku
19
- * CircleCI
20
- * Codecov
21
- * Pronto
22
- * Static Code Analysisers: Rubocop, Reek, and etc.
23
- * Dependabot
20
+ * [GitHub](https://github.com)
21
+ * [Heroku](https://jtway.co/make-master-stable-again-b15c9ff3b129) (Heroku Reviews Apps)
22
+ * [CircleCI](https://circleci.com/)
23
+ * [Codecov](https://codecov.io/) and [Simplecov](https://github.com/colszowka/simplecov)
24
+ * [Dependabot](https://dependabot.com/)
25
+ * [MemCachier](https://www.memcachier.com/)
26
+ * Code Styles:
27
+ * [Pronto](https://jtway.co/effortless-code-review-for-pull-request-changes-241206b1cb04)
28
+ * [Rubocop](https://github.com/rubocop-hq/rubocop)
29
+ * [ESLint](https://eslint.org/)
30
+ * [EditorConfig](https://editorconfig.org/)
24
31
 
25
32
  ## Installation
26
33
 
@@ -33,7 +40,7 @@ rails app:template LOCATION=https://raw.githubusercontent.com/jetthoughts/jt_too
33
40
  Add this line to your application's Gemfile:
34
41
 
35
42
  ```ruby
36
- gem 'jt_tools', groups: [:development]
43
+ gem 'jt_tools', groups: [:development], github: 'jetthoughts/jt_tools'
37
44
  ```
38
45
 
39
46
  And then execute:
@@ -52,13 +59,13 @@ bin/tools-setup
52
59
  bin/tools-upgrade
53
60
  ```
54
61
 
55
- Auto-review on GitHub opened Pull Rquests to follow code consensentcy
62
+ Auto-review on GitHub opened Pull Rquests to follow code consistency
56
63
 
57
64
  ```bash
58
- bin/lint-github-pr
65
+ bin/lint-pr
59
66
  ```
60
67
 
61
- Check localy all problems in the current branch cahnges
68
+ Check locally all problems in the current branch changes
62
69
 
63
70
  ```bash
64
71
  bin/pronto run
@@ -67,3 +74,6 @@ bin/pronto run
67
74
  ## License
68
75
 
69
76
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
77
+
78
+
79
+ [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fjetthoughts%2Fjt_tools.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fjetthoughts%2Fjt_tools?ref=badge_large)
data/Rakefile CHANGED
@@ -1,12 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'bundler/gem_tasks'
4
- require 'rake/testtask'
3
+ require "bundler/gem_tasks"
4
+ require "rake/testtask"
5
5
 
6
6
  Rake::TestTask.new(:test) do |t|
7
- t.libs << 'test'
8
- t.libs << 'lib'
9
- t.test_files = FileList['test/**/*_test.rb']
7
+ t.libs << "test"
8
+ t.libs << "lib"
9
+ t.test_files = FileList["test/**/*_test.rb"]
10
10
  end
11
11
 
12
12
  task default: :test
@@ -1 +1,2 @@
1
- theme: jekyll-theme-architect
1
+ ---
2
+ theme: jekyll-theme-architect
data/bin/test CHANGED
@@ -1,26 +1,33 @@
1
1
  #!/usr/bin/env bash
2
2
 
3
- set -eo pipefail
3
+ set -xeo pipefail
4
+
5
+ echo "=> Yamllint:"
6
+ yamllint --config-file lib/install/.yamllint.yml --strict .*/*.yml
7
+ yamllint --config-file lib/install/.yamllint.yml --strict *.yml
8
+ yamllint --config-file lib/install/.yamllint.yml --strict lib/**/.*.yml
9
+ yamllint --config-file lib/install/.yamllint.yml --strict **/.*/*.yml
4
10
 
5
11
  mkdir -p tmp/
6
12
 
7
13
  cd tmp
8
14
  rm -rf test_tmpl
9
15
 
16
+ # Test installation of missed gems on applying template
10
17
  gem uninstall oj || true
11
18
 
12
- if [[ "TEST_APP_TEMPLATE" == "true" ]]
19
+ if [[ "$TEST_APP_TEMPLATE" == "true" ]]
13
20
  then
14
- rails new test_tmpl
21
+ rails new test_tmpl --quiet --database postgresql
15
22
  cd test_tmpl
16
- rails app:template LOCATION=../template.rb
23
+ rails app:template LOCATION=../../template.rb
17
24
  else
18
- rails new test_tmpl -m ../template.rb
25
+ rails new test_tmpl --template ../template.rb --quiet --database postgresql
19
26
  cd test_tmpl
27
+ DISABLE_SPRING=1 bin/setup
20
28
  fi
21
29
 
22
30
  echo " => Verify CircleCI config:"
23
- cp .circleci/config.yml.sample .circleci/config.yml
24
31
  circleci config validate
25
32
 
26
33
  echo " => Verify installation scripts:"
@@ -42,9 +49,15 @@ git commit -m 'Adds sample_for_linters'
42
49
 
43
50
  bin/rubocop --fail-level F sample_for_linters.rb
44
51
  bin/pronto run -c HEAD~1 --no-exit-code
52
+ BUNDLE_GEMFILE=Gemfile.tools bin/bundle exec rails_best_practices --without-color --silent --test .
53
+ # FIXME: https://github.com/Shopify/erb-lint/issues/162
54
+ # BUNDLE_GEMFILE=Gemfile.tools bin/bundle exec erblint --config ../../lib/install/.erb-lint.yml --autocorrect .
45
55
 
46
- CIRCLECI=false bin/lint-github-pr -f text
56
+ CIRCLECI=false bin/lint-pr -f text
47
57
 
48
58
  echo " => Run git hooks verifications"
49
- bin/git-hooks/post-merge.sample
50
- CIRCLECI=false bin/git-hooks/pre-push.sample
59
+ bin/git-hooks/post-merge
60
+ CIRCLECI=false bin/git-hooks/pre-push
61
+
62
+ bin/rubocop --config ../../lib/install/.rubocop.yml --debug --extra-details --display-style-guide --parallel ../../lib
63
+ node_modules/.bin/eslint --config ../../lib/install/.eslintrc.js --quiet --no-color ../../lib/**/.*.js
@@ -1,25 +1,25 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- lib = File.expand_path('lib', __dir__)
3
+ lib = File.expand_path("lib", __dir__)
4
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
- require 'version'
5
+ require "jt_tools/version"
6
6
 
7
7
  Gem::Specification.new do |spec|
8
- spec.name = 'jt_tools'
8
+ spec.name = "jt_tools"
9
9
  spec.version = JtTools::VERSION
10
- spec.authors = ['Paul Keen']
11
- spec.email = ['pftg@users.noreply.github.com']
10
+ spec.authors = ["Paul Keen"]
11
+ spec.email = ["pftg@users.noreply.github.com"]
12
12
 
13
- spec.summary = 'Setup development scripts to manage code base effectively'
14
- spec.description = 'Helpful scripts to run linters locally and on CI'
15
- spec.homepage = 'https://jtway.co'
16
- spec.license = 'MIT'
13
+ spec.summary = "Setup development scripts to manage code base effectively"
14
+ spec.description = "Helpful scripts to run linters locally and on CI"
15
+ spec.homepage = "https://jtway.co"
16
+ spec.license = "MIT"
17
17
 
18
- spec.metadata['homepage_uri'] = spec.homepage
19
- spec.metadata['source_code_uri'] = 'https://github.com/jetthoughts/jt-tools/'
20
- spec.metadata['changelog_uri'] = 'https://github.com/jetthoughts/jt-tools/'
18
+ spec.metadata["homepage_uri"] = spec.homepage
19
+ spec.metadata["source_code_uri"] = "https://github.com/jetthoughts/jt-tools/"
20
+ spec.metadata["changelog_uri"] = "https://github.com/jetthoughts/jt-tools/"
21
21
 
22
- spec.add_dependency 'railties', '>= 4.2'
22
+ spec.add_dependency "railties", ">= 4.2"
23
23
 
24
24
  # Specify which files should be added to the gem when it is released.
25
25
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@@ -27,5 +27,5 @@ Gem::Specification.new do |spec|
27
27
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
28
28
  end
29
29
 
30
- spec.require_paths = ['lib']
30
+ spec.require_paths = ["lib"]
31
31
  end
@@ -6,10 +6,15 @@
6
6
 
7
7
  version: 2.1
8
8
 
9
+ orbs:
10
+ ruby: circleci/ruby@1.0.0
11
+ node: circleci/node@2.1.1
12
+
9
13
  workflows:
10
14
  version: 2
11
15
  test:
12
16
  jobs:
17
+ - test
13
18
  - lint:
14
19
  filters:
15
20
  branches:
@@ -33,19 +38,18 @@ jobs:
33
38
  test:
34
39
  docker:
35
40
  # specify the version you desire here
36
- - image: circleci/ruby:2.6-node-browsers
41
+ - image: circleci/ruby:2.7-node-browsers
37
42
  environment:
38
- COVERAGE: true
39
43
  BUNDLE_GEMFILE: Gemfile
40
- BUNDLE_WITHOUT: "production:staging:development"
41
- BUNDLE_JOBS: 3
42
- BUNDLE_RETRY: 3
43
44
  BUNDLE_PATH: vendor/bundle
44
- RAILS_ENV: test
45
+ BUNDLE_JOBS: 4
46
+ BUNDLE_RETRY: 3
47
+ BUNDLE_WITHOUT: "production:staging:development"
48
+ COVERAGE: true
49
+ DATABASE_URL: postgresql://ubuntu@localhost/db
50
+ NODE_ENV: test
45
51
  RACK_ENV: test
46
- PGHOST: 127.0.0.1
47
- PGUSER: ubuntu
48
- DATABASE_URL: postgresql:ubuntu@127.0.0.1/db_test
52
+ RAILS_ENV: test
49
53
 
50
54
  # Specify service dependencies here if necessary
51
55
  # CircleCI maintains a library of pre-built images
@@ -53,43 +57,80 @@ jobs:
53
57
  - image: circleci/postgres:alpine-ram
54
58
  environment:
55
59
  POSTGRES_USER: ubuntu
56
- POSTGRES_DB: db_test
60
+ POSTGRES_DB: db
57
61
 
58
62
  steps:
59
63
  - checkout
64
+ - ruby/install-deps:
65
+ bundler-version: '`cat Gemfile.lock | tail -1 | tr -d " "`'
66
+ key: v1-dependencies
67
+ - node/install:
68
+ node-version: latest
69
+ - node/install-packages:
70
+ app-dir: .
71
+ pkg-manager: yarn
72
+ cache-key: yarn.lock
73
+ cache-version: v1
74
+
75
+ - restore_cache:
76
+ keys:
77
+ - asset-cache-v1-{{ arch }}-{{ .Branch }}-{{ checksum "yarn.lock" }}-{{ .Environment.CIRCLE_SHA1 }}
78
+ - asset-cache-v1-{{ arch }}-{{ .Branch }}-{{ checksum "yarn.lock" }}-
79
+ - asset-cache-v1-{{ arch }}-{{ .Branch }}-
80
+ - asset-cache-v1-
81
+
82
+ - run:
83
+ name: Precompile Assets
84
+ command: |
85
+ bin/webpack
86
+ bin/rails assets:precompile
87
+
88
+ - save_cache:
89
+ key: asset-cache-v1-{{ arch }}-{{ .Branch }}-{{ checksum "yarn.lock" }}-{{ .Environment.CIRCLE_SHA1 }}
90
+ paths:
91
+ - public/assets
92
+ - public/pack-test
93
+ - tmp/cache/assets
94
+ - tmp/cache/webpacker
60
95
 
61
- # Download and cache dependencies
62
96
  - restore_cache:
63
- name: Restore Bundler Cache
97
+ name: Restore Jest Cache
64
98
  keys:
65
- - v1-dependencies-{{ checksum "Gemfile.lock" }}
66
- - v1-dependencies-
99
+ - jest-cache-v1-{{ arch }}-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}
100
+ - jest-cache-v1-{{ arch }}-{{ .Branch }}-
101
+ - jest-cache-v1-
67
102
 
68
103
  - run:
69
- name: Install Bundler Dependencies
70
- command: bin/bundle check --path vendor/bundle || bin/bundle install --deployment
104
+ name: JavaScript Unit Tests
105
+ command: |
106
+ bin/yarn test --ci --no-watchman \
107
+ --coverage --coverageDirectory coverage/jest \
108
+ --coverageReporters text-summary --coverageReporters html \
109
+ --reporters=jest-junit
110
+ environment:
111
+ JEST_JUNIT_OUTPUT_DIR: tmp/reports/jest-results
71
112
 
72
113
  - save_cache:
73
- name: Save Bundler Cache
114
+ name: Save Jest Cache
115
+ key: jest-cache-v1-{{ arch }}-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}
74
116
  paths:
75
- - ./vendor/bundle
76
- key: v1-dependencies-{{ checksum "Gemfile.lock" }}
117
+ - tmp/cache/jest
77
118
 
78
119
  - run: bin/rails db:schema:load
79
- - run: bin/rails test
120
+ # rails test
80
121
 
81
122
  # collect reports
82
123
  - store_test_results:
83
- path: ./test/reports/
124
+ path: ./tmp/reports/
84
125
  - store_artifacts:
85
126
  path: ./coverage
86
127
  lint:
87
128
  docker:
88
- - image: circleci/ruby:2.6-stretch-node
129
+ - image: cimg/ruby:2.7-node
89
130
  environment:
90
131
  DISABLE_SPRING: 1
91
132
  BUNDLE_GEMFILE: Gemfile.tools
92
- BUNDLE_JOBS: 3
133
+ BUNDLE_JOBS: 4
93
134
  BUNDLE_RETRY: 3
94
135
 
95
136
  steps:
@@ -102,7 +143,9 @@ jobs:
102
143
 
103
144
  - run:
104
145
  name: Install cmake for building pronto dependencies
105
- command: sudo apt-get install cmake yamllint python3-setuptools python3-pkg-resources
146
+ command: sudo apt-get update -qq &&
147
+ sudo apt-get install -yq --no-install-recommends
148
+ cmake yamllint python3-setuptools python3-pkg-resources pkg-config
106
149
 
107
150
  - run:
108
151
  name: Install Bundle Dependencies
@@ -110,7 +153,7 @@ jobs:
110
153
 
111
154
  - run:
112
155
  name: Install Node Packages
113
- command: bin/yarn
156
+ command: bin/yarn check || bin/yarn install
114
157
 
115
158
  - save_cache:
116
159
  key: v1-tools-dependencies-{{ checksum "Gemfile.tools.lock" }}-{{ checksum "yarn.lock" }}
@@ -118,15 +161,15 @@ jobs:
118
161
  - ./vendor/bundle-tools
119
162
  - ./node_modules
120
163
 
121
- - run: bin/lint-github-pr
164
+ - run: bin/lint-pr
122
165
 
123
166
  upgrade_tools:
124
167
  docker:
125
- - image: circleci/ruby:2.6-stretch-node
168
+ - image: cimg/ruby:2.7-node
126
169
  environment:
127
170
  DISABLE_SPRING: 1
128
171
  BUNDLE_GEMFILE: Gemfile.tools
129
- BUNDLE_JOBS: 3
172
+ BUNDLE_JOBS: 4
130
173
  BUNDLE_RETRY: 3
131
174
 
132
175
  steps:
@@ -139,10 +182,9 @@ jobs:
139
182
  source $BASH_ENV
140
183
  gem install bundler:$BUNDLER_VERSION
141
184
 
142
- - run: sudo apt-get install cmake
185
+ - run: sudo apt-get update && sudo apt-get install cmake yamllint python3-setuptools python3-pkg-resources
143
186
 
144
187
  - run:
145
188
  name: Run Gemfile tools update in separate branch
146
189
  command: |
147
190
  ./bin/circleci-auto_upgrade_tools
148
-