Skip to content

chore: switch to nx [EXT-7081]#2883

Merged
BobHemphill76 merged 3 commits intomainfrom
chore/ext-7081/switch-to-nx
Jan 20, 2026
Merged

chore: switch to nx [EXT-7081]#2883
BobHemphill76 merged 3 commits intomainfrom
chore/ext-7081/switch-to-nx

Conversation

@BobHemphill76
Copy link
Copy Markdown
Contributor

@BobHemphill76 BobHemphill76 commented Jan 15, 2026

  • switch from lerna to nx for publishing
  • update release.yml to be more in-line with nx configuration

I was able to canary to publish the 4 packages, this PR is me porting that code to a chore branch.

I still have publishes on main set to dry-run because I need the release.yaml file in main before I can do one last test in canary.

@contentful/app-scripts: GitHub, NPM
@contentful/create-contentful-app: GitHub, NPM
@contentful/react-apps-toolkit: GitHub, NPM
create-contentful-app: NPM

@BobHemphill76 BobHemphill76 requested review from a team as code owners January 15, 2026 23:28
if: inputs.os != 'windows-latest'
shell: bash
run: npm ci && npm run bootstrap
run: npm ci
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

no longer need lerna bootstrap step

GIT_COMMITTER_EMAIL: ${{ steps.vault.outputs.GIT_COMMITTER_EMAIL }}

- name: Version (canary branch)
- name: Push release commit + tags (canary)
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

in order to support canary releases on a dist-tag other than latest in npm we need to separate some of the nx life cycle commands so that we can call nx release publish --tag=canary. But this means that after we run the version + changelog + skip-publish via nx release that we have tags and a commit that has not been pushed.

This step pushes those commits

Comment thread package.json
"build": "nx run-many -t build",
"prepare-release": "nx release --verbose --skip-publish",
"prepare-release:canary": "nx release --preid alpha --verbose --skip-publish",
"publish-packages": "nx release publish --dry-run",
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

before I mess anything up in our public packages I want to do one last test in canary after this is main

exit $LASTEXITCODE
}

- name: Disable Nx daemon
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I assume this is all lerna nonsense and that's why it's being removed?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

yeah, it was some suggestions around some of the lerna + nx stuff to help with the windows builds

@BobHemphill76 BobHemphill76 merged commit 96d92d9 into main Jan 20, 2026
17 checks passed
@BobHemphill76 BobHemphill76 deleted the chore/ext-7081/switch-to-nx branch January 20, 2026 15:32
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.

2 participants