5252 run : cd spec/dummy && yarn install --no-progress --no-emoji --frozen-lockfile
5353 - name : Install Ruby Gems for package
5454 run : bundle check --path=vendor/bundle || bundle _2.5.9_ install --path=vendor/bundle --jobs=4 --retry=3
55+ - run : ls vendor/bundle/gems
5556 - name : Lint Ruby
5657 run : bundle exec rubocop
5758 - name : Install Node modules with Yarn for dummy app
@@ -61,63 +62,13 @@ jobs:
6162 with :
6263 path : spec/dummy/vendor/bundle
6364 key : spec-dummy-gem-cache-${{ hashFiles('spec/dummy/Gemfile.lock') }}-oldest
65+ - run : ls spec/dummy/vendor/bundle
6466 - name : Install Ruby Gems for dummy app
6567 run : |
6668 cd spec/dummy
6769 bundle lock --add-platform 'x86_64-linux'
6870 if ! bundle check --path=vendor/bundle; then
6971 bundle _2.5.9_ install --path=vendor/bundle --jobs=4 --retry=3 --frozen
7072 fi
71- - name : generate file system-based packs
72- run : cd spec/dummy && RAILS_ENV="test" bundle exec rake react_on_rails:generate_packs
73- - name : Detect dead code
74- run : |
75- yarn run knip
76- yarn run knip --production
77- - name : Lint JS
78- run : yarn run eslint --report-unused-disable-directives
79- - name : Check formatting
80- run : yarn start format.listDifferent
81- - name : Type-check TypeScript
82- run : yarn run type-check
83- - name : Pack for attw and publint
84- run : yarn pack -f react-on-rails.tgz
85- - name : Lint package types
86- # our package is ESM-only
87- run : yarn run attw react-on-rails.tgz --profile esm-only
88- - name : Lint package publishing
89- run : yarn run publint --strict react-on-rails.tgz
90- # We only download and run Actionlint if there is any difference in GitHub Action workflows
91- # https://github.com/rhysd/actionlint/blob/main/docs/usage.md#on-github-actions
92- - name : Check GitHub Action changes
93- id : check-workflows
94- run : |
95- git fetch origin ${{ github.event.pull_request.base.sha }}
96- if git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.sha }} | grep -q '^.github/workflows'; then
97- echo "changed=true" >> "$GITHUB_OUTPUT"
98- response=$(curl -sf https://api.github.com/repos/rhysd/actionlint/releases/latest)
99- if [ $? -eq 0 ]; then
100- actionlint_version=$(echo "$response" | jq -r .tag_name)
101- if [ -z "$actionlint_version" ]; then
102- echo "Failed to parse Actionlint version"
103- exit 1
104- fi
105- echo "actionlint_version=\"$actionlint_version\"" >> "$GITHUB_OUTPUT"
106- fi
107- fi
108- - name : Setup Actionlint
109- if : steps.check-workflows.outputs.changed == 'true'
110- uses : actions/cache@v4
111- id : cache-actionlint
112- with :
113- path : ./actionlint
114- key : ${{ runner.os }}-actionlint-${{ steps.check-workflows.outputs.actionlint_version }}
115- - name : Download Actionlint
116- if : steps.check-workflows.outputs.changed == 'true' && steps.cache-actionlint.outputs.cache-hit != 'true'
117- run : bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash)
118- - name : Lint GitHub Actions
119- if : steps.check-workflows.outputs.changed == 'true'
120- run : |
121- echo "::add-matcher::.github/actionlint-matcher.json"
122- SHELLCHECK_OPTS="-S warning" ./actionlint -color
123- shell : bash
73+ - run : ls vendor/bundle/gems
74+ - run : ls spec/dummy/vendor/bundle/gems
0 commit comments