源文件:
12-cicd-status-and-roadmap.md# 12. CI/CD Status and Roadmap
This document records what is already implemented on this VPS and what is planned next.
# Already implemented
# Core deployment
- multi-version Node hosting with Node 18 / 20 / 22
- release layout with
current,releases, andshared - explicit fnm wrapper for non-interactive shells
- systemd-managed Node runtime
- Nginx reverse proxy to local ports
- SELinux directory and port labeling during site creation
# Site lifecycle helpers
create-node-sitebootstrap-node-siteinit-node-shared-envdeploy-node-releasecicd-deploy-node-siterollback-node-releasecleanup-node-releasesnode-cicd-webhookd
# Documentation and migration
- exported docs bundle under
/usr/local/share/sohophp/node-cicd - docs website at
https://docs.v4.sohophp.app publish-docs-sitefor docs sync and republish- tarball + checksums + manifest verification
# Verified live references
node.v4.sohophp.appon Node 22node20.v4.sohophp.appon Node 20docs.v4.sohophp.appon Node 22deploy.v4.sohophp.appas webhook endpoint
# Rollback status
Rollback has now been implemented and actually tested on docs.v4.sohophp.app by:
- switching from release
20260602152355 - back to
20260602151802 - passing healthcheck
- redeploying to a fresh latest release again
# Release cleanup status
Release cleanup has now been implemented and actually tested on docs.v4.sohophp.app by:
- dry-running with
--keep 5 --verbose - identifying 4 removable old releases
- pruning those 4 releases
- verifying exactly 5 releases remain
# Webhook deploy status
Webhook-triggered deploy has now been implemented and actually tested by:
- running
node-cicd-webhook.serviceon127.0.0.1:22103 - exposing it through
https://deploy.v4.sohophp.app - enforcing HMAC-SHA256 verification
- restricting the route to
pushonrefs/heads/main - posting a signed webhook request to
/github/node.v4.sohophp.app - deploying
node.v4.sohophp.appto release20260602162046 - pruning 2 old releases automatically after deploy
# Current gaps
The following CI/CD features are not yet implemented as first-class tooling:
- deploy success/failure notifications
- database migration hooks
- automatic rollback policy during deploy failures
- deploy audit ledger / richer deployment history output
# Workflow and webhook examples now available
The toolkit now includes ready-to-adapt examples:
examples/github-actions-node-deploy.yml.exampleexamples/gitea-actions-node-deploy.yml.exampleexamples/node-cicd-webhook.json.example
These examples show:
- syncing the repo to
/srv/git/<domain> - running
cicd-deploy-node-site - optionally pruning old releases with
cleanup-node-releases - configuring a webhook route with signed deploy triggers
# Recommended next steps
# Phase 1
- add deploy notifications
- add database migration hook support
# Phase 2
- add optional automatic rollback policy after failed deploy validation
- add deploy audit ledger / richer deployment history output
# Suggested operator order
If continuing from here, the most valuable order is:
- notifications
- database migration hooks
- auto rollback policy
- deployment audit ledger
目录
- 12. CI/CD Status and Roadmap
- Already implemented
- Core deployment
- Site lifecycle helpers
- Documentation and migration
- Verified live references
- Rollback status
- Release cleanup status
- Webhook deploy status
- Current gaps
- Workflow and webhook examples now available
- Recommended next steps
- Phase 1
- Phase 2
- Suggested operator order