Commit Graph

47 Commits

Author SHA1 Message Date
renovate[bot]
769d38e8ec chore(deps): update docker/login-action action to v3.6.0 2025-11-24 05:00:22 +00:00
Wikid82
bbf59f0d6a fix: update Trivy SARIF upload token to use GITHUB_TOKEN instead of CPMP_TOKEN 2025-11-22 15:07:57 -05:00
Wikid82
a5042cab55 fix: update workflows to replace PROJECT_TOKEN and GITHUB_TOKEN with CPMP_TOKEN 2025-11-22 14:53:25 -05:00
Wikid82
1bb592d7cd fix: update token for Trivy SARIF upload to use CPMP_GHPR_TOKEN 2025-11-22 14:44:54 -05:00
Wikid82
44ecea5349 fix: normalize image name case for Trivy scan 2025-11-22 14:35:02 -05:00
Wikid82
19230e1400 fix: use PROJECT_TOKEN for trivy sarif upload 2025-11-22 13:55:38 -05:00
Wikid82
9b4cdea963 perf: update release workflow and improve test setup; add lazy loading for better performance 2025-11-22 13:21:34 -05:00
Wikid82
1475e2ada8 ci: fix action versions and use tags for stability 2025-11-22 09:21:39 -05:00
Wikid82
166bca30bf ci: guard upload-sarif step when Trivy SARIF missing 2025-11-22 09:17:47 -05:00
Wikid82
bc252ebebe feat: update docker-publish workflow for beta release and add version bump script 2025-11-22 00:15:54 -05:00
Wikid82
6ba87eb121 fix: rename workflow to Docker Build, Publish & Test and enhance image testing steps 2025-11-21 09:55:46 -05:00
renovate[bot]
0369e51918 chore(deps): update actions/checkout action to v6 2025-11-20 16:37:52 +00:00
Jeremy
f7bbce10e8 Merge pull request #138 from Wikid82/renovate/github-codeql-action-4.x
chore(deps): update github/codeql-action action to v4
2025-11-19 23:31:04 -05:00
renovate[bot]
f09cb19108 chore(deps): update github/codeql-action action to v4 2025-11-20 04:28:47 +00:00
renovate[bot]
36e4730a2f chore(deps): update docker/build-push-action action to v6 2025-11-20 04:28:42 +00:00
Wikid82
6471e24f11 feat: Add GitHub Actions workflows for Docker build, publish, documentation deployment, and quality checks
- Implemented `docker-build.yml` for building and pushing Docker images with multi-platform support, Trivy security scanning, and conditional builds based on commit messages.
- Created `docker-publish.yml` for streamlined Docker image publishing with Trivy vulnerability scanning on push events.
- Added `docs.yml` to automate documentation deployment to GitHub Pages, including a custom HTML structure and markdown conversion.
- Introduced `propagate-changes.yml` to automate PR creation for synchronizing changes between main, development, and feature branches.
- Established `quality-checks.yml` for running backend (Go) and frontend (React) quality checks, including tests and linting.
- Developed `release.yml` for generating changelogs and creating GitHub releases upon version tag pushes.
- Set up `renovate.yml` for automated dependency updates on a daily schedule.
2025-11-19 22:53:42 -05:00
Wikid82
1e2d87755d Remove Settings and Setup pages along with their tests and related API services
- Deleted Settings.tsx and Setup.tsx pages, which included functionality for changing passwords and setting up an admin account.
- Removed associated test files for Setup page.
- Eliminated API service definitions related to proxy hosts, remote servers, import functionality, and health checks.
- Cleaned up mock data and test setup files.
- Removed configuration files for TypeScript, Vite, and Tailwind CSS.
- Deleted scripts for testing coverage, release management, Dockerfile validation, and Python compilation checks.
- Removed Sourcery pre-commit wrapper script.
2025-11-19 22:53:32 -05:00
Wikid82
00981be8dc fix: CI workflow shell injection vulnerability
- Use environment variables for GitHub context in shell scripts to prevent injection attacks and syntax errors when commit messages contain special characters (e.g. single quotes, ampersands).
- Fixes failure when merging branches with special characters in their names.
2025-11-19 19:59:45 -05:00
renovate[bot]
17672c2b53 chore(deps): update actions/checkout action to v5 2025-11-20 00:45:05 +00:00
Jeremy
e8de9b1a2c Merge pull request #106 from Wikid82/renovate/aquasecurity-trivy-action-0.x
chore(deps): update aquasecurity/trivy-action action to v0.33.1
2025-11-19 18:20:54 -05:00
Jeremy
9037ea6f86 Merge pull request #110 from Wikid82/renovate/docker-build-push-action-5.x
chore(deps): update docker/build-push-action action to v5.4.0
2025-11-19 18:20:01 -05:00
Jeremy
a5bf51b62c Merge pull request #111 from Wikid82/renovate/docker-login-action-3.x
chore(deps): update docker/login-action action to v3.6.0
2025-11-19 18:18:40 -05:00
Jeremy
9c680584c6 Merge pull request #112 from Wikid82/renovate/docker-setup-buildx-action-3.x
chore(deps): update docker/setup-buildx-action action to v3.11.1
2025-11-19 18:18:19 -05:00
renovate[bot]
c1f84162ad chore(deps): update docker/setup-qemu-action action to v3.7.0 2025-11-19 23:15:57 +00:00
renovate[bot]
8a68cb19cf chore(deps): update docker/setup-buildx-action action to v3.11.1 2025-11-19 23:15:53 +00:00
renovate[bot]
9d99926b8e chore(deps): update docker/login-action action to v3.6.0 2025-11-19 23:15:48 +00:00
renovate[bot]
ecf2feb857 chore(deps): update docker/build-push-action action to v5.4.0 2025-11-19 23:15:44 +00:00
Wikid82
50d710ba7b chore: rename project artifacts to CPMP 2025-11-19 18:07:36 -05:00
renovate[bot]
c05dd54f5c chore(deps): update aquasecurity/trivy-action action to v0.33.1 2025-11-19 22:47:08 +00:00
Jeremy
6922096438 Merge pull request #96 from Wikid82/renovate/actions-checkout-4.x
chore(deps): update actions/checkout action to v4.3.1
2025-11-19 11:52:42 -05:00
renovate[bot]
3e3089b8d6 chore(deps): update actions/checkout action to v4.3.1 2025-11-19 16:47:42 +00:00
renovate[bot]
e5b9ae8a90 chore(deps): pin dependencies 2025-11-19 16:47:27 +00:00
Wikid82
7ca6d8f606 ci: streamline workflows, consolidate docker build/publish, add quality checks 2025-11-19 10:13:41 -05:00
Wikid82
de484db648 ci(secrets): migrate GITHUB_TOKEN references to PROJECT_TOKEN secret 2025-11-19 10:07:18 -05:00
Wikid82
1cf07a892a ci: skip heavy docker build/publish for renovate bot and chore(deps)/chore commits 2025-11-19 10:03:40 -05:00
Wikid82
939847e6af ci: robust health check with retries; normalize IMAGE_NAME in publish workflow 2025-11-19 10:03:15 -05:00
Wikid82
eec702a335 fix(ci): lowercase IMAGE_NAME in workflows; fix Renovate packageRule (remove matchUpdateTypes from allowedVersions rule) 2025-11-19 09:58:32 -05:00
Wikid82
ae4f03e26e CI: Show Trivy table output before SARIF upload; always upload SARIF; fail late on CRITICAL/HIGH 2025-11-19 09:53:57 -05:00
Wikid82
3111421b92 CI: Pin Caddy base by digest in builds; enforce Trivy fail on CRITICAL/HIGH; pass CADDY_IMAGE build-arg 2025-11-19 09:52:10 -05:00
Wikid82
ffa1bd9af7 CI: Fix Trivy scan refs and guard SARIF upload; use metadata tags for docker-build scan; add outcome gating 2025-11-19 09:52:09 -05:00
Wikid82
f14b0f3978 fix: Remove SHA-based Docker tags causing invalid format errors
- Remove type=sha tags that were producing invalid formats like ':-f0d0654'
- Keep latest/dev tags for branches and semver tags for releases
- SHA is still tracked via image digest and labels
2025-11-19 09:52:07 -05:00
Wikid82
8716919e22 fix: Correct Docker tag format in metadata action
- Add format=short to SHA tags to prevent malformed tags
- Standardize dev tag naming across workflows (was 'development')
- Ensure branch name is properly included in SHA prefix
2025-11-19 09:52:07 -05:00
Wikid82
95823204a6 feat: Add Trivy security scanning to Docker workflows
- Add Trivy vulnerability scanner after image build
- Upload SARIF results to GitHub Security tab
- Display critical/high severity issues in workflow logs
- Add security-events permission for SARIF upload
- Skip scanning on pull requests to save time
2025-11-19 09:51:58 -05:00
Wikid82
76f937d947 fix: add missing frontend dependencies and remove trailing whitespace
- Add @tanstack/react-query, axios, and clsx to frontend dependencies
- Remove trailing whitespace from multiple files to pass pre-commit hooks
- These were required but missing from package.json
2025-11-19 09:48:37 -05:00
renovate[bot]
bac3e8126c chore(deps): pin dependencies 2025-11-19 14:02:16 +00:00
Wikid82
5dd5036661 feat: single-container deployment & automated semantic versioning; add release workflow, version injection, health endpoint metadata, documentation 2025-11-17 19:29:25 -05:00
Wikid82
b17e7d3d5f feat: implement Caddy integration with Docker-first approach (Issue #4)
- Add Caddy client package (client.go) with Load/GetConfig/Ping methods
- Implement config generator (config.go) transforming ProxyHost → Caddy JSON
- Add pre-flight validator (validator.go) catching config errors before reload
- Create manager (manager.go) with rollback capability using config snapshots
- Add CaddyConfig model for audit trail of configuration changes
- Update Config to include Caddy admin API and config dir settings
- Create comprehensive unit tests with 100% coverage for caddy package

Docker Infrastructure:
- Add docker-compose.yml with Caddy sidecar container
- Add docker-compose.dev.yml for development overrides
- Create .github/workflows/docker-publish.yml for GHCR publishing
- Update CI to build Docker images and run integration tests
- Add DOCKER.md with comprehensive deployment guide
- Update Makefile with docker-compose commands
- Update README with Docker-first deployment instructions

Configuration:
- Add CPM_CADDY_ADMIN_API and CPM_CADDY_CONFIG_DIR env vars
- Update .env.example with new Caddy settings
- Update AutoMigrate to include CaddyConfig model

All acceptance criteria met:
 Can programmatically generate valid Caddy JSON configs
 Can reload Caddy configuration via admin API
 Invalid configs caught by validator before reload
 Automatic rollback on failure via snapshot system
2025-11-17 19:03:59 -05:00