Skip to content

Commit 2ff6bbb

Browse files
committed
chore: replace volta with mise
1 parent b7cfd31 commit 2ff6bbb

4 files changed

Lines changed: 28 additions & 26 deletions

File tree

AGENTS.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@
4343
- Do not introduce OpenUPM publish credentials into `BuildPackage`.
4444
- `PublishPackage` and `PublishE2EPackage` must publish the tarball artifact, not the source checkout.
4545
- Keep `npm publish --ignore-scripts` in the publish stage so publish-time hooks cannot execute there.
46-
- Keep the `BuildPackage` container image aligned with `package.json` Volta Node major. The YAML uses one hardcoded `nodeMajorVersion` and asserts it against `package.json`.
47-
- Read the npm version from `package.json` instead of hardcoding it in multiple places.
46+
- Keep the `BuildPackage` container image aligned with `mise.toml` Node major. The YAML uses one hardcoded `nodeMajorVersion` and asserts it against `mise.toml`.
47+
- Read the npm version from `mise.toml` instead of hardcoding it in multiple places.
4848
- Keep `prepare`/Husky for local development, but disable Husky during CI dependency installation in `BuildPackage`.
4949
- Use `e2eTest=true` to route a run to the Verdaccio-based e2e publish stage. Omitted or `false` means normal OpenUPM publish.
5050

@@ -54,7 +54,7 @@
5454
- For Azure pipeline debugging, prefer preserving native command output instead of wrapping failures in generic helper scripts.
5555
- Keep clone/LFS/submodule operations in explicit script steps so their stderr/stdout remains parsable in Azure logs.
5656
- If Git LFS behavior changes, check both the container image contents and the effective Git config seen inside `BuildPackage`.
57-
- If a pipeline tool version changes, verify both the YAML `nodeMajorVersion` and the `package.json` Volta values.
57+
- If a pipeline tool version changes, verify both the YAML `nodeMajorVersion` and the `mise.toml` values.
5858
- When queueing Azure via REST API from a non-default branch of this repo, set `sourceBranch` so the run uses that branch's pipeline definition instead of the default branch.
5959
- Verdaccio e2e config lives at `test/verdaccio/config.yaml`.
6060
- Manual e2e fixture for this repo:
@@ -88,5 +88,5 @@ Conflict` from the publish step.
8888

8989
## Configuration & Environment Notes
9090

91-
- Node tooling is pinned via Volta in `package.json`.
91+
- Node tooling is pinned via mise in `mise.toml`.
9292
- Pipeline variables are expected by `azure-pipelines.yml`; see `README.md` for usage examples.

azure-pipelines.yml

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -84,14 +84,15 @@ stages:
8484
8585
- script: |
8686
set -euo pipefail
87-
EXPECTED_NODE_MAJOR=$(node -p 'require("./package.json").volta.node.split(".")[0]')
88-
EXPECTED_NPM_VERSION=$(node -p 'require("./package.json").volta.npm')
89-
echo "Expected Node major from package.json: $EXPECTED_NODE_MAJOR"
90-
echo "Expected npm version from package.json: $EXPECTED_NPM_VERSION"
87+
EXPECTED_NODE_VERSION=$(sed -n 's/^node = "\(.*\)"/\1/p' mise.toml)
88+
EXPECTED_NODE_MAJOR=${EXPECTED_NODE_VERSION%%.*}
89+
EXPECTED_NPM_VERSION=$(sed -n 's/^npm = "\(.*\)"/\1/p' mise.toml)
90+
echo "Expected Node major from mise.toml: $EXPECTED_NODE_MAJOR"
91+
echo "Expected npm version from mise.toml: $EXPECTED_NPM_VERSION"
9192
if [ "$EXPECTED_NODE_MAJOR" != "$(nodeMajorVersion)" ]; then
92-
echo "Configured nodeMajorVersion does not match package.json volta.node"
93+
echo "Configured nodeMajorVersion does not match mise.toml node"
9394
echo "configured: $(nodeMajorVersion)"
94-
echo "package.json: $EXPECTED_NODE_MAJOR"
95+
echo "mise.toml: $EXPECTED_NODE_MAJOR"
9596
exit 1
9697
fi
9798
echo "##vso[task.setvariable variable=npmVersion;]$EXPECTED_NPM_VERSION"
@@ -342,14 +343,15 @@ stages:
342343

343344
- script: |
344345
set -euo pipefail
345-
EXPECTED_NODE_MAJOR=$(node -p 'require("./package.json").volta.node.split(".")[0]')
346-
EXPECTED_NPM_VERSION=$(node -p 'require("./package.json").volta.npm')
347-
echo "Expected Node major from package.json: $EXPECTED_NODE_MAJOR"
348-
echo "Expected npm version from package.json: $EXPECTED_NPM_VERSION"
346+
EXPECTED_NODE_VERSION=$(sed -n 's/^node = "\(.*\)"/\1/p' mise.toml)
347+
EXPECTED_NODE_MAJOR=${EXPECTED_NODE_VERSION%%.*}
348+
EXPECTED_NPM_VERSION=$(sed -n 's/^npm = "\(.*\)"/\1/p' mise.toml)
349+
echo "Expected Node major from mise.toml: $EXPECTED_NODE_MAJOR"
350+
echo "Expected npm version from mise.toml: $EXPECTED_NPM_VERSION"
349351
if [ "$EXPECTED_NODE_MAJOR" != "$(nodeMajorVersion)" ]; then
350-
echo "Configured nodeMajorVersion does not match package.json volta.node"
352+
echo "Configured nodeMajorVersion does not match mise.toml node"
351353
echo "configured: $(nodeMajorVersion)"
352-
echo "package.json: $EXPECTED_NODE_MAJOR"
354+
echo "mise.toml: $EXPECTED_NODE_MAJOR"
353355
exit 1
354356
fi
355357
echo "##vso[task.setvariable variable=npmVersion;]$EXPECTED_NPM_VERSION"
@@ -419,14 +421,15 @@ stages:
419421

420422
- script: |
421423
set -euo pipefail
422-
EXPECTED_NODE_MAJOR=$(node -p 'require("./package.json").volta.node.split(".")[0]')
423-
EXPECTED_NPM_VERSION=$(node -p 'require("./package.json").volta.npm')
424-
echo "Expected Node major from package.json: $EXPECTED_NODE_MAJOR"
425-
echo "Expected npm version from package.json: $EXPECTED_NPM_VERSION"
424+
EXPECTED_NODE_VERSION=$(sed -n 's/^node = "\(.*\)"/\1/p' mise.toml)
425+
EXPECTED_NODE_MAJOR=${EXPECTED_NODE_VERSION%%.*}
426+
EXPECTED_NPM_VERSION=$(sed -n 's/^npm = "\(.*\)"/\1/p' mise.toml)
427+
echo "Expected Node major from mise.toml: $EXPECTED_NODE_MAJOR"
428+
echo "Expected npm version from mise.toml: $EXPECTED_NPM_VERSION"
426429
if [ "$EXPECTED_NODE_MAJOR" != "$(nodeMajorVersion)" ]; then
427-
echo "Configured nodeMajorVersion does not match package.json volta.node"
430+
echo "Configured nodeMajorVersion does not match mise.toml node"
428431
echo "configured: $(nodeMajorVersion)"
429-
echo "package.json: $EXPECTED_NODE_MAJOR"
432+
echo "mise.toml: $EXPECTED_NODE_MAJOR"
430433
exit 1
431434
fi
432435
echo "##vso[task.setvariable variable=npmVersion;]$EXPECTED_NPM_VERSION"

mise.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[tools]
2+
node = "22.0.0"
3+
npm = "10.9.4"

package.json

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,5 @@
4545
"prettier": "^3.2.5",
4646
"should": "^13.2.3",
4747
"typescript": "^5.5.4"
48-
},
49-
"volta": {
50-
"node": "22.0.0",
51-
"npm": "10.9.4"
5248
}
5349
}

0 commit comments

Comments
 (0)