Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Principle:Cypress io Cypress Package Publishing

From Leeroopedia
Knowledge Sources
Domains Release_Engineering, Package_Management
Last Updated 2026-02-12 00:00 GMT

Overview

A coordinated multi-artifact release mechanism that publishes npm packages and uploads platform-specific binaries to a CDN in a single atomic release operation.

Description

Package publishing for Cypress involves two distinct artifacts: npm packages (the CLI and supporting libraries) and platform-specific binaries (Electron app for macOS/Linux/Windows). Both must be released atomically to ensure version consistency. The npm packages are published via Lerna to the npm registry, while binaries are uploaded to an S3-backed CDN and registered in a version manifest.

The release process also handles the transition from beta to stable: a separate script converts beta npm packages to stable by updating package.json versions and re-publishing.

Usage

Use this principle during the final stage of the Cypress release pipeline, after all tests have passed and binaries are signed.

Theoretical Basis

Release Pipeline:
1. prepare-release-artifacts.js → Copy and prepare files
2. npm-release.js main() →
   a. releasePackages() → Lerna publish to npm
   b. Verify packages are accessible on npm
3. binary/index.js →
   a. deploy.upload() → Upload binary zip to S3 CDN
   b. deploy.release() → Update version manifest on S3
4. Verify binary is downloadable

Related Pages

Implemented By

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment