Skip to content

Manage all CI versions through mise and use binstall (backport #7393)#7409

Merged
abernix merged 3 commits into1.xfrom
mergify/bp/1.x/pr-7393
May 12, 2025
Merged

Manage all CI versions through mise and use binstall (backport #7393)#7409
abernix merged 3 commits into1.xfrom
mergify/bp/1.x/pr-7393

Conversation

@abernix
Copy link
Member

@abernix abernix commented May 6, 2025

This pull request introduces changes to the CircleCI configuration, replacing various custom installation steps with the use of mise for tool version management. These changes simplify the CI pipeline, improve maintainability, and ensure consistency across different environments. This allows:

  • Local tooling to use the same version as the CI version using a single version number source of truth.
  • Allows Renovate to be able to understand version updates.
  • Allows us to leverage pre-compiled binaries for both local and CI tooling using cargo binstall which mise supports
  • Removes a decent amount of CircleCI YAML.
  • Improve the local developer on-boarding experience for the repository.
  • Different environments for CI and Windows and local dev.

Nuances

  • To fix a Window-ism that wasn't worth battling: This changes the invocation of the cargo install'd xtask command to be invoked via $HOME/.cargo/bin/xtask (where it is installed after we install it from our source) rather than fixing the PATH. It seemed like a huge time savings to not go get that sorted.
  • mise (a package manager) is installed on Windows using scoop (a package manager that we now install directly), rather than chocolatey (a package manager that was already installed). It was tempting to use chocolatey since it was installed, but we've had many bad experiences with it at this point. The recommended way to install mise on Windows is with scoop, so that seemed like the way to go. After this initial bootstrapping, using mise all the way seemed like the way to go.
    This is an automatic backport of pull request Manage all CI versions through mise and use binstall #7393 done by Mergify.

@mergify mergify bot added the conflicts label May 6, 2025
@mergify mergify bot assigned abernix May 6, 2025
@mergify

This comment was marked as outdated.

@svc-apollo-docs
Copy link
Collaborator

svc-apollo-docs commented May 6, 2025

✅ Docs preview has no changes

The preview was not built because there were no changes.

Build ID: d79da8a693304fdd8b23adcd

@abernix abernix force-pushed the mergify/bp/1.x/pr-7393 branch from 5fb2e4c to 6f25b8f Compare May 6, 2025 19:43
@abernix abernix force-pushed the mergify/bp/1.x/pr-7393 branch 2 times, most recently from 4fec149 to 6e52771 Compare May 6, 2025 20:33
abernix added 2 commits May 6, 2025 23:33
these both need to be installed on our releasing image
@abernix abernix force-pushed the mergify/bp/1.x/pr-7393 branch from 6e52771 to 586da22 Compare May 6, 2025 20:33
@abernix abernix merged commit bb52462 into 1.x May 12, 2025
14 checks passed
@abernix abernix deleted the mergify/bp/1.x/pr-7393 branch May 12, 2025 12:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants