Repository navigation
ci: replace the per-package lint and test workflows with one workflow - #110
Merged
Merged
Conversation
Pin checkout, setup-node and create-pull-request to release SHAs, set persist-credentials: false on every checkout, and give every workflow top-level permissions. Add zizmor with adhoc-packages off, since .npmrc sets package-lock=false. Remove the four NPM_TOKEN publish workflows; release.yml publishes over trusted publishing.
ci.yml picks packages with paths-filter (own directory, the workspace packages it tests against, shared root files), runs one root lint, a coverage matrix per package and Node version, and an always-reporting ci-ok job to require on main. A manual run tests every package. pr-title.yml checks PR titles against conventional commits, skipping uppt's release PRs.
# Conflicts: # .github/workflows/lint-aliases.yml # .github/workflows/lint-core.yml # .github/workflows/lint-fetchindex.yml # .github/workflows/lint-newest.yml # .github/workflows/lint-oldest.yml # .github/workflows/lint-opt.yml # .github/workflows/lint-parsefiles.yml # .github/workflows/lint-ranges.yml # .github/workflows/lint-static.yml # .github/workflows/lint-translate.yml # .github/workflows/lint.yml # .github/workflows/tests-core.yml # .github/workflows/tests-fetchindex.yml # .github/workflows/tests-newest.yml # .github/workflows/tests-oldest.yml # .github/workflows/tests-opt.yml # .github/workflows/tests-parsefiles.yml # .github/workflows/tests-ranges.yml # .github/workflows/tests-static.yml # .github/workflows/tests-translate.yml
Draft
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #109.
Added
changesuses dorny/paths-filter to pick the packages to test: each package's own directory, the workspace packages it tests against, and shared root files (package.json, .c8rc.json, .npmrc, ci.yml). A manual run tests every package with a coverage script.lintruns the rootnpm run lintand the repository.url check from lint.yml. The root oxlint and oxfmt configs already cover every package.testrunsnpm run coveragefor each picked package on Node current, lts/* and lts/-1.ci-okalways runs and fails if any job failed or was cancelled. It's meant to be the one required check, since path-filtered jobs that skip never report.release/v*PRs, which are titled with the bare version.Changed
Removed
tests.Checked locally: actionlint, zizmor,
npm run lint, and the install and coverage commands for all nine packages.