docs: add mkdocs, update links, add architecture documentation
This commit is contained in:
50
docs/content/adr/0010-ci-cd-platform.md
Normal file
50
docs/content/adr/0010-ci-cd-platform.md
Normal file
@@ -0,0 +1,50 @@
|
||||
# ADR-0010: CI/CD Platform
|
||||
|
||||
## Status
|
||||
Accepted
|
||||
|
||||
## Context
|
||||
The platform needs a CI/CD system for:
|
||||
- Automated testing on pull requests
|
||||
- Code quality checks (linting, formatting)
|
||||
- Building binaries and Docker images
|
||||
- Publishing artifacts
|
||||
- Running integration tests
|
||||
|
||||
Options considered:
|
||||
1. **GitHub Actions** - Native GitHub integration
|
||||
2. **GitLab CI** - If using GitLab
|
||||
3. **Jenkins** - Self-hosted option
|
||||
4. **CircleCI** - Cloud-based CI/CD
|
||||
|
||||
## Decision
|
||||
Use **GitHub Actions** for CI/CD pipeline.
|
||||
|
||||
**Rationale:**
|
||||
- Native integration with GitHub repositories
|
||||
- Free for public repos, reasonable for private
|
||||
- Rich ecosystem of actions
|
||||
- Easy to configure with YAML
|
||||
- Good documentation and community support
|
||||
- Recommended in playbook-golang.md
|
||||
|
||||
## Consequences
|
||||
|
||||
### Positive
|
||||
- Easy setup and configuration
|
||||
- Good GitHub integration
|
||||
- Large action marketplace
|
||||
- Free for public repositories
|
||||
|
||||
### Negative
|
||||
- Tied to GitHub (if migrating Git hosts, need to migrate CI)
|
||||
- Limited customization compared to self-hosted solutions
|
||||
|
||||
### Implementation Notes
|
||||
- Create `.github/workflows/ci.yml`
|
||||
- Use `actions/setup-go@v5` for Go setup
|
||||
- Configure caching for Go modules
|
||||
- Run: linting, unit tests, integration tests, build
|
||||
- Use `actions/cache@v4` for module caching
|
||||
- Add build matrix if needed for multiple Go versions (future)
|
||||
|
||||
Reference in New Issue
Block a user