mirror of
https://github.com/jdx/mise-action.git
synced 2026-05-14 22:00:34 +00:00
The cache key was being computed before setEnvVars() runs, so the environment input was never reflected in the cache key. This meant different environments would share the same cache slot. Now processCacheKeyTemplate() checks the environment input directly before falling back to process.env.MISE_ENV, ensuring the cache key includes the environment value even at cache-restore time. Also clarified action.yml description to remove confusing reference to env input. Fixes issue identified by Greptile review.
100 lines
3.5 KiB
YAML
100 lines
3.5 KiB
YAML
name: mise action
|
|
description: Actions for working with mise runtime manager
|
|
author: Jeff Dickey <@jdx>
|
|
branding:
|
|
icon: arrow-down-circle
|
|
color: purple
|
|
inputs:
|
|
version:
|
|
required: false
|
|
description: The version of mise to use. If not specified, will use the latest release.
|
|
sha256:
|
|
required: false
|
|
description: The SHA256 checksum of the mise binary to verify the download.
|
|
mise_dir:
|
|
required: false
|
|
description: |
|
|
The directory that mise will be installed to, defaults to $HOME/.local/share/mise
|
|
Or $XDG_DATA_HOME/mise if $XDG_DATA_HOME is set.
|
|
Or $MISE_DATA_DIR if $MISE_DATA_DIR is set.
|
|
tool_versions:
|
|
required: false
|
|
description: If present, this value will be written to the .tool-versions file
|
|
mise_toml:
|
|
required: false
|
|
description: If present, this value will be written to the mise.toml file
|
|
install:
|
|
required: false
|
|
default: "true"
|
|
description: if false, will not run `mise install`
|
|
install_args:
|
|
required: false
|
|
description: Arguments to pass to `mise install` such as "bun" to only install bun
|
|
install_dir:
|
|
required: false
|
|
description: deprecated
|
|
cache:
|
|
required: false
|
|
default: "true"
|
|
description: if false, action will not read or write to cache
|
|
cache_save:
|
|
required: false
|
|
default: "true"
|
|
description: if false, action will not write to cache
|
|
cache_key_prefix:
|
|
required: false
|
|
default: "mise-v1"
|
|
description: The prefix key to use for the cache, change this to invalidate the cache
|
|
cache_key:
|
|
required: false
|
|
description: |
|
|
Override the complete cache key (ignores all other cache key options).
|
|
Supports template variables: {{version}}, {{cache_key_prefix}}, {{platform}}, {{file_hash}},
|
|
{{mise_env}}, {{install_args_hash}}, {{default}}, {{env.VAR_NAME}} for environment variables,
|
|
and conditional logic like {{#if version}}...{{/if}}
|
|
experimental:
|
|
required: false
|
|
default: "false"
|
|
description: if true, will use experimental features
|
|
log_level:
|
|
required: false
|
|
default: "info"
|
|
description: The log level to use for the action
|
|
working_directory:
|
|
required: false
|
|
description: The directory that mise runs in
|
|
reshim:
|
|
required: false
|
|
default: "false"
|
|
description: if true, will run `mise reshim --all` after setting up mise
|
|
add_shims_to_path:
|
|
required: false
|
|
default: "true"
|
|
description: if false, will not add mise shims directory to PATH
|
|
github_token:
|
|
required: false
|
|
description: |
|
|
GitHub token for API authentication to avoid rate limits when installing GitHub-hosted tools.
|
|
Defaults to the automatic GitHub token.
|
|
default: ${{ github.token }}
|
|
fetch_from_github:
|
|
required: false
|
|
default: "true"
|
|
description: If true (default), fetch the mise binary from GitHub. If false and using the latest version, fetch from mise.jdx.dev instead.
|
|
env:
|
|
description: "Automatically load mise env vars into GITHUB_ENV. Note that PATH modifications are not part of this."
|
|
required: false
|
|
default: "true"
|
|
environment:
|
|
required: false
|
|
description: |
|
|
The mise environment to use (e.g., "preview", "production").
|
|
When set, this value will be exported to GITHUB_ENV, making it available
|
|
to all subsequent workflow steps.
|
|
Note: If MISE_ENV is already set in the environment, it takes precedence over this input.
|
|
outputs:
|
|
cache-hit:
|
|
description: A boolean value to indicate if a cache was hit.
|
|
runs:
|
|
using: node24
|
|
main: dist/index.js
|