download-artifact/.github/workflows/check-dist.yml

53 lines
1.4 KiB
YAML
Raw Normal View History

# `dist/index.js` is a special file in Actions.
# When you reference an action with `uses:` in a workflow,
# `index.js` is the code that will run.
# For our project, we generate this file through a build process
# from other source files.
# We need to make sure the checked-in `index.js` actually matches what we expect it to be.
fix: ensure that the right version of NodeJS is installed It's smart to keep the NodeJS version pinned so we can run all build jobs consistently. Otherwise, we might run into some versions mismatch like below: ``` npm ERR! While resolving: @typescript-eslint/parser@2.30.0 npm ERR! Found: eslint@7.4.0 npm ERR! node_modules/eslint npm ERR! dev eslint@"^7.4.0" from the root project npm ERR! peer eslint@"^5.0.0 || ^6.0.0 || ^7.0.0" from @typescript-eslint/eslint-plugin@4.11.1 npm ERR! node_modules/@typescript-eslint/eslint-plugin npm ERR! @typescript-eslint/eslint-plugin@">=2.25.0" from eslint-plugin-github@4.1.1 npm ERR! node_modules/eslint-plugin-github npm ERR! dev eslint-plugin-github@"^4.1.1" from the root project npm ERR! 7 more (@typescript-eslint/experimental-utils, ...) npm ERR! npm ERR! Could not resolve dependency: npm ERR! peer eslint@"^5.0.0 || ^6.0.0" from @typescript-eslint/parser@2.30.0 npm ERR! node_modules/@typescript-eslint/parser npm ERR! dev @typescript-eslint/parser@"^2.30.0" from the root project npm ERR! @typescript-eslint/parser@">=2.25.0" from eslint-plugin-github@4.1.1 npm ERR! node_modules/eslint-plugin-github npm ERR! dev eslint-plugin-github@"^4.1.1" from the root project npm ERR! npm ERR! Conflicting peer dependency: eslint@6.8.0 npm ERR! node_modules/eslint npm ERR! peer eslint@"^5.0.0 || ^6.0.0" from @typescript-eslint/parser@2.30.0 npm ERR! node_modules/@typescript-eslint/parser npm ERR! dev @typescript-eslint/parser@"^2.30.0" from the root project npm ERR! @typescript-eslint/parser@">=2.25.0" from eslint-plugin-github@4.1.1 npm ERR! node_modules/eslint-plugin-github npm ERR! dev eslint-plugin-github@"^4.1.1" from the root project ```
2022-10-13 11:53:17 +00:00
name: Check dist
on:
push:
branches:
- main
paths-ignore:
- '**.md'
pull_request:
paths-ignore:
- '**.md'
workflow_dispatch:
jobs:
check-dist:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set Node.js 12.x
uses: actions/setup-node@v1
with:
node-version: 12.x
- name: Install dependencies
run: npm ci
- name: Rebuild the dist/ directory
run: npm run build
- name: Compare the expected and actual dist/ directories
run: |
if [ "$(git diff --ignore-space-at-eol dist/ | wc -l)" -gt "0" ]; then
echo "Detected uncommitted changes after build. See status below:"
git diff
exit 1
fi
id: diff
# If index.js was different than expected, upload the expected version as an artifact
- uses: actions/upload-artifact@v2
if: ${{ failure() && steps.diff.conclusion == 'failure' }}
with:
name: dist
path: dist/