Thank you for contributing to action-setup-vim. This document is for development.
For testing validation for inputs and outputs, run unit tests:
npm run test
Tests for installation logic are done in CI workflows in E2E testing manner. All combinations
of inputs are tested on the workflows triggered by push
and pull_request
events.
After building and running action-setup-vim
action, the workflow verifies the post conditions
with post_action_check.ts.
In addition to type checking with TypeScript compiler, the following command checks the sources with eslint and [pretteir][].
npm run lint
Node.js version must be aligned with Node.js runtime in GitHub Actions. Check the version at
runs.using
in action.yml and use the same version for development.
When releasing v1.2.3:
- Run
$ bash scripts/prepare-release.sh v1.2.3
. It builds everything and prunesnode_modules
for removing all dev-dependencies. Then it copies built artifacts todev/v1
branch and makes a new commit and tagv1.2.3
. Finally it rearrangev1
andv1.2
tags to point the new commit. - Check changes in the created commit with
git show
. - If ok, run
$ bash ./prepare-release.sh v1.2.3 --done
to apply the release to the remote. The script will push the branch and the new tag, then force-push the existing tags.
Post-release check workflow runs to check released rhysd/action-setup-vim@v1
action.
The workflow runs when modifying CHANGELOG.md
and also runs on every Sunday 00:00 UTC.