Skip to content

Commit 129d161

Browse files
committed
feat: integrate test framework with CI/CD pipeline
- Add comprehensive test suite for FR-01, FR-06, NFR-01, and FR-14 - Replace manual CI/CD verification with automated test execution - Create test fixtures in examples/adns-project/ (18+ files) - Add expected results structure for baseline comparisons - Enhance cross-platform hash verification with better error handling - Add code signing infrastructure (GPG + Cosign) - Document CI/CD integration and test architecture - Add release pipeline with determinism verification
1 parent 409c118 commit 129d161

53 files changed

Lines changed: 10444 additions & 172 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/RELEASE_QUICK_REF.md

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
# Quick Release Reference Card
2+
3+
Quick reference for common release operations in SysDocs.
4+
5+
---
6+
7+
## Creating Releases
8+
9+
### Standard Stable Release
10+
```bash
11+
git checkout main && git pull
12+
git tag -a v1.0.0 -m "Release v1.0.0"
13+
git push origin v1.0.0
14+
# Done! GitHub Actions handles the rest
15+
```
16+
17+
### Alpha/Beta Release
18+
```bash
19+
# Alpha
20+
git checkout alpha && git pull
21+
git tag -a v1.0.0-alpha.1 -m "Alpha release"
22+
git push origin v1.0.0-alpha.1
23+
24+
# Beta
25+
git checkout beta && git pull
26+
git tag -a v1.0.0-beta.1 -m "Beta release"
27+
git push origin v1.0.0-beta.1
28+
```
29+
30+
### Hotfix Release
31+
```bash
32+
git checkout -b hotfix/v1.0.1
33+
# Make fixes
34+
git commit -am "Fix critical bug"
35+
git checkout main && git merge hotfix/v1.0.1
36+
git tag -a v1.0.1 -m "Hotfix v1.0.1"
37+
git push origin v1.0.1 main
38+
```
39+
40+
---
41+
42+
## GitHub Secrets Setup
43+
44+
### Convert Certificate to Base64
45+
```powershell
46+
$bytes = [System.IO.File]::ReadAllBytes("cert.pfx")
47+
[Convert]::ToBase64String($bytes) | Out-File cert-base64.txt
48+
Get-Content cert-base64.txt | Set-Clipboard
49+
Remove-Item cert-base64.txt
50+
```
51+
52+
### Add to GitHub
53+
```
54+
https://github.com/CodeOOf/SysDocs/settings/secrets/actions
55+
→ New repository secret
56+
→ NAME: CODE_SIGNING_CERT
57+
→ VALUE: (paste base64)
58+
```
59+
60+
---
61+
62+
## Local Signing
63+
64+
### Sign All Binaries
65+
```bash
66+
# Windows
67+
make sign
68+
69+
# Or directly
70+
pwsh -File scripts/sign-assemblies.ps1
71+
```
72+
73+
### Verify Signatures
74+
```bash
75+
make verify-signatures
76+
77+
# Or check specific file
78+
Get-AuthenticodeSignature path\to\file.exe
79+
```
80+
81+
---
82+
83+
## Monitoring
84+
85+
### Watch Release Progress
86+
```
87+
https://github.com/CodeOOf/SysDocs/actions
88+
```
89+
90+
### Download Latest Release
91+
```
92+
https://github.com/CodeOOf/SysDocs/releases/latest
93+
```
94+
95+
---
96+
97+
## Troubleshooting
98+
99+
### Delete Failed Release
100+
```bash
101+
gh release delete v1.0.0 --yes
102+
git push origin :refs/tags/v1.0.0
103+
```
104+
105+
### Test Certificate Password
106+
```powershell
107+
$cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2
108+
$cert.Import("cert.pfx", "password", "DefaultKeySet")
109+
# Success = correct password
110+
```
111+
112+
### View Detailed Logs
113+
```
114+
https://github.com/CodeOOf/SysDocs/actions
115+
→ Click workflow run
116+
→ Click job
117+
→ Expand steps
118+
```
119+
120+
---
121+
122+
## Required Secrets
123+
124+
| Secret | Purpose |
125+
|--------|---------|
126+
| `CODE_SIGNING_CERT` | Base64 certificate (Required) |
127+
| `CODE_SIGNING_PASSWORD` | Certificate password (Required) |
128+
| `NUGET_API_KEY` | Publish to NuGet.org (Optional) |
129+
| `DOCKER_USERNAME` | Docker Hub username (Optional) |
130+
| `DOCKER_PASSWORD` | Docker Hub token (Optional) |
131+
132+
---
133+
134+
## Version Naming
135+
136+
```
137+
v<major>.<minor>.<patch>[-<prerelease>]
138+
139+
Examples:
140+
✅ v1.0.0 Stable
141+
✅ v1.0.0-alpha.1 Alpha
142+
✅ v1.0.0-beta.2 Beta
143+
✅ v1.0.0-rc.1 Release candidate
144+
❌ v1.0.0.1 Wrong format
145+
❌ 1.0.0 Missing 'v' prefix
146+
```
147+
148+
---
149+
150+
## Full Documentation
151+
152+
- **Complete Guide**: [GITHUB_RELEASE_PROCESS.md](GITHUB_RELEASE_PROCESS.md)
153+
- **Code Signing**: [CODE_SIGNING_GUIDE.md](CODE_SIGNING_GUIDE.md)
154+
- **Requirements**: [REQUIREMENTS_MATRIX.md](../project/REQUIREMENTS_MATRIX.md)

0 commit comments

Comments
 (0)