Skip to content

ci: Remove Docker container for Verdaccio package publishing#20329

Merged
mydea merged 3 commits intodevelopfrom
fn/remove-publish-docker
Apr 15, 2026
Merged

ci: Remove Docker container for Verdaccio package publishing#20329
mydea merged 3 commits intodevelopfrom
fn/remove-publish-docker

Conversation

@mydea
Copy link
Copy Markdown
Member

@mydea mydea commented Apr 15, 2026

This PR removes some custom stuff we still had around for our E2E tests that, as far as I can tell, weren't even needed anymore. We used to spin up a minimal docker image just to publish packages to NPM, which AFAIk should not really be necessary.

Summary

  • Removes Dockerfile.publish-packages and the Docker build+run steps for publishing packages to the local Verdaccio registry during E2E tests
  • Extracts the tarball publishing logic into lib/publishPackages.ts as an importable function and calls it directly from registrySetup() — no subprocess needed
  • Removes the old publish-packages.ts standalone script
  • Removes the E2E_TEST_PUBLISH_SCRIPT_NODE_VERSION env var and Get node version steps from build.yml and canary.yml
  • Removes the PUBLISH_PACKAGES_DOCKER_IMAGE_NAME constant

The Docker container only existed to pin a Node.js version for npm publish of pre-built tarballs. Since the host already has the correct Node.js version via Volta, the container adds overhead (image build + volume mounts + --network host) without meaningful benefit.

Test plan

  • E2E tests pass in CI (the Verdaccio publish step needs to work without Docker)

🤖 Generated with Claude Code

mydea and others added 2 commits April 15, 2026 14:46
The Dockerfile.publish-packages container only provided a pinned Node.js
version for running `npm publish` of pre-built tarballs. The host already
has the correct Node.js version via Volta, so the Docker build+run overhead
is unnecessary. Run the publish script directly on the host instead.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Extract the tarball publishing logic into an importable function in
lib/publishPackages.ts and call it directly from registrySetup instead
of spawning a subprocess. Remove the old publish-packages.ts script.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@mydea mydea marked this pull request as draft April 15, 2026 12:50
@mydea mydea self-assigned this Apr 15, 2026
@mydea mydea requested review from JPeer264, Lms24 and s1gr1d April 15, 2026 13:13
@mydea mydea marked this pull request as ready for review April 15, 2026 13:14
Copy link
Copy Markdown
Member

@Lms24 Lms24 left a comment

Choose a reason for hiding this comment

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

Thanks for cleaning this up!

if: steps.restore-tarball-cache.outputs.cache-hit != 'true'
run: yarn build:tarball

- name: Get node version
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

hmm I thought we had e2e test apps running under different node versions than the repo-wide one. Is this still possible? Might have been a thing of the past though, so given our current test apps pass, no objections to the change!

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

IMHO this should still be fine because this just publishes to verdaccio which should work with any node version we use in our matrix,I think 🤔

mydea added a commit that referenced this pull request Apr 15, 2026
PR #20329 removed Docker-based package publishing, so E2E jobs can now
run in the Playwright container without Docker-in-Docker issues.

Re-add the container block to E2E jobs and use workspace-relative temp
paths (runner.temp doesn't work inside containers).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@mydea mydea merged commit 8b2a9dc into develop Apr 15, 2026
474 of 476 checks passed
@mydea mydea deleted the fn/remove-publish-docker branch April 15, 2026 13:50
mydea added a commit that referenced this pull request Apr 15, 2026
PR #20329 removed Docker-based package publishing, so E2E jobs can now
run in the Playwright container without Docker-in-Docker issues.

Re-add the container block to E2E jobs and use workspace-relative temp
paths (runner.temp doesn't work inside containers).

Co-Authored-By: Claude Opus 4.6 (1M context) <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.

2 participants