Skip to content

Conversation

@JReinhold
Copy link
Contributor

@JReinhold JReinhold commented Aug 31, 2023

What I did

This PR fixes the issue with Angular prereleases not working in our CI anymore, because they require Node 18.

  • We now generate sandboxes both with Node 16 and Node 18. Only the Angular prerelease is on the Node 18 path, but it's set up so it's trivial to move other sandboxes over later.
  • Merged the generate sandbox workflows for main and next into one, using the strategy matrix feature instead.
  • Extracted Angular prerelease sandbox out of the regular CircleCI flow and into it's own separate that runs on Node 18. This is can also be duplicated later for other sandboxes, it's a bit hacky though.

Checklist for Contributors

Testing

The changes in this PR are covered in the following automated tests:

  • stories
  • unit tests
  • integration tests
  • end-to-end tests

Manual testing

  1. See daily CI run for this PR: https://app.circleci.com/pipelines/github/storybookjs/storybook/58601/workflows/d3394727-854d-45b6-805c-c618fe147038
  2. Merge this and trigger the sandbox generation flow. It can't be triggered until it's on the next branch because of the workflow rename, but here's a (cancelled) run where I log that the matrixes are set up correct: https://github.com/storybookjs/storybook/actions/runs/6037790919/job/16382747584

This section is mandatory for all contributions. If you believe no manual test is necessary, please state so explicitly. Thanks!

Documentation

  • Add or update documentation reflecting your changes
  • If you are deprecating/removing a feature, make sure to update
    MIGRATION.MD

Checklist for Maintainers

  • When this PR is ready for testing, make sure to add ci:normal, ci:merged or ci:daily GH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found in code/lib/cli/src/sandbox-templates.ts

  • Make sure this PR contains one of the labels below:

    Available labels
    • bug: Internal changes that fixes incorrect behavior.
    • maintenance: User-facing maintenance tasks.
    • dependencies: Upgrading (sometimes downgrading) dependencies.
    • build: Internal-facing build tooling & test updates. Will not show up in release changelog.
    • cleanup: Minor cleanup style change. Will not show up in release changelog.
    • documentation: Documentation only changes. Will not show up in release changelog.
    • feature request: Introducing a new feature.
    • BREAKING CHANGE: Changes that break compatibility in some way with current major version.
    • other: Changes that don't fit in the above categories.

🦋 Canary release

This PR does not have a canary release associated. You can request a canary release of this pull request by mentioning the @storybookjs/core team here.

core team members can create a canary release here or locally with gh workflow run --repo storybookjs/storybook canary-release-pr.yml --field pr=<PR_NUMBER>

@JReinhold JReinhold self-assigned this Aug 31, 2023
@JReinhold JReinhold added angular build Internal-facing build tooling & test updates ci:daily Run the CI jobs that normally run in the daily job. labels Aug 31, 2023
angular-prerelease-sandbox:
executor:
class: large
name: sb_playwright
Copy link
Contributor Author

Choose a reason for hiding this comment

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

sb_playwright is on Node 18, which is lucky for us.

@JReinhold JReinhold marked this pull request as ready for review August 31, 2023 14:45
env:
YARN_ENABLE_IMMUTABLE_INSTALLS: false
CLEANUP_SANDBOX_NODE_MODULES: true
strategy:
Copy link
Member

Choose a reason for hiding this comment

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

Can you follow the instructions from line 7 of this file and make sure this change works as expected?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Copy link
Contributor Author

Choose a reason for hiding this comment

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

it failed on the very last character of the workflow, which I've fixed. I don't feel it's necessary to test it again.

@yannbf yannbf merged commit 81f61a0 into next Sep 4, 2023
@yannbf yannbf deleted the fix-angular-prerelease-sandbox branch September 4, 2023 07:24
@github-actions github-actions bot mentioned this pull request Sep 4, 2023
25 tasks
@kasperpeulen kasperpeulen added the patch:yes Bugfix & documentation PR that need to be picked to main branch label Sep 8, 2023
storybook-bot pushed a commit that referenced this pull request Sep 8, 2023
…dbox

Sandboxes: Use Node 18 to generate Angular prerelease sandboxes
(cherry picked from commit 81f61a0)
@github-actions github-actions bot mentioned this pull request Sep 8, 2023
10 tasks
storybook-bot pushed a commit that referenced this pull request Sep 8, 2023
…dbox

Sandboxes: Use Node 18 to generate Angular prerelease sandboxes
(cherry picked from commit 81f61a0)
@kasperpeulen kasperpeulen removed the patch:yes Bugfix & documentation PR that need to be picked to main branch label Sep 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

angular build Internal-facing build tooling & test updates ci:daily Run the CI jobs that normally run in the daily job.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants