chore: centralize harbor pull credentials
This commit is contained in:
parent
bb41c219f6
commit
ff3ed195ac
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "longhorn"
|
roleName: "longhorn"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/longhorn"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: longhorn-registry
|
- secretName: longhorn-registry
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "bstein-dev-home"
|
roleName: "bstein-dev-home"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/bstein-dev-home"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "comms"
|
roleName: "comms"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/comms"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "crypto"
|
roleName: "crypto"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/crypto"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "harbor"
|
roleName: "harbor"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/harbor"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "sso"
|
roleName: "sso"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/sso"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "logging"
|
roleName: "logging"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/logging"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "mailu-mailserver"
|
roleName: "mailu-mailserver"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/mailu-mailserver"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -49,7 +49,7 @@ spec:
|
|||||||
node-role.kubernetes.io/worker: "true"
|
node-role.kubernetes.io/worker: "true"
|
||||||
containers:
|
containers:
|
||||||
- name: ariadne
|
- name: ariadne
|
||||||
image: registry.bstein.dev/bstein/ariadne:0.1.0
|
image: registry.bstein.dev/bstein/ariadne:0.1.0-0
|
||||||
imagePullPolicy: Always
|
imagePullPolicy: Always
|
||||||
command: ["/bin/sh", "-c"]
|
command: ["/bin/sh", "-c"]
|
||||||
args:
|
args:
|
||||||
|
|||||||
21
services/maintenance/image.yaml
Normal file
21
services/maintenance/image.yaml
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# services/maintenance/image.yaml
|
||||||
|
apiVersion: image.toolkit.fluxcd.io/v1beta2
|
||||||
|
kind: ImageRepository
|
||||||
|
metadata:
|
||||||
|
name: ariadne
|
||||||
|
namespace: maintenance
|
||||||
|
spec:
|
||||||
|
image: registry.bstein.dev/bstein/ariadne
|
||||||
|
interval: 1m0s
|
||||||
|
---
|
||||||
|
apiVersion: image.toolkit.fluxcd.io/v1beta2
|
||||||
|
kind: ImagePolicy
|
||||||
|
metadata:
|
||||||
|
name: ariadne
|
||||||
|
namespace: maintenance
|
||||||
|
spec:
|
||||||
|
imageRepositoryRef:
|
||||||
|
name: ariadne
|
||||||
|
policy:
|
||||||
|
semver:
|
||||||
|
range: ">=0.1.0-0"
|
||||||
@ -3,6 +3,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1
|
|||||||
kind: Kustomization
|
kind: Kustomization
|
||||||
resources:
|
resources:
|
||||||
- namespace.yaml
|
- namespace.yaml
|
||||||
|
- image.yaml
|
||||||
- secretproviderclass.yaml
|
- secretproviderclass.yaml
|
||||||
- vault-serviceaccount.yaml
|
- vault-serviceaccount.yaml
|
||||||
- vault-sync-deployment.yaml
|
- vault-sync-deployment.yaml
|
||||||
@ -22,6 +23,10 @@ resources:
|
|||||||
- node-image-sweeper-daemonset.yaml
|
- node-image-sweeper-daemonset.yaml
|
||||||
- image-sweeper-cronjob.yaml
|
- image-sweeper-cronjob.yaml
|
||||||
|
|
||||||
|
images:
|
||||||
|
- name: registry.bstein.dev/bstein/ariadne
|
||||||
|
newTag: 0.1.0-0 # {"$imagepolicy": "maintenance:ariadne"}
|
||||||
|
|
||||||
configMapGenerator:
|
configMapGenerator:
|
||||||
- name: disable-k3s-traefik-script
|
- name: disable-k3s-traefik-script
|
||||||
namespace: maintenance
|
namespace: maintenance
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "maintenance"
|
roleName: "maintenance"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/maintenance"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "monitoring"
|
roleName: "monitoring"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/monitoring"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -11,7 +11,7 @@ spec:
|
|||||||
roleName: "pegasus"
|
roleName: "pegasus"
|
||||||
objects: |
|
objects: |
|
||||||
- objectName: "harbor-pull__dockerconfigjson"
|
- objectName: "harbor-pull__dockerconfigjson"
|
||||||
secretPath: "kv/data/atlas/harbor-pull/jellyfin"
|
secretPath: "kv/data/atlas/shared/harbor-pull"
|
||||||
secretKey: "dockerconfigjson"
|
secretKey: "dockerconfigjson"
|
||||||
secretObjects:
|
secretObjects:
|
||||||
- secretName: harbor-regcred
|
- secretName: harbor-regcred
|
||||||
|
|||||||
@ -203,42 +203,42 @@ write_policy_and_role "outline" "outline" "outline-vault" \
|
|||||||
write_policy_and_role "planka" "planka" "planka-vault" \
|
write_policy_and_role "planka" "planka" "planka-vault" \
|
||||||
"planka/* shared/postmark-relay" ""
|
"planka/* shared/postmark-relay" ""
|
||||||
write_policy_and_role "bstein-dev-home" "bstein-dev-home" "bstein-dev-home,bstein-dev-home-vault-sync" \
|
write_policy_and_role "bstein-dev-home" "bstein-dev-home" "bstein-dev-home,bstein-dev-home-vault-sync" \
|
||||||
"portal/* shared/chat-ai-keys-runtime shared/portal-e2e-client shared/postmark-relay mailu/mailu-initial-account-secret harbor-pull/bstein-dev-home" ""
|
"portal/* shared/chat-ai-keys-runtime shared/portal-e2e-client shared/postmark-relay mailu/mailu-initial-account-secret shared/harbor-pull" ""
|
||||||
write_policy_and_role "gitea" "gitea" "gitea-vault" \
|
write_policy_and_role "gitea" "gitea" "gitea-vault" \
|
||||||
"gitea/*" ""
|
"gitea/*" ""
|
||||||
write_policy_and_role "vaultwarden" "vaultwarden" "vaultwarden-vault" \
|
write_policy_and_role "vaultwarden" "vaultwarden" "vaultwarden-vault" \
|
||||||
"vaultwarden/* mailu/mailu-initial-account-secret" ""
|
"vaultwarden/* mailu/mailu-initial-account-secret" ""
|
||||||
write_policy_and_role "sso" "sso" "sso-vault,sso-vault-sync,mas-secrets-ensure" \
|
write_policy_and_role "sso" "sso" "sso-vault,sso-vault-sync,mas-secrets-ensure" \
|
||||||
"sso/* portal/bstein-dev-home-keycloak-admin shared/keycloak-admin shared/portal-e2e-client shared/postmark-relay harbor-pull/sso" ""
|
"sso/* portal/bstein-dev-home-keycloak-admin shared/keycloak-admin shared/portal-e2e-client shared/postmark-relay shared/harbor-pull" ""
|
||||||
write_policy_and_role "mailu-mailserver" "mailu-mailserver" "mailu-vault-sync" \
|
write_policy_and_role "mailu-mailserver" "mailu-mailserver" "mailu-vault-sync" \
|
||||||
"mailu/* shared/postmark-relay harbor-pull/mailu-mailserver" ""
|
"mailu/* shared/postmark-relay shared/harbor-pull" ""
|
||||||
write_policy_and_role "harbor" "harbor" "harbor-vault-sync" \
|
write_policy_and_role "harbor" "harbor" "harbor-vault-sync" \
|
||||||
"harbor/* harbor-pull/harbor" ""
|
"harbor/* shared/harbor-pull" ""
|
||||||
write_policy_and_role "nextcloud" "nextcloud" "nextcloud-vault" \
|
write_policy_and_role "nextcloud" "nextcloud" "nextcloud-vault" \
|
||||||
"nextcloud/* shared/keycloak-admin shared/postmark-relay" ""
|
"nextcloud/* shared/keycloak-admin shared/postmark-relay" ""
|
||||||
write_policy_and_role "comms" "comms" "comms-vault,atlasbot" \
|
write_policy_and_role "comms" "comms" "comms-vault,atlasbot" \
|
||||||
"comms/* shared/chat-ai-keys-runtime harbor-pull/comms" ""
|
"comms/* shared/chat-ai-keys-runtime shared/harbor-pull" ""
|
||||||
write_policy_and_role "jenkins" "jenkins" "jenkins" \
|
write_policy_and_role "jenkins" "jenkins" "jenkins" \
|
||||||
"jenkins/*" ""
|
"jenkins/*" ""
|
||||||
write_policy_and_role "monitoring" "monitoring" "monitoring-vault-sync" \
|
write_policy_and_role "monitoring" "monitoring" "monitoring-vault-sync" \
|
||||||
"monitoring/* shared/postmark-relay harbor-pull/monitoring" ""
|
"monitoring/* shared/postmark-relay shared/harbor-pull" ""
|
||||||
write_policy_and_role "logging" "logging" "logging-vault-sync" \
|
write_policy_and_role "logging" "logging" "logging-vault-sync" \
|
||||||
"logging/* harbor-pull/logging" ""
|
"logging/* shared/harbor-pull" ""
|
||||||
write_policy_and_role "pegasus" "jellyfin" "pegasus-vault-sync" \
|
write_policy_and_role "pegasus" "jellyfin" "pegasus-vault-sync" \
|
||||||
"pegasus/* harbor-pull/jellyfin" ""
|
"pegasus/* shared/harbor-pull" ""
|
||||||
write_policy_and_role "crypto" "crypto" "crypto-vault-sync" \
|
write_policy_and_role "crypto" "crypto" "crypto-vault-sync" \
|
||||||
"crypto/* harbor-pull/crypto" ""
|
"crypto/* shared/harbor-pull" ""
|
||||||
write_policy_and_role "health" "health" "health-vault-sync" \
|
write_policy_and_role "health" "health" "health-vault-sync" \
|
||||||
"health/*" ""
|
"health/*" ""
|
||||||
write_policy_and_role "maintenance" "maintenance" "ariadne" \
|
write_policy_and_role "maintenance" "maintenance" "ariadne" \
|
||||||
"portal/atlas-portal-db portal/bstein-dev-home-keycloak-admin mailu/mailu-db-secret mailu/mailu-initial-account-secret harbor-pull/maintenance" ""
|
"portal/atlas-portal-db portal/bstein-dev-home-keycloak-admin mailu/mailu-db-secret mailu/mailu-initial-account-secret shared/harbor-pull" ""
|
||||||
write_policy_and_role "finance" "finance" "finance-vault" \
|
write_policy_and_role "finance" "finance" "finance-vault" \
|
||||||
"finance/* shared/postmark-relay" ""
|
"finance/* shared/postmark-relay" ""
|
||||||
write_policy_and_role "finance-secrets" "finance" "finance-secrets-ensure" \
|
write_policy_and_role "finance-secrets" "finance" "finance-secrets-ensure" \
|
||||||
"" \
|
"" \
|
||||||
"finance/*"
|
"finance/*"
|
||||||
write_policy_and_role "longhorn" "longhorn-system" "longhorn-vault,longhorn-vault-sync" \
|
write_policy_and_role "longhorn" "longhorn-system" "longhorn-vault,longhorn-vault-sync" \
|
||||||
"longhorn/* harbor-pull/longhorn" ""
|
"longhorn/* shared/harbor-pull" ""
|
||||||
write_policy_and_role "postgres" "postgres" "postgres-vault" \
|
write_policy_and_role "postgres" "postgres" "postgres-vault" \
|
||||||
"postgres/postgres-db" ""
|
"postgres/postgres-db" ""
|
||||||
write_policy_and_role "vault" "vault" "vault" \
|
write_policy_and_role "vault" "vault" "vault" \
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user