Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CI improvements #33

Merged
merged 26 commits into from
Apr 24, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
f4568dd
check if parser files are generated properly
resolritter Apr 24, 2023
0663479
don't cancel checks for default branch
resolritter Apr 24, 2023
efc13e7
enable CI for drafts
resolritter Apr 24, 2023
442aead
print tools' versions
resolritter Apr 24, 2023
014ef84
fix syntax
resolritter Apr 24, 2023
daf508d
better logging
resolritter Apr 24, 2023
bb0075d
print tools' information before npm install
resolritter Apr 24, 2023
a74e759
better error message
resolritter Apr 24, 2023
4cbaffd
fix syntax
resolritter Apr 24, 2023
f4608fe
show output of git diff-index for better debugging
resolritter Apr 24, 2023
ff014bd
remove obsolete ready_for_review trigger
resolritter Apr 24, 2023
6e98e4c
better handling of failures
resolritter Apr 24, 2023
b1ffd9e
use `npm ci` for reproducible builds
resolritter Apr 24, 2023
fc086dd
less confusing message
resolritter Apr 24, 2023
d80a8c0
update the parser
resolritter Apr 24, 2023
766a9ab
pin the tree-sitter version
resolritter Apr 24, 2023
c256b66
Revert "update the parser"
resolritter Apr 24, 2023
162d737
update the package lock
resolritter Apr 24, 2023
cb91ae8
update the parser
resolritter Apr 24, 2023
fd920aa
show git diff changes
resolritter Apr 24, 2023
1560eaa
Revert "update the parser"
resolritter Apr 24, 2023
d05a682
improve CI debugging
resolritter Apr 24, 2023
030f657
undo artifacts uploading; truncate output for large diffs
resolritter Apr 24, 2023
0a61e40
show newline after truncation
resolritter Apr 24, 2023
88937a3
regenerate the parser
resolritter Apr 24, 2023
da20ce4
Revert "regenerate the parser"
resolritter Apr 24, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 38 additions & 8 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,23 +13,53 @@ on:
- synchronize
- reopened
- unlocked
- ready_for_review

jobs:
test-parsing:
if: github.event.pull_request.draft != true
concurrency:
group: ci-${{ github.event.pull_request.number || github.ref }}
group: ci-${{ github.event.pull_request.number }}
cancel-in-progress: true
runs-on: ubuntu-latest
steps:
- name: Checkout source code
uses: actions/checkout@v3

- name: Install the tools
run: npm install
- name: Setup tools
run: |
set -x
node -v
npm -v
gcc -v
npm ci
./node_modules/.bin/tree-sitter --version

- name: Run the parsing tests
- name: Generate the parser
run: npm run generate

- name: Check if auto-generated files are committed
run: |
npm run generate
npm run test-parsing
git add .
if output="$(git status --porcelain=v2)"; then
files_changed_msg="$output"

diff="$(git diff --cached --color=never)"
echo "${diff::1000}"
if [ ${#diff} -gt 1000 ]; then
echo "-- TRUNCATED --"$'\n'
fi
else
fail_code=$?
fi

if [ "${fail_code:-}" ]; then
exit $fail_code
elif [ "${files_changed_msg:-}" ]; then
>&2 echo \
"Detected changes after generating parser files:" \
$'\n'"$files_changed_msg"$'\n' \
$'\n'"Please commit those changes locally and push"
exit 1
fi

- name: Run the parsing tests
run: npm run test-parsing
2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"nan": "^2.12.1"
},
"devDependencies": {
"tree-sitter-cli": "^0.20.1"
"tree-sitter-cli": "0.20.7"
},
"scripts": {
"test": "tree-sitter test",
Expand Down