Skip to content

Pin platforms-js deploys to the packageVersion from metadata.json#74

Open
nadrummond wants to merge 1 commit into
mainfrom
fix/platforms-js-deploy-pinned-version
Open

Pin platforms-js deploys to the packageVersion from metadata.json#74
nadrummond wants to merge 1 commit into
mainfrom
fix/platforms-js-deploy-pinned-version

Conversation

@nadrummond

Copy link
Copy Markdown
Contributor

Summary

Part of n3oltd/work#736 (Step 3).

The install step in n3o-platforms-js-deploy.yml referenced steps.latest-json-metadata.outputs.deploymentVersion — an output the metadata step never sets — so it expanded to an empty string and npm install "@n3oltd/platforms-js-<sub>@" resolved the latest dist-tag. Every deploy (QA and prod) shipped whatever was last published, ignoring the version pinned in the deployments repo.

Changes

  • Install now uses the packageVersion output. (packageVersion is also the correct field — deploymentVersion is the deployments-repo folder name, e.g. 2026.02.04.2, not a valid npm version like 2026.2.4-303.)
  • The metadata step fails fast if packageVersion is empty/null, so a bad metadata file can never silently mean latest again.
  • Removes the n3o-trigger-platforms-js-deployment-qa action, unused once fe-platforms drives QA deployments through the n3o CLI.

⚠️ Merge order

Merge after n3oltd/fe-platforms#887 has merged and produced at least one fresh metadata commit in the deployments repo. QA's latest/metadata.json currently pins 2026.2.4-303 from February — merging this PR first would roll QA back to that build on the next deploy. The action removal also requires #887 to be merged first, as fe-platforms main references it until then.

🤖 Generated with Claude Code

The install step referenced steps.latest-json-metadata.outputs.deploymentVersion,
an output that was never set, so it expanded to an empty string and
'npm install @n3oltd/platforms-js-<sub>@' resolved the latest dist-tag.
Every deploy (QA and prod) therefore shipped whatever was last published,
ignoring the version pinned in the deployments repo.

The install now uses the packageVersion output (the npm version; the
deploymentVersion field is the deployments-repo folder name and is not
a valid npm version), and the metadata step fails fast if packageVersion
is missing so a bad metadata file can never silently mean latest again.

Also removes the n3o-trigger-platforms-js-deployment-qa action, unused
once fe-platforms drives QA deployments through the n3o CLI.

Part of n3oltd/work#736 (Step 3).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.

1 participant