Commit Graph

1131 Commits

Author SHA1 Message Date
renovate[bot] 4ef17f487a chore(deps): update dependency go to v1.25.4 2025-11-19 10:07:19 -05:00
renovate[bot] 193e7e2f25 chore(deps): update dependency fastapi to >=0.121.2 2025-11-19 10:07:19 -05:00
renovate[bot] 38adf58b96 chore(deps): update dependency coverage to >=7.12.0 2025-11-19 10:07:18 -05:00
Wikid82 de484db648 ci(secrets): migrate GITHUB_TOKEN references to PROJECT_TOKEN secret 2025-11-19 10:07:18 -05:00
Wikid82 c055a7676f fix(ci): use ADD_TO_PROJECT_PAT for project access (user projects require PAT) 2025-11-19 10:07:18 -05:00
Wikid82 50eefbda08 fix(hooks): use python3 fallback in compile check script 2025-11-19 10:06:21 -05:00
Wikid82 069e8112c3 fix(ci): correct indentation for skip summary step in docker-build 2025-11-19 10:03:45 -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 7253dd4f5b fix(runtime): remove invalid Caddy --adapter json; use native JSON config 2025-11-19 10:03:16 -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 6bf9fba474 chore(ci): skip add-to-project when PROJECT_URL secret absent 2025-11-19 10:02:47 -05:00
Wikid82 0d6fb54370 fix(ci): normalize IMAGE_NAME to lowercase for registry compliance 2025-11-19 10:02:20 -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
renovate[bot] 65740e941b chore(deps): update dependency sqlalchemy to >=2.0.44 2025-11-19 09:58:23 -05:00
renovate[bot] b78c87ccbd chore(deps): update dependency python-multipart to >=0.0.20 2025-11-19 09:55:05 -05:00
renovate[bot] 77b8b0cee3 chore(deps): update dependency pytest to >=7.4.4 2025-11-19 09:55:05 -05:00
renovate[bot] 6761f0f8f0 chore(deps): update dependency passlib to >=1.7.4 2025-11-19 09:54:56 -05:00
Wikid82 59202c172b chore(ci): fix Renovate config and workflow; ensure checkout and valid packageRules 2025-11-19 09:54:14 -05:00
Wikid82 e3e6c75354 ci: add checkout step to Renovate workflow so config file is available 2025-11-19 09:54:13 -05:00
Wikid82 54881764ad chore(deps): bump golang.org/x/crypto to v0.31.0 (fix CVE-2024-45337) 2025-11-19 09:54:13 -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 778854473a CI: Add Renovate automation and Caddy v3 monitor; fix CADDY_IMAGE ARG scope 2025-11-19 09:52:10 -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 e3134a2ad7 Reduce Trivy findings: drop bash, switch to /bin/sh entrypoint, pin to caddy:2-alpine, upgrade runtime packages 2025-11-19 09:52:10 -05:00
Wikid82 d65b55144d CI: Generate PR tag via ref_name; skip push & security scan on PR 2025-11-19 09:52:09 -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 8434121dd1 CI: Add CodeQL analysis workflow with security-events permissions and skip fork PRs 2025-11-19 09:52:08 -05:00
Wikid82 37cef06634 Docker: build frontend on BUILDPLATFORM to avoid arm64 Rollup native module; keep Rollup native skipped 2025-11-19 09:52:08 -05:00
Wikid82 f2ea164717 fix(docker): set ROLLUP_SKIP_NODEJS_NATIVE=1 to avoid arm64 native Rollup error 2025-11-19 09:52:08 -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 c979e3d417 chore: test workflows after enabling all actions 2025-11-19 09:51:28 -05:00
Wikid82 46d14cd827 chore: trigger workflows with updated action permissions 2025-11-19 09:51:28 -05:00
Wikid82 6273aa32a1 fix: Remove legacy Python lint job from CI workflow
- Remove ruff/flake8/pre-commit steps (legacy Python scaffold)
- Remove needs dependencies on non-existent lint job
- Backend and frontend tests now run independently
2025-11-19 09:50:59 -05:00
Wikid82 8e641b01bd fix: Eliminate act() warnings in frontend tests and resolve Docker arm64 build
- Wrap async mutations in act() across useImport, useProxyHosts, useRemoteServers tests
- Add npm_config_rollup_skip_nodejs_native=1 in Dockerfile to bypass native binary for arm64
- Enable Go module caching in CI via cache-dependency-path on setup-go action
- All frontend tests now pass cleanly (49/49) without React Testing Library warnings
2025-11-19 09:50:08 -05:00
Wikid82 6392ef318b chore: comprehensive update to ignore files
Updated .gitignore, .dockerignore, and .codecov.yml to properly exclude:
- Python artifacts (__pycache__, .venv, coverage)
- Node artifacts (node_modules, dist, coverage, .vite)
- Go artifacts (*.out, coverage files)
- Database files (*.db, *.sqlite)
- IDE files (.vscode, .idea)
- Build artifacts and temporary files
- Documentation and scripts from Docker context
- Test files from codecov analysis
2025-11-19 09:50:08 -05:00
Wikid82 3401757a10 feat: add Dockerfile validation to pre-commit hooks
Added custom Dockerfile validation script that detects mismatches between
base image OS (Debian vs Alpine) and package managers (apt vs apk).

This will catch errors like:
- Using golang:latest (Debian) with apk commands
- Using alpine images with apt commands

The hook runs automatically on commit and would have caught the recent
golang:latest + apk mismatch that caused Docker build failures.
2025-11-19 09:50:08 -05:00
Wikid82 08db82d92a fix: use golang:alpine base image for backend builder
The backend-builder stage was using golang:latest (Debian) but trying to
run Alpine's apk package manager, causing build failures with 'apk: not
found'. Changed to golang:alpine for consistency with the RUN commands.

Fixes Docker build workflow failures in GitHub Actions.
2025-11-19 09:50:07 -05:00
Wikid82 be2b99f7e4 feat: update docker-compose to use GHCR images and fix test failures
- Update docker-compose.yml to use ghcr.io/wikid82/caddyproxymanagerplus:latest
- Update docker-compose.dev.yml to use ghcr.io/wikid82/caddyproxymanagerplus:dev
- Fix backend test database isolation (remove shared cache mode)
- Add testConnection and enabledServers to useRemoteServers hook
- Fix frontend test assertions to wait for async state updates
- Wrap mutation assertions in waitFor for proper async handling

Backend tests:  ALL PASSING (22 tests)
Frontend tests: ⚠️ 45/49 passing (4 useImport tests need mock refinement)
2025-11-19 09:50:07 -05:00
Wikid82 e6f8b15e05 fix: remove duplicate type declarations and update package-lock
- Remove duplicate CaddyConfig in proxy_host.go (exists in caddy_config.go)
- Remove duplicate HealthHandler in proxy_host_handler.go
- Fix version variable names in health_handler.go (SemVer→Version, BuildDate→BuildTime)
- Update frontend package-lock.json to sync with package.json dependencies
- Backend now compiles successfully (1 test fails but will be fixed later)
2025-11-19 09:50:06 -05:00
Wikid82 a87b7cebb8 fix: replace Python tests with Go and React tests in CI
This is a Go + React project, not Python. Updated CI workflow to:
- Run Go tests (backend)
- Run frontend tests with npm (React)
- Remove Python test coverage requirement
2025-11-19 09:49:56 -05:00
Wikid82 9bd1604386 fix: exclude generated frontend files from pre-commit hooks
Generated files (coverage/, dist/, .vite/, *.tsbuildinfo) should not be
checked by trailing-whitespace or end-of-file-fixer hooks.
2025-11-19 09:48:37 -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
Wikid82 b570e4c025 docs: simplify GitHub setup guide - no manual token needed
GitHub Actions automatically provides GITHUB_TOKEN with correct permissions
for GHCR, so users don't need to create PATs anymore.
2025-11-19 09:48:36 -05:00
Wikid82 0a7442d703 fix: update ruff version requirement and use GITHUB_TOKEN for GHCR auth
- Change ruff>=0.15 to ruff>=0.6.0 (0.15 doesn't exist yet)
- Replace CPMP_GHCR_TOKEN with GITHUB_TOKEN for GHCR authentication
- GITHUB_TOKEN is automatically provided by GitHub Actions with correct permissions
2025-11-19 09:47:55 -05:00
Wikid82 cabf57df86 fix: Update CI configuration to prevent failure on Codecov errors and clean up condition syntax in branch propagation workflow 2025-11-19 09:45:43 -05:00
renovate[bot] 54fcc18ae1 chore(deps): update dependency black to >=24.10.0 2025-11-19 09:45:43 -05:00
renovate[bot] 5a600ac846 chore(deps): update dependency httpx to >=0.28.1 2025-11-19 09:45:42 -05:00
Jeremy 8bb7cbbf89 Merge pull request #84 from Wikid82/renovate/bandit-1.x
chore(deps): update dependency bandit to >=1.9.1
2025-11-19 09:13:04 -05:00