Repository navigation
Fix GitHub Actions CI and package/site publishing - #161
Merged
Merged
Conversation
- Use local reusable workflow refs so PRs test their own workflow changes - Periodic update: run once daily (cron was every minute of hour 8), install libidn-dev, fix broken step outputs / empty ref on schedule, replace archived repo-sync/pull-request with peter-evans/create-pull-request - Site: build with setup-ruby on the runner (jekyll-action container lacked cmake for asn_parser) and deploy the build artifact to gh-pages - NPM: drop unsupported `cache: bun`, publish the packed tgz with npm using trusted publishing / NPM_TOKEN instead of GITHUB_TOKEN - PyPI: upload the built dist from CI, depend on the build job, grant id-token for trusted publishing; produce a pure wheel that includes data - Labeler v5 config, bump actions to Node 24 majors Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01A7iNWzEEZrwfmb3a8J3F7L
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.
Summary
Fixes the workflows that have been failing on
main. Each fix below is matched to the error in its run logs.idn-rubyfailed to build becauselibidn-devwas missing. The cron* 8 * * *ran every minute of hour 8. On a scheduleinputs.refwas empty, and the$GITHUB_OUTPUTsyntax was broken.libidn-dev/cmake. Use the cron17 8 * * *. Default the branch toauto-update-botand fix the step outputs. Replace the archivedrepo-sync/pull-requestandgit-auto-commit-actionwithpeter-evans/create-pull-request. Remove the trailing CI jobs, which only re-testedmain. Give thetmpcache a rolling key.asn_parserfailed withcmake: No such fileinside thejekyll-actioncontainerbuild-jekyll.ymlon the runner, then deploy the artifact togh-pageswithpeaceiris/actions-gh-pages(keeps the CNAME)Caching for 'bun' is not supported; it also usedGITHUB_TOKENagainst npmjs.orgnpm publishon the packed tgz with--provenance, using trusted publishing (id-token: write) orsecrets.NPM_TOKENpackage-pythonartifact was ever uploaded. The job didn't depend on the build.build-python.ymlnow uploadsdist/. The publish job needs the build and only downloads and publishes, withid-token: writefor trusted publishing.build = "build.py"produced alinux_x86_64wheel, which PyPI rejects, and the wheel had no data filesbuild.py). Includeshare/**in both the sdist and the wheel. The result is apy3-none-anywheel (about 18 MB).actions/labeler@v2runs on Node 12Other changes:
./.github/workflows/...instead ofhack-different/apple-knowledge/...@main, so a PR's CI runs that PR's own workflow changes.bundler-cachealready covers them.Setup needed outside the repo
publish-pypi.yml, environmentpypi-push.publish-npm.yml, environmentnode-push, or add anNPM_TOKENsecret.GITHUB_TOKENdon't trigger CI on their own.Testing
actionlintpasses on every workflow.update_version.py,poetry install,build.py,pytest(3 passed) andpoetry buildall ran. The wheel installs into a clean venv andapple_data.get_data('apns')loads.bun install,bun run build,bun run test(4 passed) andbun pm packall ran.🤖 Generated with Claude Code
https://claude.ai/code/session_01A7iNWzEEZrwfmb3a8J3F7L
Generated by Claude Code