jdx / mise

dev tools, env vars, task runner
https://mise.jdx.dev
MIT License
8.07k stars 211 forks source link

When will "mise install" not install tools? #2257

Open bhollis opened 4 weeks ago

bhollis commented 4 weeks ago

This has been happening on our GitHub runners and I'm not sure why. We clearly have ruby@3.3.0 in the set of tools to be installed, mise install says all runtimes are installed, but then mise ls says Ruby is missing:

Run mise install --verbose
[DEBUG] ARGS: mise install --verbose
[DEBUG] Config {
    Config Files: [
        "~/actions-runner/_work/stately/stately/.mise.toml",
        "~/actions-runner/_work/stately/stately/.ruby-version",
        "~/actions-runner/_work/stately/stately/.nvmrc",
        "~/.config/mise/config.toml",
    ],
}
[DEBUG] ToolRequestSet.build(102.106µs): ToolRequestSet: cargo:cargo-binstall@latest node@20.13.1 ruby@3.3.0 go@1.22.3 java@temurin-21 cargo:cargo-cranky@0.3.0 cargo:protoc-gen-prost-crate@0.3.1 golangci-lint@1.58.1 go:github.com/segmentio/golines@0.12.2 go:github.com/drshriveer/gtools/genum/cmd/genum@v0.0.0-20240314211858-40dccd828943 cargo:cross@0.2.5 cargo:wasm-bindgen-cli@0.2.92 buf@1.32.2 sccache@0.8.1 npm:ts-proto@1.176.1 npm:@bufbuild/protoc-gen-es@1.10.0 go:google.golang.org/protobuf/cmd/protoc-gen-go@1.34.1 go:github.com/planetscale/vtprotobuf/cmd/protoc-gen-go-vtproto@0.6.0 cargo:protoc-gen-prost-serde@0.3.0 cargo:protoc-gen-tonic@0.4.0 cargo:protoc-gen-prost@0.3.1

[INFO] mise all runtimes are installed
Run mise ls
buf                                                             1.32.2                              ~/actions-runner/_work/stately/stately/.mise.toml    1.32.2                            
cargo:cargo-binstall                                            1.6.8                               ~/.config/mise/config.toml                           latest                            
cargo:cargo-cranky                                              0.3.0                               ~/actions-runner/_work/stately/stately/.mise.toml    0.3.0                             
cargo:cross                                                     0.2.5                               ~/actions-runner/_work/stately/stately/.mise.toml    0.2.5                             
cargo:protoc-gen-prost                                          0.3.1                               ~/actions-runner/_work/stately/stately/.mise.toml    0.3.1                             
cargo:protoc-gen-prost-crate                                    0.3.1                               ~/actions-runner/_work/stately/stately/.mise.toml    0.3.1                             
cargo:protoc-gen-prost-serde                                    0.3.0                               ~/actions-runner/_work/stately/stately/.mise.toml    0.3.0                             
cargo:protoc-gen-tonic                                          0.4.0                               ~/actions-runner/_work/stately/stately/.mise.toml    0.4.0                             
cargo:wasm-bindgen-cli                                          0.2.92                              ~/actions-runner/_work/stately/stately/.mise.toml    0.2.92                            
go                                                              1.22.3                              ~/actions-runner/_work/stately/stately/.mise.toml    1.22.3                            
go:github.com/drshriveer/gtools/genum/cmd/genum                 v0.0.0-20314211858-40dccd828943  ~/actions-runner/_work/stately/stately/.mise.toml    v0.0.0-20240314211858-40dccd828943
go:github.com/planetscale/vtprotobuf/cmd/protoc-gen-go-vtproto  0.6.0                               ~/actions-runner/_work/stately/stately/.mise.toml    0.6.0                             
go:github.com/segmentio/golines                                 0.12.2                              ~/actions-runner/_work/stately/stately/.mise.toml    0.12.2                            
go:google.golang.org/protobuf/cmd/protoc-gen-go                 1.34.1                              ~/actions-runner/_work/stately/stately/.mise.toml    1.34.1                            
golangci-lint                                                   1.58.1                              ~/actions-runner/_work/stately/stately/.mise.toml    1.58.1                            
java                                                            temurin-21.0.3+9.0.LTS              ~/actions-runner/_work/stately/stately/.mise.toml    temurin-21                        
node                                                            20.13.1                             ~/actions-runner/_work/stately/stately/.nvmrc        20.13.1                           
npm:@bufbuild/protoc-gen-es                                     1.10.0                              ~/actions-runner/_work/stately/stately/.mise.toml    1.10.0                            
npm:ts-proto                                                    1.176.1                             ~/actions-runner/_work/stately/stately/.mise.toml    1.176.1                           
ruby                                                            3.3.0 (missing)                     ~/actions-runner/_work/stately/stately/.ruby-version 3.3.0                             
sccache                                                         0.8.1                               ~/actions-runner/_work/stately/stately/.mise.toml    0.8.1

Interestingly, Ruby 3.3.0 is present in ~/.local/share/mise/installs/ruby/ but not in ~/.local/share/mise/shims/.

bhollis commented 4 weeks ago

Seeing this for other tools in other people's machines. e.g. cargo:protoc-gen-prost won't be present, even though it has an installs directory. mise reshim doesn't make the shim appear. mise rm cargo:protoc-gen-prost followed by mise use cargo:protoc-gen-prost makes it appear.

QMiqTx6DHn1bA9yaNaAbsD3CLG8gTmd4 commented 1 week ago

YMMV, but had the same manifestation and in the end it was caused by misconfigured PATH (Homebrew sneaked in before "mise" shims).