feat: add E2E smoke test script and CI/CD pipeline plan
- Create scripts/smoke-test.sh for live server verification (7 checks) - Document planned GitHub Actions CI/CD pipeline in docs/ci-cd-plan.md - Integration tests deferred to future task (require test harness setup) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
37
docs/ci-cd-plan.md
Normal file
37
docs/ci-cd-plan.md
Normal file
@@ -0,0 +1,37 @@
|
||||
# CI/CD Pipeline Plan
|
||||
|
||||
## CI Workflow (on push to main + PRs)
|
||||
|
||||
### Jobs
|
||||
1. **Rust checks**
|
||||
- `cargo clippy --all-targets --all-features` (zero warnings)
|
||||
- `cargo fmt --all -- --check`
|
||||
- `cargo test --all-features`
|
||||
|
||||
2. **Frontend checks**
|
||||
- `npm run type-check` (vue-tsc)
|
||||
- `npm run lint` (eslint)
|
||||
- `npm test` (vitest)
|
||||
|
||||
3. **Script validation**
|
||||
- `bash -n` on all .sh files
|
||||
- `shellcheck` on critical scripts
|
||||
|
||||
### Merge policy
|
||||
All checks must pass before merge.
|
||||
|
||||
## Release Workflow (on tag push v*)
|
||||
|
||||
### Jobs
|
||||
1. Build Linux binary (cross-compile x86_64 + ARM64)
|
||||
2. Build frontend (`npm run build`)
|
||||
3. ISO build via SSH to build server
|
||||
4. QEMU smoke test of ISO
|
||||
|
||||
## Pre-requisites
|
||||
- GitHub Actions runners with Rust toolchain
|
||||
- SSH key for build server access
|
||||
- Branch protection on main
|
||||
- Image digest manifest from `scripts/image-versions.sh`
|
||||
|
||||
## Estimated implementation: 2 weeks
|
||||
Reference in New Issue
Block a user