ci: install jolt via the install script; CLI is jolt, not joltc - #2
Merged
Conversation
jolt v0.5.0 renamed the CLI, so the workflow's chmod of $HOME/.jolt/joltc pointed at a path the archive no longer contains and failed under set -e once v0.5.0 became releases/latest. Install through jolt's own script instead, which owns the archive and binary naming and checks the sha, so a future rename can't break this again. The deps.edn test task and the README ran joltc too, which is not on PATH for a released install.
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.
jolt v0.5.0 renamed the CLI from
joltctojolt, which broke this repo in three places.CI (fatal). The workflow resolved the linux release asset, untarred it, and ran
chmod +x "$HOME/.jolt/joltc". The archive now containsjolt, so that path stopped existing and the step failed underset -euo pipefail— from the moment v0.5.0 becamereleases/latest. Rather than just renaming the path, this now installs through jolt's owninstallscript (--dir $HOME/.jolt), which owns the archive and binary naming and verifies the checksum. A future rename can't break it again.deps.edn— thetesttask shelled out tojoltc, which doesn't exist on PATH for anyone who installed the release (thebin/joltcshim only exists inside a jolt checkout).README — documented
joltc -M:test.No library code changes: the
jolt.timenamespaces are untouched, so consumers pinning a:git/shaare unaffected and no new tag is needed. Verified the install script against the v0.5.0 assets locally — installsjolt v0.5.0with the checksum check passing.