Commit Graph

211 Commits

Author SHA1 Message Date
b9c39ad990 Hithomelabs/CFTunnels#149: Fix actuator security to allow unauthenticated health/info on management port
- Upgrade ActuatorSecurityConfig to @Order(Ordered.HIGHEST_PRECEDENCE) at class level
  to ensure filter chain is evaluated before auto-configured management security
- Replace string-based securityMatcher with EndpointRequest.toAnyEndpoint() for
  proper Spring Boot actuator endpoint matching
- Add belt-and-suspenders permitAll() for /actuator/health and /actuator/info in
  SecuirtyConfig so health endpoints are accessible even if filter chain ordering fails
- Root cause: SecuirtyConfig catch-all (no securityMatcher) was intercepting actuator
  requests on the separate management port (management.server.port=8081) and
  redirecting to OIDC login before ActuatorSecurityConfig filter chain could apply
2026-07-28 11:45:33 +05:30
3de734dbc5 Hithomelabs/CFTunnels#149: Add Spring Boot Actuator health check endpoints
- Add spring-boot-starter-actuator dependency
- Configure management port (8081) separate from application port (8080)
- Expose /actuator/health and /actuator/info endpoints publicly
- Block other actuator endpoints without authentication
- Add ActuatorSecurityConfig for actuator-specific security rules
- Update Docker Compose to expose management port (5003:8081)
- Update Dockerfile to expose ports 8080 and 8081
- Add actuator configuration to all profile-specific properties files
2026-07-28 11:02:19 +05:30
52f40e3d92 Hithomelabs/CFTunnels#122: Add trust-all SSL RestTemplate for prod profile
Extract trust-all SSL logic into buildTrustAllRestTemplate() helper.
Add @Profile("prod") bean that also trusts self-signed certs.
Change @Profile("!local") to @Profile("!local & !prod") so standard
strict SSL is only used for CI/test profiles.
Rename portainerRestTemplate() to portainerRestTemplateDefault().
2026-07-10 02:24:23 +05:30
3bffa43d6a Hithomelabs/CFTunnels#0: Revert dummy commit - remove CI test comment from test_build.yml 2026-07-09 23:48:13 +05:30
63660928c9 Hithomelabs/CFTunnels#0: Add comment to test_build.yml for CI testing 2026-07-09 23:29:18 +05:30
f1c9965396 Hithomelabs/CFTunnels#150: Resolve merge conflict in portainer_automation_build_push.yml (keep pa- prefix with ASCII arrows) 2026-07-09 12:14:54 +05:30
d7a2af9928 Hithomelabs/CFTunnels#150: Delete prod_image_tag_promote.yaml (absorbed into cftunnels_build_push.yml) 2026-07-09 06:30:56 +00:00
2dc1ac17f1 Hithomelabs/CFTunnels#150: Delete test_image_build_push.yml (absorbed into cftunnels_build_push.yml) 2026-07-09 06:30:55 +00:00
03c509c597 Hithomelabs/CFTunnels#150: Add pa- prefix to portainer-automation tags and remove inputs block 2026-07-09 06:30:49 +00:00
9e35d730f4 Hithomelabs/CFTunnels#150: Create unified cftunnels_build_push.yml with cf- prefix 2026-07-09 06:30:42 +00:00
0df22454a3 Hithomelabs/CFTunnels#149: Resolve merge conflicts by removing workflow_dispatch inputs and simplifying env step 2026-07-09 11:34:53 +05:30
c9dea2a91d Hithomelabs/CFTunnels#139: Remove workflow_dispatch inputs for Gitea 1.22.x compat 2026-07-09 05:44:05 +00:00
8ee2abdbd7 Hithomelabs/CFTunnels#139: Remove portainer-automation service from docker-compose.yaml (now managed independently via portainer-automation/docker-compose.yaml) 2026-07-09 05:04:48 +00:00
35db41573a Hithomelabs/CFTunnels#139: Simplify workflow_dispatch input type for Gitea compatibility
Remove 'type: choice' and 'options:' from workflow_dispatch inputs,
replacing with 'type: string'. The Gitea Actions runner may not support
the 'choice' type with 'options' subfield, causing the entire workflow
to fail registration silently. The workflow already has runtime
validation (lines 40-44) that rejects invalid environment values, so
the 'choice' type was redundant.
2026-07-09 10:32:26 +05:30
bf5c9f1650 Hithomelabs/CFTunnels#145: Replace --method=POST with --post-data= for BusyBox wget compatibility 2026-07-08 21:05:48 +00:00
bd2d32fa8c Hithomelabs/CFTunnels#145: Replace --method=POST with --post-data= for BusyBox wget compatibility 2026-07-08 21:05:42 +00:00
a3a3917fc0 Hithomelabs/CFTunnels#<issue>: Add --method=POST to wget deploy trigger commands
The Portainer redeploy endpoint POST /api/deploy/{stackId} requires
POST requests. wget defaults to GET, so --method=POST is needed.
Applied to both Dev (test_image_build_push.yml) and Prod
(prod_image_tag_promote.yaml) workflow files.
2026-07-09 02:27:48 +05:30
cd270084ad Merge branch 'test' into ISSUE-91 2026-07-08 20:32:16 +00:00
634794e7d3 Hithomelabs/CFTunnels#139: Parameterize portainer-automation build workflow for multi-environment reuse
- Replace single-branch push trigger with test + main + workflow_dispatch
- Add environment determination (test → PATCH bump, main/prod → MINOR bump)
- Add semver calculation with conditional patch/minor logic
- Add env validation (fails early on invalid env)
- Remove pa- prefix from git tags (use plain semver)
- Test builds fresh image; main/prod promotes test image to prod
- Match final architecture spec from Archie
2026-07-08 19:53:17 +00:00
b09386beee Hithomelabs/CFTunnels#91: address review feedback - use IP address 192.168.0.100 instead of Docker hostnames for Portainer automation URLs 2026-07-09 00:58:38 +05:30
dbfb49f5a9 Hithomelabs/CFTunnels#99: Fix stack.env path in portainer-automation docker-compose 2026-07-09 00:31:34 +05:30
bfed3d220b Hithomelabs/CFTunnels#99: address PR review - specific exceptions, SLF4J logging, health endpoint 2026-07-07 03:48:53 +05:30
8f4af5e322 Hithomelabs/CFTunnels#99: Deploy portainer-automation service
- Add Dockerfile for portainer-automation (multi-stage build)
- Add standalone docker-compose.yaml for PA service
- Add application-prod.properties (prod Portainer :9443)
- Add application-ci.properties (CI test endpoints)
- Add .env.example with documented env vars for PA
- Add PORTAINER_STACK.md with deployment guide, env var tables, architecture diagram
- Add CI workflow (portainer_automation_build_push.yml) for image build/push
- Update root docker-compose.yaml to include PA service
2026-07-07 02:51:58 +05:30
8e02a9fcd0 Hithomelabs/CFTunnels#91: Wire CI deploy triggers for Portainer auto-redeploy 2026-07-07 02:10:48 +05:30
da2db99755 Hithomelabs/CFTunnels#88: address PR review - fix test expectations, import, and assertions 2026-07-06 23:49:12 +05:30
07b70e633d Hithomelabs/CFTunnels#88: Add Phase 1 tests for env round-trip, model serialization, and error handling 2026-07-06 23:32:15 +05:30
9e960ea7c0 Hithomelabs/CFTunnels#88: Fix env-var override pattern for portainer.service.api-key 2026-07-06 07:07:22 +00:00
145597b8bd Hithomelabs/CFTunnels#88: Add null-safety for env list in redeploy() 2026-07-06 07:07:21 +00:00
d27176a7d5 Hithomelabs/CFTunnels#88: Add env variable round-trip, profile-aware SSL, and getStack support 2026-07-06 12:29:43 +05:30
3c47643cd4 88: Fix PortainerApiClient import path 2026-07-06 05:10:21 +00:00
93e9baa5d4 88: Fix PortainerApiClient import/constructor, replace TrustAllStrategy with lambda 2026-07-06 05:10:20 +00:00
d0e1ea938f 88: Add DeployControllerTest with 4 test cases 2026-07-06 05:02:23 +00:00
76dd43c7b2 88: Add DeployController with X-API-Key auth 2026-07-06 05:02:19 +00:00
21e67dadea 88: Add DeployService for Portainer stack redeployment 2026-07-06 05:02:16 +00:00
5ea62d6baf 88: Add SSL-friendly Portainer API client config 2026-07-06 05:02:15 +00:00
cf24922bb4 88: Add PortainerAutomationProperties configuration 2026-07-06 05:02:12 +00:00
62fd2ea48a 88: Add portainer configuration properties 2026-07-06 05:01:59 +00:00
9e3207dc30 88: Enable configuration properties and scan common package 2026-07-06 05:01:58 +00:00
f3652611ec 88: Add httpclient5 dependency for portainer-automation 2026-07-06 05:01:56 +00:00
6fc44a6969 Hithomelabs/CFTunnels#87: address PR review - add @JsonProperty, fix status type, add unit tests 2026-07-05 17:50:56 +05:30
e515532d99 Hithomelabs/CFTunnels#87: Add PortainerApiClient, DTOs, ImageReference, and exception classes 2026-07-05 16:54:23 +05:30
9fb4c4fb14 Merge pull request 'ci: fix Gradle wrapper validation in test_image_build_push.yml (missed in PR #126)' (#127) from Dave/CFTunnels:ISSUE-86-fix into test
Reviewed-on: Hithomelabs/CFTunnels#127
Reviewed-by: hitanshu <hitanshu98@gmail.com>
2026-07-05 10:55:21 +00:00
040c0e9b09 ci: fix Gradle wrapper validation in test_image_build_push.yml 2026-07-05 10:51:47 +00:00
d500a8b276 Hithomelabs/CFTunnels#86: ci: replace Gradle wrapper validation with offline checksum 2026-07-05 16:12:24 +05:30
4a3e2777db Hithomelabs/HomeLabDocker#86: fix: add BOM import and update RestTemplateConfig imports 2026-07-05 15:38:00 +05:30
4abec13ec4 Hithomelabs/HomeLabDocker#86: ci: update workflows for multi-module paths 2026-07-05 15:36:02 +05:30
0c6944685f Hithomelabs/HomeLabDocker#86: chore: add :portainer-automation scaffold 2026-07-05 15:35:58 +05:30
ee1762711d Hithomelabs/HomeLabDocker#86: feat: add :common module with RestTemplateConfig 2026-07-05 15:35:53 +05:30
0c2e186ba7 Hithomelabs/HomeLabDocker#86: refactor: move cftunnels source into :cftunnels-service module 2026-07-05 15:35:50 +05:30
2a6e7c176c Hithomelabs/HomeLabDocker#86: chore: scaffold multi-module Gradle structure 2026-07-05 15:35:46 +05:30