diff --git a/k8s/openclaw/cronjob-wiki-audit.secret.yaml b/k8s/openclaw/cronjob-wiki-audit.secret.yaml index aefccf2..b42db5c 100644 Binary files a/k8s/openclaw/cronjob-wiki-audit.secret.yaml and b/k8s/openclaw/cronjob-wiki-audit.secret.yaml differ diff --git a/knowledge-wiki b/knowledge-wiki index acc8d02..4af9e15 160000 --- a/knowledge-wiki +++ b/knowledge-wiki @@ -1 +1 @@ -Subproject commit acc8d022b685132b46abc4146142619c7e7c68ed +Subproject commit 4af9e1502acc00c0935e783ab31c3473279a9e40 diff --git a/projects/moritzgrafde/build.sh b/projects/moritzgrafde/build.sh index e19d134..4bec97e 100755 --- a/projects/moritzgrafde/build.sh +++ b/projects/moritzgrafde/build.sh @@ -9,5 +9,5 @@ npm run build docker build --platform linux/amd64 -t ${CONTAINER_NAME}:latest -t registry.haumdaucher.de/${CONTAINER_NAME}:latest . docker push registry.haumdaucher.de/${CONTAINER_NAME}:latest -kubectl patch deployment $DEPLOYMENT -n $NAMESPACE -p "{\"spec\": {\"template\": {\"metadata\": { \"labels\": { \"redeploy\": \"$( date +%s )\"}}}}}" -kubectl get po -l app=$DEPLOYMENT -n $NAMESPACE -w \ No newline at end of file +kubectl rollout restart deployment/$DEPLOYMENT -n $NAMESPACE +kubectl rollout status deployment/$DEPLOYMENT -n $NAMESPACE \ No newline at end of file diff --git a/terraform/terraform.tfstate b/terraform/terraform.tfstate index b96e49c..d732b0e 100644 --- a/terraform/terraform.tfstate +++ b/terraform/terraform.tfstate @@ -1,7 +1,7 @@ { "version": 4, "terraform_version": "1.14.3", - "serial": 405, + "serial": 410, "lineage": "8aff5d23-05f6-10eb-0ae6-1084c787677e", "outputs": { "coder_oauth_client_secret": { @@ -683,6 +683,41 @@ } ] }, + { + "mode": "managed", + "type": "authentik_application", + "name": "silverbullet", + "provider": "provider[\"registry.terraform.io/goauthentik/authentik\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "backchannel_providers": null, + "group": "", + "id": "silverbullet", + "meta_description": "", + "meta_hide": false, + "meta_icon": "", + "meta_launch_url": "", + "meta_publisher": "", + "name": "SilverBullet", + "open_in_new_tab": false, + "policy_engine_mode": "any", + "protocol_provider": 15, + "slug": "silverbullet", + "uuid": "7bae1695-db74-48e9-9d1e-be81025701be" + }, + "sensitive_attributes": [], + "identity_schema_version": 0, + "private": "bnVsbA==", + "dependencies": [ + "authentik_provider_proxy.silverbullet", + "data.authentik_flow.default_authorization_flow", + "data.authentik_flow.default_invalidation_flow" + ] + } + ] + }, { "mode": "managed", "type": "authentik_application", @@ -1021,7 +1056,8 @@ 2, 7, 3, - 10 + 10, + 15 ], "service_connection": "", "type": "proxy" @@ -1037,6 +1073,7 @@ "authentik_provider_proxy.nextcloud_phpmyadmin", "authentik_provider_proxy.openclaw", "authentik_provider_proxy.prometheus", + "authentik_provider_proxy.silverbullet", "authentik_provider_proxy.zigbee2mqtt", "data.authentik_flow.default_authorization_flow", "data.authentik_flow.default_invalidation_flow" @@ -1504,6 +1541,39 @@ } ] }, + { + "mode": "managed", + "type": "authentik_policy_binding", + "name": "silverbullet_admin_only", + "provider": "provider[\"registry.terraform.io/goauthentik/authentik\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "enabled": true, + "failure_result": false, + "group": "c0ad76f4-d157-4c9e-882c-9ae5b5fc1690", + "id": "b1c88c71-4abc-4fbe-8a0b-d9822b4c2984", + "negate": false, + "order": 0, + "policy": "", + "target": "7bae1695-db74-48e9-9d1e-be81025701be", + "timeout": 30, + "user": 0 + }, + "sensitive_attributes": [], + "identity_schema_version": 0, + "private": "bnVsbA==", + "dependencies": [ + "authentik_application.silverbullet", + "authentik_group.infra_admins", + "authentik_provider_proxy.silverbullet", + "data.authentik_flow.default_authorization_flow", + "data.authentik_flow.default_invalidation_flow" + ] + } + ] + }, { "mode": "managed", "type": "authentik_policy_binding", @@ -2284,6 +2354,48 @@ } ] }, + { + "mode": "managed", + "type": "authentik_provider_proxy", + "name": "silverbullet", + "provider": "provider[\"registry.terraform.io/goauthentik/authentik\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "access_token_validity": "minutes=10", + "authentication_flow": "", + "authorization_flow": "68f43818-60ba-4d8e-ae66-cbac29d7be42", + "basic_auth_enabled": false, + "basic_auth_password_attribute": "", + "basic_auth_username_attribute": "", + "client_id": "XKhBpWI0UUv7YnGsec2EzUzIsNy4nnDnxRUbBHV1", + "cookie_domain": "", + "external_host": "https://wiki.moritzgraf.de", + "id": "15", + "intercept_header_auth": true, + "internal_host": "", + "internal_host_ssl_validation": true, + "invalidation_flow": "9add9e98-4fe7-48c5-bca8-d68968e0a7ba", + "jwks_sources": null, + "jwt_federation_providers": null, + "jwt_federation_sources": null, + "mode": "forward_single", + "name": "SilverBullet", + "property_mappings": null, + "refresh_token_validity": "days=30", + "skip_path_regex": "" + }, + "sensitive_attributes": [], + "identity_schema_version": 0, + "private": "bnVsbA==", + "dependencies": [ + "data.authentik_flow.default_authorization_flow", + "data.authentik_flow.default_invalidation_flow" + ] + } + ] + }, { "mode": "managed", "type": "authentik_provider_proxy", diff --git a/terraform/terraform.tfstate.backup b/terraform/terraform.tfstate.backup index 99d4e7b..b96e49c 100644 --- a/terraform/terraform.tfstate.backup +++ b/terraform/terraform.tfstate.backup @@ -1,7 +1,7 @@ { "version": 4, "terraform_version": "1.14.3", - "serial": 403, + "serial": 405, "lineage": "8aff5d23-05f6-10eb-0ae6-1084c787677e", "outputs": { "coder_oauth_client_secret": { @@ -4242,6 +4242,28 @@ } ] }, + { + "mode": "managed", + "type": "ovh_domain_zone_record", + "name": "moritzgraf_domain", + "provider": "provider[\"registry.terraform.io/ovh/ovh\"]", + "instances": [ + { + "schema_version": 0, + "attributes": { + "fieldtype": "A", + "id": "5436150587", + "subdomain": "", + "target": "136.243.23.215", + "ttl": 60, + "zone": "moritzgraf.de" + }, + "sensitive_attributes": [], + "identity_schema_version": 0, + "private": "bnVsbA==" + } + ] + }, { "mode": "managed", "type": "ovh_domain_zone_record",