Skip to content

Refactor CI/CD: Use GitHub Releases for publishing, add separate test workflow - #5

Merged
aslushnikov merged 1 commit into
mainfrom
claude/pod-keeper-release-process-wkjwln
Sep 24, 2026
Merged

aslushnikov merged 1 commit into
mainfrom
claude/pod-keeper-release-process-wkjwln

Conversation

@aslushnikov

Copy link
Copy Markdown
Contributor

Summary

This PR refactors the CI/CD pipeline to use GitHub Releases as the trigger for NPM publishing instead of git tags, adds a dedicated test workflow for pull requests and main branch pushes, and updates development documentation.

Key Changes

  • Publishing trigger: Changed from workflow_dispatch + tag push to release: [published] event, allowing manual control over when releases are published to NPM
  • Pre-release support: Added logic to publish pre-releases (versions with - suffix) under the @next tag, while stable releases use @latest
  • Separate test workflow: Created new .github/workflows/tests.yml that runs on pull requests and main branch pushes, decoupling testing from publishing
  • Simplified publish workflow: Removed Setup Node.js step (pnpm handles this), consolidated build steps, and removed --provenance flag
  • Updated action versions: Bumped actions/checkout from v4 to v6, pinned pnpm/action-setup to specific commit hash
  • Go module caching: Added explicit go-version-file and cache-dependency-path configuration for better caching
  • Development documentation: Updated README with clearer Development and Releasing sections, including step-by-step release instructions
  • Package.json improvements:
    • Added packageManager field to enforce pnpm 11.5.0
    • Added engines and devEngines for Node.js version management
    • Added build and build:deadmanswitch npm scripts for consistency
  • pnpm workspace config: Added allowBuilds configuration for esbuild

Notable Implementation Details

The new release process requires manual GitHub Release creation after pushing version tags, giving maintainers explicit control over publication timing. Pre-release detection uses bash pattern matching on the version string extracted from git ref names.

https://claude.ai/code/session_0181Y7K8eCvv8sCqy37osTXJ

- pin pnpm via packageManager and Node via devEngines
- CI installs pnpm and Node from package.json
- publish to npm when a GitHub Release is published (prereleases go to @next)
- add a Tests workflow for main and PRs

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0181Y7K8eCvv8sCqy37osTXJ
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-24T15:21:39.946090Z 99093c7 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@aslushnikov
aslushnikov merged commit c1ff908 into main Sep 24, 2026
5 checks passed
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