feat: initial commit
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
# CI Observer Dashboard (POC)
|
||||
|
||||
Minimal read-only dashboard that polls GitHub Actions runs and renders a live status wall.
|
||||
|
||||
## Quick start
|
||||
|
||||
1. Copy env template:
|
||||
|
||||
```bash
|
||||
cp .env.example .env
|
||||
```
|
||||
|
||||
2. Edit `.env` and set:
|
||||
|
||||
- `GITHUB_TOKEN` (classic PAT with `repo`, `read:org`, `workflow`)
|
||||
- `GH_REPOS` (e.g. `Wolkabout/IoT-Platform-Core`)
|
||||
- `GH_WORKFLOWS` (e.g. `unit-tests.yml`)
|
||||
|
||||
3. Run:
|
||||
|
||||
```bash
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
4. Open:
|
||||
|
||||
```
|
||||
http://<runner-ip>:8088
|
||||
```
|
||||
|
||||
## Filters preview (separate instance)
|
||||
|
||||
If testing the filters branch in parallel, use:
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.filters.yml up -d --build
|
||||
```
|
||||
|
||||
This runs on port `8089` and uses `./data-filters`.
|
||||
|
||||
### Parallel instance on VM
|
||||
|
||||
```bash
|
||||
cd /webapps
|
||||
git clone https://github.com/Wolkabout/ci-observer-dashboard.git ci-observer-dashboard-filters
|
||||
cd ci-observer-dashboard-filters
|
||||
git checkout feature/filters
|
||||
cp .env.example .env
|
||||
docker compose -f docker-compose.filters.yml up -d --build
|
||||
```
|
||||
|
||||
## Notes
|
||||
|
||||
- This is read-only; no CI/CD impact.
|
||||
- For private repos, a token is required.
|
||||
- Data stored locally in `./data/ci_observer.db`.
|
||||
|
||||
## Documentation
|
||||
|
||||
- Operations runbook: `docs/OPERATIONS_RUNBOOK.md`
|
||||
- Architecture + diagrams: `docs/ARCHITECTURE.md`
|
||||
|
||||
## Appendix: Reverse proxy (NPM)
|
||||
|
||||
- Nginx Proxy Manager runs at `10.0.50.78`.
|
||||
- DNS/hosts should point `ci-observer.wolkabout.com` to `10.0.50.78`.
|
||||
- NPM forwards to the dashboard on `10.1.50.20:8089`.
|
||||
Reference in New Issue
Block a user