ci: add woodpecker Kyverno proxy CA policy with NO_PROXY for gRPC
ci/woodpecker/push/woodpecker Pipeline failed
Build and Push / lint-and-test (push) Has been cancelled
Build and Push / build-services (map[cmd:python -m services.adapters.broker_adapter name:broker-adapter]) (push) Has been cancelled
Build and Push / build-services (map[cmd:python -m services.aggregation.worker name:aggregation]) (push) Has been cancelled
Build and Push / build-services (map[cmd:python -m services.extractor.worker name:extractor]) (push) Has been cancelled
Build and Push / build-services (map[cmd:python -m services.ingestion.worker name:ingestion]) (push) Has been cancelled
Build and Push / build-services (map[cmd:python -m services.lake_publisher.worker name:lake-publisher]) (push) Has been cancelled
Build and Push / build-services (map[cmd:python -m services.parser.worker name:parser]) (push) Has been cancelled
Build and Push / build-services (map[cmd:python -m services.recommendation.worker name:recommendation]) (push) Has been cancelled
Build and Push / build-services (map[cmd:python -m services.scheduler.app name:scheduler]) (push) Has been cancelled
Build and Push / build-services (map[cmd:uvicorn services.api.app:app --host 0.0.0.0 --port 8000 name:query-api]) (push) Has been cancelled
Build and Push / build-services (map[cmd:uvicorn services.risk.app:app --host 0.0.0.0 --port 8000 name:risk]) (push) Has been cancelled
Build and Push / build-services (map[cmd:uvicorn services.symbol_registry.app:app --host 0.0.0.0 --port 8000 name:symbol-registry]) (push) Has been cancelled
Build and Push / build-services (map[cmd:uvicorn services.trading.app:app --host 0.0.0.0 --port 8000 name:trading-engine]) (push) Has been cancelled
Build and Push / build-dashboard (push) Has been cancelled
Build and Push / build-superset (push) Has been cancelled
Build and Push / integration-test (push) Has been cancelled

This commit is contained in:
Celes Renata
2026-04-19 03:00:06 +00:00
parent 76dd58c1dc
commit 9e39d59afa
3 changed files with 47 additions and 4 deletions
+3 -2
View File
@@ -115,9 +115,10 @@ echo ""
# ------------------------------------------------------- # -------------------------------------------------------
# 5. Apply Woodpecker agent RBAC # 5. Apply Woodpecker agent RBAC
# ------------------------------------------------------- # -------------------------------------------------------
echo "--- Step 5: Applying Woodpecker agent RBAC ---" echo "--- Step 5: Applying Woodpecker agent RBAC and Kyverno policy ---"
kubectl apply -f woodpecker/agent-rbac.yaml kubectl apply -f woodpecker/agent-rbac.yaml
echo " ✓ Agent RBAC applied" kubectl apply -f woodpecker/kyverno-proxy-ca.yaml
echo " ✓ Agent RBAC and Kyverno proxy CA policy applied"
echo "" echo ""
# ------------------------------------------------------- # -------------------------------------------------------
@@ -0,0 +1,43 @@
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: woodpecker-proxy-ca
annotations:
policies.kyverno.io/title: "Woodpecker Proxy CA Injection"
policies.kyverno.io/category: "Networking"
policies.kyverno.io/subject: "Pod"
spec:
rules:
- name: inject-ca-cert
match:
any:
- resources:
kinds:
- Pod
namespaces:
- woodpecker
mutate:
patchStrategicMerge:
spec:
containers:
- (name): "*"
env:
- name: HTTP_PROXY
value: "http://192.168.42.1:3128"
- name: HTTPS_PROXY
value: "http://192.168.42.1:3128"
- name: NO_PROXY
value: "10.0.0.0/8,192.168.0.0/16,127.0.0.1,localhost,.svc,.cluster.local,woodpecker-server"
- name: no_proxy
value: "10.0.0.0/8,192.168.0.0/16,127.0.0.1,localhost,.svc,.cluster.local,woodpecker-server"
- name: SSL_CERT_FILE
value: "/etc/ssl/certs/proxy-ca.crt"
volumeMounts:
- name: proxy-ca
mountPath: /etc/ssl/certs/proxy-ca.crt
subPath: ca.crt
readOnly: true
volumes:
- name: proxy-ca
configMap:
name: proxy-ca-cert
+1 -2
View File
@@ -48,8 +48,7 @@ agent:
enabled: true enabled: true
replicaCount: 2 replicaCount: 2
# No proxy CA injection for agents — they only talk to the server internally # CA injection handled by woodpecker-proxy-ca Kyverno policy (matches all pods in namespace)
# Pipeline step pods spawned by the agent inherit the node's proxy config
env: env:
WOODPECKER_SERVER: "woodpecker-server:9000" WOODPECKER_SERVER: "woodpecker-server:9000"