Repository navigation
feat(host-tools): write mise env variables, and ones below the home directory - #190
Merged
Merged
Conversation
…nfiguration back The host tools tests render mise configuration and read it back with a real mise, so the unit test job needs one on PATH. The release is more than a week old and is checked against its published checksum before it is unpacked.
…irectory, to the fleet file The global mise defaults gain an env table in github_runner_host_tools_mise_config, a variable name to a string, number or boolean. mise renders a value as a Tera template and then expands $VAR in the result, so the role doubles each dollar sign and writes a brace that would start a template tag, expression or comment as the Tera expression that renders as that brace; every value reaches the exported variable exactly as given, which the tests check by reading the rendered file back with a real mise. github_runner_host_tools_mise_env_home_relative maps a variable name to a path relative to the user's home directory and writes it as mise's home template followed by the path, so a fleet that gathers no facts can still set a value such as a shared cache directory. It shares the path validation of github_runner_host_tools_shell_env_home_relative: an absolute, empty or .. path, and a name given both as a plain value and as a path, fail the run before any file is written. The mapping alone is enough to make the role write the file.
Mearman
marked this pull request as ready for review
November 3, 2026 12:39
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
This security review couldn’t start because the paying account has exhausted its Codex allowance and has insufficient available credits. The payer can check their balance and add credits in the Codex usage dashboard, then try again. If you do not manage the paying account, contact this repository's admins. |
|
🎉 This PR is included in version 2.25.0 🎉 The release is available on:
Your semantic-release bot 📦🚀 |
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.
Adds an
envtable togithub_runner_host_tools_mise_configandgithub_runner_host_tools_mise_env_home_relativefor values that are a path below the user's home, so a fleet can manageTURBO_CACHE_DIRin mise's global config as well as in the shell startup files (#187).mise renders an env value as a Tera template and then expands
$VAR, with$$as a literal dollar, so the role doubles$and writes{{,{%and{#as the Tera expression that renders the brace. The home-relative form is written as{{ env.HOME }}/<path>. The path validation is the function the shell variant uses (absolute, empty,..and a name in both mappings fail the run).The tests read the rendered file back with a real
mise envunder a home directory whose name has a space, a quote and a dollar sign. The unit test job now installs a pinned mise release (older than a week, checked against its published checksum).Fleet inventory: