feat(devtools): deploy Penpot + MCP server, wildcard TLS via DNS-01
Penpot (designer.sunbeam.pt): - Frontend/backend/exporter deployments with OIDC-only auth via Hydra - VSO-managed DB, S3, and app secrets from OpenBao - PostgreSQL user/db in CNPG postInitSQL - Hydra Maester enabledNamespaces extended to devtools Penpot MCP server (mcp-designer.sunbeam.pt): - Pre-built Node.js image pushed to Gitea registry - Auth-gated via Pingora auth_request → Hydra /userinfo - WebSocket path for browser plugin connection Wildcard TLS: - Switched cert-manager from HTTP-01 (per-SAN) to DNS-01 via Scaleway webhook - Certificate collapsed to *.sunbeam.pt + sunbeam.pt - Added scaleway-certmanager-webhook Helm chart - VSO secret for Scaleway DNS API credentials in cert-manager namespace - Added cert-manager to OpenBao VSO auth role
This commit is contained in:
@@ -3,6 +3,7 @@ kind: Kustomization
|
||||
|
||||
resources:
|
||||
- namespace.yaml
|
||||
- scaleway-dns-secret.yaml
|
||||
|
||||
helmCharts:
|
||||
# helm repo add jetstack https://charts.jetstack.io
|
||||
@@ -13,3 +14,11 @@ helmCharts:
|
||||
namespace: cert-manager
|
||||
valuesFile: values.yaml
|
||||
includeCRDs: true
|
||||
|
||||
# helm repo add scaleway https://helm.scw.cloud/
|
||||
# DNS-01 webhook for Scaleway DNS — enables wildcard certs.
|
||||
- name: scaleway-certmanager-webhook
|
||||
repo: https://helm.scw.cloud/
|
||||
version: "0.4.1"
|
||||
releaseName: scaleway-certmanager-webhook
|
||||
namespace: cert-manager
|
||||
|
||||
37
base/cert-manager/scaleway-dns-secret.yaml
Normal file
37
base/cert-manager/scaleway-dns-secret.yaml
Normal file
@@ -0,0 +1,37 @@
|
||||
# Scaleway API credentials for DNS-01 ACME challenges.
|
||||
# Synced from OpenBao KV path: secret/scaleway-s3 (same API key used for S3 + DNS).
|
||||
---
|
||||
apiVersion: secrets.hashicorp.com/v1beta1
|
||||
kind: VaultAuth
|
||||
metadata:
|
||||
name: vso-auth
|
||||
namespace: cert-manager
|
||||
spec:
|
||||
method: kubernetes
|
||||
mount: kubernetes
|
||||
kubernetes:
|
||||
role: vso
|
||||
serviceAccount: default
|
||||
---
|
||||
apiVersion: secrets.hashicorp.com/v1beta1
|
||||
kind: VaultStaticSecret
|
||||
metadata:
|
||||
name: scaleway-dns-credentials
|
||||
namespace: cert-manager
|
||||
spec:
|
||||
vaultAuthRef: vso-auth
|
||||
mount: secret
|
||||
type: kv-v2
|
||||
path: scaleway-s3
|
||||
refreshAfter: 30s
|
||||
destination:
|
||||
name: scaleway-secret
|
||||
create: true
|
||||
overwrite: true
|
||||
transformation:
|
||||
excludeRaw: true
|
||||
templates:
|
||||
SCW_ACCESS_KEY:
|
||||
text: "{{ index .Secrets \"access-key-id\" }}"
|
||||
SCW_SECRET_KEY:
|
||||
text: "{{ index .Secrets \"secret-access-key\" }}"
|
||||
Reference in New Issue
Block a user