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.
- checksums.yaml +4 -4
- data/.circleci/config.yml +35 -7
- data/.github/FUNDING.yml +4 -0
- data/.standard.yml +10 -0
- data/Gemfile +3 -1
- data/README.md +21 -11
- data/Rakefile +5 -5
- data/_config.yml +2 -1
- data/bin/test +22 -9
- data/jt_tools.gemspec +14 -14
- data/lib/install/.circleci/{config.yml.sample → config.yml} +72 -30
- data/lib/install/.dependabot/config.yml +3 -3
- data/lib/install/.editorconfig +70 -0
- data/lib/install/.erb-lint.yml +7 -7
- data/lib/install/.eslintrc.js +8 -11
- data/lib/install/.pronto.yml +3 -5
- data/lib/install/.reek.yml +8 -16
- data/lib/install/.rubocop.yml +59 -20
- data/lib/install/.simplecov +17 -0
- data/lib/install/{.yamllint → .yamllint.yml} +2 -1
- data/lib/install/Brewfile +15 -10
- data/lib/install/Gemfile.tools +4 -2
- data/lib/install/app.json +19 -41
- data/lib/install/bin/circleci-auto_upgrade_tools +3 -3
- data/lib/install/bin/git-hooks/{post-merge.sample → post-merge} +5 -10
- data/lib/install/bin/git-hooks/{pre-push.sample → pre-push} +1 -1
- data/lib/install/bin/heroku-postdeploy +1 -7
- data/lib/install/bin/heroku-release +4 -1
- data/lib/install/bin/{lint-github-pr → lint-pr} +0 -0
- data/lib/install/bin/tools-setup +1 -1
- data/lib/install/bin/tools-upgrade +2 -0
- data/lib/install/codecov.yml +5 -4
- data/lib/install/config/rails_best_practices.yml +43 -0
- data/lib/jt_tools.rb +3 -1
- data/lib/jt_tools/railtie.rb +4 -2
- data/lib/{version.rb → jt_tools/version.rb} +1 -1
- data/lib/tasks/install.rake +6 -4
- data/rejuvenation.rb +4 -5
- data/template.rb +139 -69
- metadata +14 -14
- data/_sample/test_erb.html.erb +0 -2
- data/_sample/test_eslint.js +0 -1
- data/_sample/test_yamlint.yml +0 -1
- data/lib/install/.prettierrc.js +0 -4
- data/lib/install/lib/test/coverage.rb +0 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 110820f3c765883cb41d8be9ab041d2378e7bb02d2f0932274f0ea60130e616d
|
4
|
+
data.tar.gz: c2507a76f727d277f1e58457ed3f3d47732f48fdc42dc66529c3c65b5311d709
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0031d018dd400ecb1762a59e2a3a7907cada91ded4059b166bcd56fc6ab9995ab12caad80822750a269361c617abab31cb80612604bccd9771d112bc186ab445
|
7
|
+
data.tar.gz: 8edd821baf1efc31ce37f31930daf29b3cb997cb9ce48db4937060cc77a142e9bea44b8a077ed80d51a52b17993e38fe4b13be717903d58b9653853fc2b81905
|
data/.circleci/config.yml
CHANGED
@@ -1,17 +1,45 @@
|
|
1
|
+
---
|
1
2
|
version: 2.1
|
2
3
|
jobs:
|
3
4
|
test:
|
4
5
|
docker:
|
5
|
-
- image:
|
6
|
-
|
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
|
-
|
11
|
-
- run:
|
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
|
-
|
14
|
-
- run:
|
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:
|
50
|
+
triggers:
|
23
51
|
- schedule:
|
24
52
|
cron: "0 0 * * *"
|
25
53
|
filters:
|
data/.github/FUNDING.yml
ADDED
data/.standard.yml
ADDED
data/Gemfile
CHANGED
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
|
-
*
|
19
|
-
*
|
20
|
-
*
|
21
|
-
*
|
22
|
-
*
|
23
|
-
*
|
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
|
62
|
+
Auto-review on GitHub opened Pull Rquests to follow code consistency
|
56
63
|
|
57
64
|
```bash
|
58
|
-
bin/lint-
|
65
|
+
bin/lint-pr
|
59
66
|
```
|
60
67
|
|
61
|
-
Check
|
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
|
4
|
-
require
|
3
|
+
require "bundler/gem_tasks"
|
4
|
+
require "rake/testtask"
|
5
5
|
|
6
6
|
Rake::TestTask.new(:test) do |t|
|
7
|
-
t.libs <<
|
8
|
-
t.libs <<
|
9
|
-
t.test_files = FileList[
|
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
|
data/_config.yml
CHANGED
@@ -1 +1,2 @@
|
|
1
|
-
|
1
|
+
---
|
2
|
+
theme: jekyll-theme-architect
|
data/bin/test
CHANGED
@@ -1,26 +1,33 @@
|
|
1
1
|
#!/usr/bin/env bash
|
2
2
|
|
3
|
-
set -
|
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
|
23
|
+
rails app:template LOCATION=../../template.rb
|
17
24
|
else
|
18
|
-
rails new test_tmpl
|
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-
|
56
|
+
CIRCLECI=false bin/lint-pr -f text
|
47
57
|
|
48
58
|
echo " => Run git hooks verifications"
|
49
|
-
bin/git-hooks/post-merge
|
50
|
-
CIRCLECI=false bin/git-hooks/pre-push
|
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
|
data/jt_tools.gemspec
CHANGED
@@ -1,25 +1,25 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
lib = File.expand_path(
|
3
|
+
lib = File.expand_path("lib", __dir__)
|
4
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
5
|
-
require
|
5
|
+
require "jt_tools/version"
|
6
6
|
|
7
7
|
Gem::Specification.new do |spec|
|
8
|
-
spec.name =
|
8
|
+
spec.name = "jt_tools"
|
9
9
|
spec.version = JtTools::VERSION
|
10
|
-
spec.authors = [
|
11
|
-
spec.email = [
|
10
|
+
spec.authors = ["Paul Keen"]
|
11
|
+
spec.email = ["pftg@users.noreply.github.com"]
|
12
12
|
|
13
|
-
spec.summary =
|
14
|
-
spec.description =
|
15
|
-
spec.homepage =
|
16
|
-
spec.license =
|
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[
|
19
|
-
spec.metadata[
|
20
|
-
spec.metadata[
|
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
|
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 = [
|
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.
|
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
|
-
|
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
|
-
|
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:
|
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
|
97
|
+
name: Restore Jest Cache
|
64
98
|
keys:
|
65
|
-
- v1-
|
66
|
-
- v1-
|
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:
|
70
|
-
command:
|
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
|
114
|
+
name: Save Jest Cache
|
115
|
+
key: jest-cache-v1-{{ arch }}-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}
|
74
116
|
paths:
|
75
|
-
-
|
76
|
-
key: v1-dependencies-{{ checksum "Gemfile.lock" }}
|
117
|
+
- tmp/cache/jest
|
77
118
|
|
78
119
|
- run: bin/rails db:schema:load
|
79
|
-
|
120
|
+
# rails test
|
80
121
|
|
81
122
|
# collect reports
|
82
123
|
- store_test_results:
|
83
|
-
path: ./
|
124
|
+
path: ./tmp/reports/
|
84
125
|
- store_artifacts:
|
85
126
|
path: ./coverage
|
86
127
|
lint:
|
87
128
|
docker:
|
88
|
-
- image:
|
129
|
+
- image: cimg/ruby:2.7-node
|
89
130
|
environment:
|
90
131
|
DISABLE_SPRING: 1
|
91
132
|
BUNDLE_GEMFILE: Gemfile.tools
|
92
|
-
BUNDLE_JOBS:
|
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
|
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-
|
164
|
+
- run: bin/lint-pr
|
122
165
|
|
123
166
|
upgrade_tools:
|
124
167
|
docker:
|
125
|
-
- image:
|
168
|
+
- image: cimg/ruby:2.7-node
|
126
169
|
environment:
|
127
170
|
DISABLE_SPRING: 1
|
128
171
|
BUNDLE_GEMFILE: Gemfile.tools
|
129
|
-
BUNDLE_JOBS:
|
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
|
-
|