Skip to content

mise: pin mise - #2027

Open
blampe wants to merge 6 commits into
masterfrom
blampe/mise-bootstrap
Open

mise: pin mise#2027
blampe wants to merge 6 commits into
masterfrom
blampe/mise-bootstrap

Conversation

@blampe

@blampe blampe commented Jan 30, 2026

Copy link
Copy Markdown
Contributor

This generates a bootstrap script for mise. I wish the script included the commands to generate it:

mise generate bootstrap -V 2026.2.16 > ./provider-ci/internal/pkg/templates/all/scripts/mise.sh

This helps with a few things:

  • It allows us to use a pinned version of mise across local & CI. Currently we pin CI but have no control over the version people are using locally, and this can introduce issues. For example if we were to re-introduce lockfiles, we would need everyone using at least version X. Or if/when Cory's fix is merged, we'll want to upgrade everyone to use it across the board.

  • It makes "first day on the job" setup easier because the toolchain now automatically installs itself. No more "how do I get started?"

  • It might help with some of the Renovate artifact failures we've seen. At some point we introduced a host-level mise to our Makefile targets and this broke "make renovate" since it runs in an isolated environment. Now Renovate should at least be able to bootstrap mise.

@blampe
blampe requested review from a team, corymhall and pose January 30, 2026 00:37
Comment thread provider-ci/internal/pkg/templates/parameterized-go/Makefile

.make/mise_install:
@mise install -q
@./scripts/mise.sh install -q

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does the local workflow for this look like? Does this update your global version that is installed? Does mise have a way to automatically use this script instead of whatever mise you have installed? Or is that what it is doing, it's just that in the Makefile you have to use the script?

@pose

pose commented Jan 30, 2026

Copy link
Copy Markdown
Member

Is there a way we could trial this change on a smaller scale before a full ci-mgmt rollout? I am happy to un-ci-mgmt a repo and verifying this first 🙏 . As it happened with lockfiles, pulumi/go versions, etc., we end up finding problems with the approach after a while. What do you think? I'm sorry for slowing you down.

@pose pose left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(please see comment above ☝️ )

This generates a bootstrap script for mise. I wish the script
included the commands to generate it:

    mise generate bootstrap -V 2026.1.9 > ./scripts/mise

This helps with a few things:

* It allows us to use a pinned version of mise across local & CI.
  Currently we pin CI but have no control over the version people are
  using locally, and this can introduce issues. For example if we were
  to re-introduce lockfiles, we would need everyone using at least
  version X.

* It makes "first day on the job" setup easier because the toolchain
  now automatically installs itself. No more "how do I get started?"

* It *might* help with some of the Renovate artifact failures we've
  seen. At some point we introduced a host-level mise to our Makefile
  targets and this broke "make renovate" since it runs in an isolated
  environment. Now Renovate should at least be able to bootstrap mise.
@blampe
blampe force-pushed the blampe/mise-bootstrap branch from fd14c4e to fb36c04 Compare February 3, 2026 22:06
@pose

pose commented Feb 20, 2026

Copy link
Copy Markdown
Member

@blampe thanks for adding the MiseBootstrap flag 🙏

@blampe

blampe commented Feb 23, 2026

Copy link
Copy Markdown
Contributor Author

Held up by https://github.com/pulumi/pulumi-aws/actions/runs/22246530001/job/64361631729?pr=6190

Reshimming mise 20.19.5...
/home/runner/.local/share/mise/installs/node/20.19.5/bin/npm: line 75: mise: command not found
mise ERROR npm failed

added 1 package in 716ms
Reshimming mise 20.19.5...
/home/runner/.local/share/mise/installs/node/20.19.5/bin/npm: line 75: mise: command not found
mise golangci-lint@1.64.8 [2/3] checksum golangci-lint-1.64.8-linux-amd64.tar.gz
mise golangci-lint@1.64.8 [3/3] extract golangci-lint-1.64.8-linux-amd64.tar.gz
mise Extracting "/home/runner/.local/share/mise/downloads/vfox-version-fox-vfox-dotnet-8.0.20/dotnet-sdk-8.0.414-linux-x64.tar.gz" to "/home/runner/.local/share/mise/installs/vfox-version-fox-vfox-dotnet/8.0.20"
mise golangci-lint@1.64.8 ✓ installed
mise github:pulumi/pulumi@3.220.0 ✓ installed
mise vfox:version-fox/vfox-dotnet@8.0.20 ✓ installed
mise ERROR Failed to install npm:yarn@1.22.22: npm exited with non-zero status: exit code 127
mise ERROR Run with --verbose or MISE_VERBOSE=1 for more information

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants