diff --git a/README.md b/README.md
index b27a4fa..541c7b6 100644
--- a/README.md
+++ b/README.md
@@ -27,6 +27,13 @@ Create/Start servers for stage-dev
ansible-playbook -i stage-dev setup.yml --vault-password-file ~/vault-pass -u root
ansible-playbook dynamic-provisioning.yml --vault-password-file ~/vault-pass -e "stage=dev name=test node=01 service=connect"
+# Setup Smardigo Service
+ Setup/Configure a Server, Database, Realm (keycloak) and Smardigo
+ ansible-playbook create-server.yml -e "stage='dev' tenant_id='sken' cluster_name='test01' cluster_size='1' cluster_service='connect' stage='dev'"
+ ansible-playbook create-database.yml -e "stage='dev' tenant_id='sken' cluster_name='test01' cluster_size='1' cluster_service='connect' stage='dev'"
+ ansible-playbook create-realm.yml -e "stage='dev' tenant_id='sken' cluster_name='test01' cluster_size='1' cluster_service='connect' stage='dev' current_realm_name='sken' current_realm_display_name='S-K-E-N'"
+ ansible-playbook create-service.yml -e "stage='dev' tenant_id='sken' cluster_name='test01' cluster_size='1' cluster_service='connect' stage='dev' current_realm_name='sken' current_realm_display_name='S-K-E-N'"
+
# TODO
212.121.131.106 - Siemansdamm - IPFire
diff --git a/create-database.yml b/create-database.yml
index 911a06b..ea3ffa9 100644
--- a/create-database.yml
+++ b/create-database.yml
@@ -1,5 +1,17 @@
---
+# Parameters:
+# playbook inventory
+# stage := the type of the stage (e.g. dev, int, qa, prod)
+# tenant_id := (unique key for the tenant, e.g. customer)
+# cluster_name := (business name for the cluster, e.g. product, department )
+# cluster_size := (WIP node count for the cluster)
+# cluster_service := (service to setup, e.g. connect)
+# smardigo message callback
+# scope_id := (scope id of the management process)
+# process_instance_id := (process instance id of the management process)
+# smardigo_management_action := (smardigo management action anme of the management process)
+
#############################################################
# Creating inventory dynamically for given parameters
#############################################################
@@ -19,7 +31,7 @@
tasks:
- name: Add hosts
add_host:
- name: "{{ stage }}-{{ cluster_name }}-{{ '%02d' | format(item|int) }}"
+ name: "{{ stage }}-{{ tenant_id }}-{{ cluster_name }}-{{ '%02d' | format(item|int) }}"
groups:
- "stage_{{ stage }}"
- "{{ cluster_service }}"
diff --git a/create-realm.yml b/create-realm.yml
index 0745ccf..e3fb284 100644
--- a/create-realm.yml
+++ b/create-realm.yml
@@ -1,5 +1,20 @@
---
+# Parameters:
+# playbook inventory
+# stage := the type of the stage (e.g. dev, int, qa, prod)
+# tenant_id := (unique key for the tenant, e.g. customer)
+# cluster_name := (business name for the cluster, e.g. product, department )
+# cluster_size := (WIP node count for the cluster)
+# cluster_service := (service to setup, e.g. connect)
+# playbook roles (keycloak / oidc)
+# current_realm_name :=
+# current_realm_display_name :=
+# smardigo message callback
+# scope_id := (scope id of the management process)
+# process_instance_id := (process instance id of the management process)
+# smardigo_management_action := (smardigo management action anme of the management process)
+
#############################################################
# Creating inventory dynamically for given parameters
#############################################################
@@ -19,7 +34,7 @@
tasks:
- name: Add hosts
add_host:
- name: "{{ stage }}-{{ cluster_name }}-{{ '%02d' | format(item|int) }}"
+ name: "{{ stage }}-{{ tenant_id }}-{{ cluster_name }}-{{ '%02d' | format(item|int) }}"
groups:
- "stage_{{ stage }}"
- "{{ cluster_service }}"
diff --git a/create-server.yml b/create-server.yml
index bd9e984..4137564 100644
--- a/create-server.yml
+++ b/create-server.yml
@@ -1,5 +1,17 @@
---
+# Parameters:
+# playbook inventory
+# stage := the type of the stage (e.g. dev, int, qa, prod)
+# tenant_id := (unique key for the tenant, e.g. customer)
+# cluster_name := (business name for the cluster, e.g. product, department )
+# cluster_size := (WIP node count for the cluster)
+# cluster_service := (service to setup, e.g. connect)
+# smardigo message callback
+# scope_id := (scope id of the management process)
+# process_instance_id := (process instance id of the management process)
+# smardigo_management_action := (smardigo management action anme of the management process)
+
#############################################################
# Creating inventory dynamically for given parameters
#############################################################
@@ -19,7 +31,7 @@
tasks:
- name: Add hosts
add_host:
- name: "{{ stage }}-{{ cluster_name }}-{{ '%02d' | format(item|int) }}"
+ name: "{{ stage }}-{{ tenant_id }}-{{ cluster_name }}-{{ '%02d' | format(item|int) }}"
groups:
- "stage_{{ stage }}"
- "{{ cluster_service }}"
diff --git a/create-service.yml b/create-service.yml
index 5d98eaa..669ed1a 100644
--- a/create-service.yml
+++ b/create-service.yml
@@ -19,7 +19,7 @@
tasks:
- name: Add hosts
add_host:
- name: "{{ stage }}-{{ cluster_name }}-{{ '%02d' | format(item|int) }}"
+ name: "{{ stage }}-{{ tenant_id }}-{{ cluster_name }}-{{ '%02d' | format(item|int) }}"
groups:
- "stage_{{ stage }}"
- "{{ cluster_service }}"
diff --git a/group_vars/all/plain.yml b/group_vars/all/plain.yml
index 3a7be25..2f7630d 100644
--- a/group_vars/all/plain.yml
+++ b/group_vars/all/plain.yml
@@ -113,6 +113,7 @@ hetzner_ssh_keys:
#mattermost_hook_smardigo: "< see vault >"
#teams_hook_smardigo: "< see vault >"
+#netgo_msteams_hook_smardigo: "< see vault >"
#hetzner_authentication_token: "< see vault >"
#digitalocean_authentication_token: "< see vault >"
diff --git a/group_vars/connect/plain.yml b/group_vars/connect/plain.yml
index e9b80ae..b101ade 100644
--- a/group_vars/connect/plain.yml
+++ b/group_vars/connect/plain.yml
@@ -2,6 +2,8 @@
service: "connect"
+connect_version: '8.2.0-SMARCH-56-1-SNAPSHOT'
+
hetzner_server_type: cx21
hetzner_server_labels: "stage={{ stage }} service={{ service }}"
@@ -32,6 +34,17 @@ current_realm_clients: [
}
]
+connect_postgres_database: "connect-postgres"
+connect_postgres_admin_username: "connect-postgres-admin"
+connect_postgres_admin_password: "connect-postgres-admin"
+
+connect_elastic_host: "dev-elastic-stack-01-elastic"
+connect_elastic_username: "{{ elastic_admin_username }}"
+connect_elastic_password: "{{ elastic_admin_password }}"
+connect_elastic_ca: "file:/usr/share/smardigo/ca.crt"
+connect_elastic_prefix: "{{ stage }}-{{ tenant_id }}"
+connect_elastic_message_index: "{{ cluster_name }}-message"
+
connect_iam_module: external
smardigo_iam_client_enabled: 'true'
smardigo_iam_client_server_url: https://dev-iam-01.smardigo.digital
@@ -45,10 +58,6 @@ connect_oidc_issuer_uri: "https://{{ shared_service_keycloak_hostname }}/auth/re
connect_password_change_url: "https://{{ shared_service_keycloak_hostname }}/auth/realms/{{ current_realm_name }}/account/password"
connect_iam_user_management_url: "https://{{ shared_service_keycloak_hostname }}/auth/admin/{{ current_realm_name }}/console"
-connect_postgres_database: "connect-postgres"
-connect_postgres_admin_username: "connect-postgres-admin"
-connect_postgres_admin_password: "connect-postgres-admin"
-
connect_jwt_enabled: true
connect_jwt_secret: 908ae14462d049d3be84964ef379c7c6
diff --git a/group_vars/stage_dev/plain.yml b/group_vars/stage_dev/plain.yml
index e4c6d5b..9fd57fe 100644
--- a/group_vars/stage_dev/plain.yml
+++ b/group_vars/stage_dev/plain.yml
@@ -105,46 +105,58 @@ kibana_extra_hosts: [
ip: "{{ shared_service_elastic_03 }}",
},
]
-#prometheus_extra_hosts: [
-# {
-# hostname: "{{ shared_service_mail_hostname }}",
-# ip: "{{ shared_service_mail_ip }}",
-# }
-#]
-#connect_extra_hosts: [
-# {
-# hostname: "{{ shared_service_iam_hostname }}",
-# ip: "{{ shared_service_iam_ip }}",
-# },
-# {
-# hostname: "{{ shared_service_keycloak_hostname }}",
-# ip: "{{ shared_service_keycloak_ip }}",
-# },
-# {
-# hostname: "{{ shared_service_mail_hostname }}",
-# ip: "{{ shared_service_mail_ip }}",
-# }
-#]
-#keycloak_extra_hosts: [
-# {
-# hostname: "{{ shared_service_iam_hostname }}",
-# ip: "{{ shared_service_iam_ip }}",
-# },
-# {
-# hostname: "{{ shared_service_mail_hostname }}",
-# ip: "{{ shared_service_mail_ip }}",
-# }
-#]
-#iam_extra_hosts: [
-# {
-# hostname: "{{ shared_service_keycloak_hostname }}",
-# ip: "{{ shared_service_keycloak_ip }}",
-# },
-# {
-# hostname: "{{ shared_service_mail_hostname }}",
-# ip: "{{ shared_service_mail_ip }}",
-# }
-#]
+prometheus_extra_hosts: [
+ {
+ hostname: "{{ shared_service_mail_hostname }}",
+ ip: "{{ shared_service_mail_ip }}",
+ }
+]
+connect_extra_hosts: [
+ {
+ hostname: dev-elastic-stack-01-elastic,
+ ip: "{{ shared_service_elastic_01 }}",
+ },
+ {
+ hostname: dev-elastic-stack-02-elastic,
+ ip: "{{ shared_service_elastic_02 }}",
+ },
+ {
+ hostname: dev-elastic-stack-03-elastic,
+ ip: "{{ shared_service_elastic_03 }}",
+ },
+ {
+ hostname: "{{ shared_service_iam_hostname }}",
+ ip: "{{ shared_service_iam_ip }}",
+ },
+ {
+ hostname: "{{ shared_service_keycloak_hostname }}",
+ ip: "{{ shared_service_keycloak_ip }}",
+ },
+ {
+ hostname: "{{ shared_service_mail_hostname }}",
+ ip: "{{ shared_service_mail_ip }}",
+ },
+]
+keycloak_extra_hosts: [
+ {
+ hostname: "{{ shared_service_iam_hostname }}",
+ ip: "{{ shared_service_iam_ip }}",
+ },
+ {
+ hostname: "{{ shared_service_mail_hostname }}",
+ ip: "{{ shared_service_mail_ip }}",
+ }
+]
+iam_extra_hosts: [
+ {
+ hostname: "{{ shared_service_keycloak_hostname }}",
+ ip: "{{ shared_service_keycloak_ip }}",
+ },
+ {
+ hostname: "{{ shared_service_mail_hostname }}",
+ ip: "{{ shared_service_mail_ip }}",
+ }
+]
smardigo_management_url: "https://dev-management-smardigo-01.smardigo.digital/api/v1/scopes/{{ scope_id }}/processes/{{ process_instance_id }}/messages"
smardigo_management_token: "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiZGlyIn0..JgixZcmsSyvovabQvREAjw.Fk7aNYwOjzMhLCqF_9unl5yrWTey26z4scZBeVZjhpE.fnovrqn0MUjM_TA8zVhXdQ"
diff --git a/roles/connect/tasks/main.yml b/roles/connect/tasks/main.yml
index 5b820fc..64fa82d 100644
--- a/roles/connect/tasks/main.yml
+++ b/roles/connect/tasks/main.yml
@@ -63,6 +63,17 @@
current_owner: "{{ docker_owner }}"
current_group: "{{ docker_group }}"
+- name: "Deploy certificate templates for connect"
+ include_role:
+ name: _deploy
+ tasks_from: templates
+ vars:
+ current_config: "elastic-certs/certs"
+ current_base_path: "{{ service_base_path }}"
+ current_destination: "{{ connect_service_name }}/certs"
+ current_owner: "{{ docker_owner }}"
+ current_group: "{{ docker_group }}"
+
- name: "Update {{ connect_service_name }}"
shell: docker-compose pull
args:
diff --git a/roles/connect/vars/main.yml b/roles/connect/vars/main.yml
index 49c8e20..f781d5d 100644
--- a/roles/connect/vars/main.yml
+++ b/roles/connect/vars/main.yml
@@ -31,6 +31,8 @@ connect_labels: [
]
connect_environment: [
+ "TENANT_ID: \"{{ connect_client_id }}\"",
+
"ADMIN_LOGIN: \"{{ connect_admin_username }}\"",
"ADMIN_PASSWORD: \"{{ connect_admin_password }}\"",
@@ -71,10 +73,18 @@ connect_environment: [
"SMA_CSRF_TOKEN_VALUE: \"{{ connect_csrf_token_value | default('') }}\"",
"ELASTIC_HOST: \"{{ connect_elastic_host | default('') }}\"",
+ "ELASTIC_PREFIX: \"{{ connect_elastic_prefix }}\"",
"ELASTIC_USERNAME: \"{{ connect_elastic_username | default('') }}\"",
"ELASTIC_PASSWORD: \"{{ connect_elastic_password | default('') }}\"",
- "SEARCH_ELASTIC_INDEX: \"{{ connect_elastic_index | default('') }}\"",
- "ANALYSIS_ELASTIC_INDEX: \"{{ connect_elastic_analysis_index | default('') }}\"",
+ "ELASTIC_CA: \"{{ connect_elastic_ca | default('') }}\"",
+ "ELASTIC_SEARCH_INDEX: \"{{ connect_elastic_search_index | default('search') }}\"",
+ "ELASTIC_MESSAGE_INDEX: \"{{ connect_elastic_message_index | default('message') }}\"",
+ "ELASTIC_ANALYSIS_INDEX: \"{{ connect_elastic_analysis_index | default('analysis') }}\"",
+
+ "LOG_LEVEL_MESSAGE_QUEUE: \"{{ connect_loglevel_message_queue | default('INFO') }}\"",
+ "LOG_LEVEL_DOCUMENT_INDEX: \"{{ connect_loglevel_document_index | default('INFO') }}\"",
+ "LOG_LEVEL_WORKFLOW_INDEX: \"{{ connect_loglevel_workflow_index | default('INFO') }}\"",
+ "LOG_LEVEL_WORKFLOW_ANALYSIS: \"{{ connect_loglevel_workflow_analysis | default('INFO') }}\"",
]
connect_docker: {
@@ -96,6 +106,9 @@ connect_docker: {
labels: "{{ connect_labels + ( connect_labels_additional | default([])) }}",
restart: "{{ connect_service_restart | default('always') }}",
environment: "{{ connect_environment + ( connect_environment_additional | default([])) }}",
+ volumes: [
+ '"./certs/ca/ca.crt:/usr/share/smardigo/ca.crt:ro"',
+ ],
networks: [
'"back-tier"',
'"front-tier"',
diff --git a/roles/iam/vars/main.yml b/roles/iam/vars/main.yml
index b8d50be..6c3bdb7 100644
--- a/roles/iam/vars/main.yml
+++ b/roles/iam/vars/main.yml
@@ -54,10 +54,7 @@ iam_docker: {
labels: "{{ iam_labels + ( iam_labels_additional | default([])) }}",
restart: "{{ iam_service_restart | default('always') }}",
environment: [
- "SERVER_PORT: \"{{ service_port }}\"",
- "ADMIN_PORT: \"{{ management_port }}\"",
"SERVER_ERROR_INCLUDE_MESSAGE: \"always\"",
- "SPRING_CACHE_CAFFEINE_SPEC: \"expireAfterAccess={{ iam_cache_timeout }}\"",
"IAM_KEYCLOAK_AUTH_SERVER_URL: \"{{ iam_keycloak_auth_server_url }}\"",
"IAM_KEYCLOAK_ADMIN_USER: \"{{ iam_keycloak_admin_user }}\"",
"IAM_KEYCLOAK_ADMIN_PASSWORD: \"{{ iam_keycloak_admin_password }}\""
diff --git a/smardigo/provisioning/form/header.json b/smardigo/provisioning/form/header.json
index e769b51..ba26d64 100644
--- a/smardigo/provisioning/form/header.json
+++ b/smardigo/provisioning/form/header.json
@@ -3,7 +3,7 @@
"configKey" : "header",
"page" : 0,
"components" : [ {
- "input" : false,
+ "input" : false,
"tableView" : false,
"columns" : [ {
"components" : [ {
diff --git a/smardigo/provisioning/process-search/simple-connect.json b/smardigo/provisioning/process-search/simple-connect.json
index 7d7429f..44b0293 100644
--- a/smardigo/provisioning/process-search/simple-connect.json
+++ b/smardigo/provisioning/process-search/simple-connect.json
@@ -35,7 +35,29 @@
}, {
"key" : "vorgang_status_text",
"name" : "Status",
- "width" : 100
+ "width" : 100,
+ "render" : {
+ "type" : "nominal_classification",
+ "dataclassdefinitions" : [ {
+ "value" : "Neu",
+ "style" : "traffic-light-blue"
+ }, {
+ "value" : "Antrag gesendet",
+ "style" : "traffic-light-blue"
+ }, {
+ "value" : "Antrag freigegeben",
+ "style" : "traffic-light-yellow"
+ }, {
+ "value" : "Service wird gestartet",
+ "style" : "traffic-light-yellow"
+ }, {
+ "value" : "Service gestartet",
+ "style" : "traffic-light-green"
+ }, {
+ "value" : "Service gelöscht",
+ "style" : "traffic-light-red"
+ } ]
+ }
}, {
"key" : "candidateGroups",
"name" : "Gruppen",
@@ -51,7 +73,7 @@
}
}, {
"name" : "State",
- "key" : "process_state_text",
+ "key" : "vorgang_status_text",
"defaultOption" : {
"key" : "default",
"name" : "All"
diff --git a/smardigo/provisioning/process-variable-declaration/simple-connect.json b/smardigo/provisioning/process-variable-declaration/simple-connect.json
index 15156c4..c4b75cf 100644
--- a/smardigo/provisioning/process-variable-declaration/simple-connect.json
+++ b/smardigo/provisioning/process-variable-declaration/simple-connect.json
@@ -23,6 +23,18 @@
"type" : "boolean",
"classification" : "PRIVATE"
},
+ "id" : {
+ "type" : "string",
+ "classification" : "PRIVATE"
+ },
+ "key" : {
+ "type" : "string",
+ "classification" : "PRIVATE"
+ },
+ "name" : {
+ "type" : "string",
+ "classification" : "PRIVATE"
+ },
"progress_current" : {
"type" : "long",
"classification" : "PRIVATE"
@@ -35,6 +47,18 @@
"type" : "string",
"classification" : "PRIVATE"
},
+ "service_url" : {
+ "type" : "string",
+ "classification" : "PRIVATE"
+ },
+ "size" : {
+ "type" : "long",
+ "classification" : "PRIVATE"
+ },
+ "stage" : {
+ "type" : "string",
+ "classification" : "PRIVATE"
+ },
"tenant" : {
"type" : "object",
"classification" : "PRIVATE"
diff --git a/smardigo/provisioning/process/simple-connect.bpmn b/smardigo/provisioning/process/simple-connect.bpmn
index b317631..4a3b9e3 100644
--- a/smardigo/provisioning/process/simple-connect.bpmn
+++ b/smardigo/provisioning/process/simple-connect.bpmn
@@ -222,7 +222,7 @@ Variables.userId(authenticatedUserId)
Flow_1f0iyrk
Flow_11k5c1y
-
+
@@ -233,6 +233,7 @@ Variables.userId(authenticatedUserId)
Flow_15fkmn4
+ Flow_090j3ro
@@ -242,26 +243,8 @@ Variables.userId(authenticatedUserId)
Flow_11k5c1y
- Flow_1ebhrqm
Flow_15fkmn4
-
-
-
-
- import de.tolina.connect.common.variable.Variables
-def authenticatedUserId = users.currentUserId()
-Variables.userId(authenticatedUserId)
-
-
-
- Flow_1ebhrqm
- Flow_1pwn0n9
-
-
- Flow_1pwn0n9
-
-
@@ -317,8 +300,7 @@ Variables.userId(authenticatedUserId)
-
-
+
@@ -348,11 +330,128 @@ Variables.userId(authenticatedUserId)
Flow_13jykf9
+
+
+
+
+ Flow_0cxiaxt
+
+
+
+
+
+
+
+
+
+ ${5}
+
+
+
+ Flow_1d2gl8q
+ Flow_1c6reic
+
+
+
+
+
+
+
+
+ ${2}
+
+
+
+ Flow_07sf9z8
+ Flow_0dc3zbr
+
+
+
+
+
+
+
+
+ ${3}
+
+
+
+ Flow_0dc3zbr
+ Flow_1leflml
+
+
+
+
+
+
+
+
+ ${4}
+
+
+
+ Flow_1leflml
+ Flow_1d2gl8q
+
+
+
+
+ ${1}
+ ${5}
+
+
+ Flow_18y954i
+ Flow_07sf9z8
+
+
+
+
+
Flow_1onhxkb
+ Flow_17gszoo
+ Flow_1lt30rz
-
-
+
+
+
+
+ ${41}
+ Service wird aktualisiert
+
+
+ Flow_1lt30rz
+ Flow_18y954i
+
+
+
+
+
+ ${50}
+ Service gestartet
+
+
+ Flow_1c6reic
+ Flow_17gszoo
+
+
+
+
+
+
+
+
+
+
+
+ ${section}
+
+
+
+
+ Flow_0lrfzsu
+ Flow_1jfvhvl
+
@@ -368,8 +467,56 @@ Variables.userId(authenticatedUserId)
Flow_1qghkm9
Flow_0lrfzsu
-
-
+
+
+
+
+
+ MessageCard
+ http://schema.org/extensions
+ 0076D7
+ Neuer Antrag für ${tenant.name}
+ ${sections}
+
+
+
+
+ Flow_1jfvhvl
+ Flow_0cxiaxt
+
+
+
+
+ ${60}
+ Service wird gelöscht
+
+
+ Flow_090j3ro
+ Flow_0yckijr
+
+
+ Flow_0yckijr
+ Flow_0fyo5ev
+ Flow_0e66mfk
+
+
+
+
+
+
+
+
+ Service abreissen für ${tenant.name}
+ ${cluster.stage}-${tenant.key}-${cluster.name} for ${cluster.service}
+ https://img.welt.de/img/vermischtes/bilder-des-tages/mobile207066931/1242503207-ci102l-w1024/Coronavirus-USA.jpg
+
+
+
+
+ Flow_0e66mfk
+ Flow_0embcwh
+
+
@@ -379,10 +526,10 @@ Variables.userId(authenticatedUserId)
- Flow_0lrfzsu
- Flow_1jfvhvl
+ Flow_0embcwh
+ Flow_0011ju8
-
+
@@ -396,22 +543,64 @@ Variables.userId(authenticatedUserId)
- Flow_1jfvhvl
- Flow_0cxiaxt
+ Flow_0011ju8
+ Flow_1ecxnbj
-
- Flow_0cxiaxt
+
+ Flow_1ecxnbj
-
-
- Service auf Server installieren
+
+
+
+
+
+
+
+ import de.tolina.connect.common.variable.Variables
+def authenticatedUserId = users.currentUserId()
+Variables.userId(authenticatedUserId)
+
+
+
+ Flow_0fyo5ev
+ Flow_1pwn0n9
+
+
+
+
+ ${70}
+ Service gelöscht
+
+
+ Flow_1pwn0n9
+ Flow_13do7kt
+
+
+ Flow_13do7kt
+
+
+
+ Shared Service
+Server bei Hetzner erstellen
+- Provisioning
+- Domain (Administration)
+- Networks
+- Monitoring
+- Logging
+
+
+ Shared Service
+Keycloak Realm mit Administrator Account
-- Domain (Services)
-- connect
-- (wordpress)
+- Neuer Nutzer (connect-admin)
+- Emailadresse des Erstellers
+- Automatisch generiertes PW
+- PW per EMail an Administrator
-
+
+
+
Shared Service
Server bei Hetzner erstellen
@@ -421,7 +610,7 @@ Server bei Hetzner erstellen
- Monitoring
- Logging
-
+
Shared Service
Datenbanken erstellen
@@ -429,7 +618,7 @@ Datenbanken erstellen
- (wordpress)
- Credentials in Vorgang ablegen
-
+
Shared Service
Keycloak Realm mit Administrator Account
@@ -438,10 +627,45 @@ Keycloak Realm mit Administrator Account
- Automatisch generiertes PW
- PW per EMail an Administrator
-
-
+
+
+
-
+
+ Shared Service
+Datenbanken erstellen
+
+- connect
+- (wordpress)
+- Credentials in Vorgang ablegen
+
+
+ Service auf Server installieren
+
+- Domain (Services)
+- connect
+- (wordpress)
+
+
+
+ Service auf Server installieren
+
+- Domain (Services)
+- connect
+- (wordpress)
+
+
+
+ Service wieder abreissen
+
+- Server
+- Domain
+- Keycloak (Data/Config)
+- ElasticSearch Index (Data/Config)
+- Monitoring/Alerting
+- Database
+
+
@@ -522,12 +746,13 @@ Keycloak Realm mit Administrator Account
${contextScopeId}
${execution.getProcessInstanceId()}
${smardigoManagementAction}
- ${tenant.key}-${cluster.name}
+ ${cluster.name}
${cluster.service}
${cluster.size}
${cluster.stage}
${tenant.key}
${tenant.name}
+ ${tenant.key}
@@ -566,8 +791,71 @@ Keycloak Realm mit Administrator Account
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -590,8 +878,7 @@ Keycloak Realm mit Administrator Account
-
-
+
@@ -610,12 +897,11 @@ Keycloak Realm mit Administrator Account
-
-
-
-
-
-
+
+
+
+
+
@@ -744,6 +1030,26 @@ Keycloak Realm mit Administrator Account
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -774,6 +1080,48 @@ Keycloak Realm mit Administrator Account
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -856,12 +1204,6 @@ Keycloak Realm mit Administrator Account
-
-
-
-
-
-
@@ -895,55 +1237,111 @@ Keycloak Realm mit Administrator Account
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -956,10 +1354,6 @@ Keycloak Realm mit Administrator Account
-
-
-
-
@@ -972,14 +1366,6 @@ Keycloak Realm mit Administrator Account
-
-
-
-
-
-
-
-
diff --git a/update.sh b/update.sh
new file mode 100644
index 0000000..43c8faa
--- /dev/null
+++ b/update.sh
@@ -0,0 +1,10 @@
+git archive --format zip --output ../hetzner-ansible.zip master
+scp ../hetzner-ansible.zip sven.ketelsen@dev-awx-01.smardigo.digital:~/hetzner-ansible.zip
+
+#cd /var/lib/rancher/k3s/storage/pvc-57241168-6a49-4a8e-be84-748267fe1c5a_default_awx-projects-claim
+#mv hetzner-ansible hetzner-ansible-old<...>
+#mkdir hetzner-ansible
+#cd hetzner-ansible
+#cp ~/hetzner-ansible.zip .
+#unzip hetzner-ansible.zip
+#hetzner-ansible.zip
\ No newline at end of file