diff --git a/REUSE.toml b/REUSE.toml index f23bdfa3..fb5cde4d 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -14,7 +14,7 @@ SPDX-FileCopyrightText = "2023 Bundesministerium des Innern und für Heimat, PG SPDX-License-Identifier = "CC0-1.0" [[annotations]] -path = "helmfile/files/theme/*" +path = "helmfile/files/theme/**" SPDX-FileCopyrightText = "2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH" SPDX-License-Identifier = "Apache-2.0" diff --git a/cspell.json b/cspell.json index 1cac37b5..8fc9cd98 100644 --- a/cspell.json +++ b/cspell.json @@ -4,79 +4,81 @@ "dictionaryDefinitions": [], "dictionaries": [], "words": [ - "openDesk", + "Addressbooks", "AppSuite", - "Collabora", - "Digitale", - "Jitsi", - "Nextcloud", - "Öffentlichen", - "OpenProject", - "Souveränität", - "Verwaltung", - "Zentrum", - "Keycloak", - "NATS", - "slapadd", - "slapcat", - "RDBMS", - "Velero", - "Univention", - "OIDC", - "kcadmin", - "DMARC", - "homeserver", - "Bundesministerium", - "Innern", - "Heimat", - "Projektgruppe", + "Arbeitsplatz", "Aufbau", - "Filepicker", - "Weboffice", - "Xchange", - "opencode", - "seccomp", - "psql", - "databasename", - "helmfile", - "gotmpl", - "containerd", - "letsencrypt", - "CNCF", - "kubespray", - "ICAP", + "bootstrap", + "Bundesministerium", "Ceph", + "clamav", + "CNCF", + "Collabora", + "commandline", + "configurability", + "containerd", "Coturn", - "Minio", - "Kyverno", - "Otterize", - "IBAC", - "pubkeys", - "Grundschutz", - "Kubescape", - "Gitflow", - "hadolint", + "cryptpad", + "databasename", + "Digitale", + "DMARC", "explorative", + "Filepicker", + "filestore", + "Gitflow", + "gotmpl", + "Grundschutz", + "hadolint", + "Heimat", + "helmfile", + "helmfiles", + "homeserver", + "IBAC", + "ICAP", + "IMAPS", + "Innern", + "Jitsi", + "kcadmin", + "Keycloak", + "Kubescape", + "kubespray", + "Kyverno", + "letsencrypt", + "localpart", + "Minio", + "NATS", + "Nextcloud", + "nindent", "Nordeck", "Nubus", - "Souveräne", - "Arbeitsplatz", - "commandline", - "helmfiles", - "SMTPS", - "IMAPS", - "xwiki", - "cryptpad", - "clamav", - "templating", - "localpart", - "Addressbooks", - "filestore", - "trashbin", - "bootstrap", - "configurability", + "Öffentlichen", + "OIDC", + "opencode", + "openDesk", + "OpenProject", + "Otterize", + "Projektgruppe", + "psql", + "pubkeys", + "RDBMS", + "seccomp", "selfsigned", - "truststore" + "slapadd", + "slapcat", + "SMTPS", + "Souveräne", + "Souveränität", + "templating", + "trashbin", + "truststore", + "Univention", + "Velero", + "Verwaltung", + "Videokonferenz", + "Weboffice", + "Xchange", + "xwiki", + "Zentrum" ], "ignoreWords": [], "import": [] diff --git a/docs/migrations.md b/docs/migrations.md index f016b298..2ce25ec9 100644 --- a/docs/migrations.md +++ b/docs/migrations.md @@ -11,6 +11,7 @@ SPDX-License-Identifier: Apache-2.0 * [Releases upgrade details](#releases-upgrade-details) * [From v1.0.0](#from-v100) * [Pre-upgrade: Manual checks/steps from v1.0.0](#pre-upgrade-manual-checkssteps-from-v100) + * [Helmfile Cleanup: Restructured `/helmfile/files/theme` folder](#helmfile-cleanup-restructured-helmfilefilestheme-folder) * [Helmfile Cleanup: Consistent use of `*.yaml.gotmpl`](#helmfile-cleanup-consistent-use-of-yamlgotmpl) * [Helmfile Cleanup: Prefixing certain app directories with `opendesk-`](#helmfile-cleanup-prefixing-certain-app-directories-with-opendesk-) * [Helmfile Cleanup: Helmfile Cleanup: Splitting external vs. openDesk services](#helmfile-cleanup-helmfile-cleanup-splitting-external-vs-opendesk-services) @@ -76,6 +77,10 @@ Explanation of the table's columns: ### Pre-upgrade: Manual checks/steps from v1.0.0 +#### Helmfile Cleanup: Restructured `/helmfile/files/theme` folder + +If you make use of the [theme folder](../helmfile/files/theme/) or the [`theme.yaml.gotmpl`](../helmfile/environments/default/theme.yaml.gotmpl), e.g. to applying your own imagery, please ensure you adhere to the new structure of the folder and the yaml-file. + #### Helmfile Cleanup: Consistent use of `*.yaml.gotmpl` In v1.0.0 the files in [`/helmfile/environments/default`](../helmfile/environments/default/) had mixed extensions, diff --git a/helmfile/apps/element/helmfile-child.yaml.gotmpl b/helmfile/apps/element/helmfile-child.yaml.gotmpl index 96c31790..7f564e2f 100644 --- a/helmfile/apps/element/helmfile-child.yaml.gotmpl +++ b/helmfile/apps/element/helmfile-child.yaml.gotmpl @@ -112,15 +112,9 @@ repositories: url: "{{ .Values.global.helmRegistry | default .Values.charts.synapsePipe.registry }}/{{ .Values.charts.synapsePipe.repository }}" releases: - # During upgrade 1.0.0 -> 1.1.0 the chart 'opendesk-element' has been moved to 'opendesk-element-web' - name: "opendesk-element" chart: "element-repo/{{ .Values.charts.element.name }}" version: "{{ .Values.charts.element.version }}" - installed: false - - - name: "opendesk-element-web" - chart: "element-repo/{{ .Values.charts.elementWeb.name }}" - version: "{{ .Values.charts.elementWeb.version }}" values: - "values-element.yaml.gotmpl" {{ range .Values.customization.release.opendeskElement }} diff --git a/helmfile/apps/element/values-element.yaml.gotmpl b/helmfile/apps/element/values-element.yaml.gotmpl index 4092933e..47645263 100644 --- a/helmfile/apps/element/values-element.yaml.gotmpl +++ b/helmfile/apps/element/values-element.yaml.gotmpl @@ -149,6 +149,7 @@ resources: {{ .Values.resources.element | toYaml | nindent 2 }} theme: + title: "Chat - {{ .Values.theme.texts.productName }}" {{ .Values.theme | toYaml | nindent 2 }} ... diff --git a/helmfile/apps/jitsi/values-jitsi.yaml.gotmpl b/helmfile/apps/jitsi/values-jitsi.yaml.gotmpl index 32bd5562..06dc812a 100644 --- a/helmfile/apps/jitsi/values-jitsi.yaml.gotmpl +++ b/helmfile/apps/jitsi/values-jitsi.yaml.gotmpl @@ -63,6 +63,7 @@ settings: keycloakClientId: "opendesk-jitsi" theme: + title: "Videokonferenz - {{ .Values.theme.texts.productName }}" {{ .Values.theme | toYaml | nindent 2 }} jitsi: diff --git a/helmfile/apps/nubus/values-nubus.yaml.gotmpl b/helmfile/apps/nubus/values-nubus.yaml.gotmpl index 4ec97c8d..8273c73e 100644 --- a/helmfile/apps/nubus/values-nubus.yaml.gotmpl +++ b/helmfile/apps/nubus/values-nubus.yaml.gotmpl @@ -423,7 +423,7 @@ nubusStackDataUms: umcMemcachedHostname: {{ .Values.cache.umsSelfservice.host | quote }} umcMemcachedUsername: "" externalMailDomain: {{ .Values.global.mailDomain | default .Values.global.domain }} - umcHtmlTitle: "openDesk Portal" + umcHtmlTitle: "Portal - {{ .Values.theme.texts.productName }}" smtpHost: {{ printf "%s.%s.svc.%s" "postfix" (.Values.postfix.namespace | default .Release.Namespace) .Values.cluster.networking.domain | quote }} smtpPort: 25 smtpUser: "" @@ -443,8 +443,8 @@ nubusStackDataUms: portalGroupwareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.openxchange .Values.global.domain }} portalFileshareLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.nextcloud .Values.global.domain }} portalNotesLinkBase: {{ printf "https://%s.%s" .Values.global.hosts.notes .Values.global.domain }} - portalTitleDE: "openDesk Portal" - portalTitleEN: "openDesk Portal" + portalTitleDE: "Portal - {{ .Values.theme.texts.productName }}" + portalTitleEN: "Portal - {{ .Values.theme.texts.productName }}" oxDefaultContext: "1" componentEnabled: notes: {{ .Values.notes.enabled }} @@ -526,7 +526,7 @@ nubusUmcServer: nubusUmcGateway: umcGateway: - umcHtmlTitle: "openDesk Portal" + umcHtmlTitle: "Portal - {{ .Values.theme.texts.productName }}" ingress: certManager: enabled: false diff --git a/helmfile/apps/nubus/values-opendesk-customization.yaml.gotmpl b/helmfile/apps/nubus/values-opendesk-customization.yaml.gotmpl index 79ecbfa4..daf941ae 100644 --- a/helmfile/apps/nubus/values-opendesk-customization.yaml.gotmpl +++ b/helmfile/apps/nubus/values-opendesk-customization.yaml.gotmpl @@ -516,12 +516,12 @@ nubusPortalFrontend: {{ .Values.resources.umsPortalFrontend | toYaml | nindent 4 }} portalFrontend: branding: - css: {{ .Values.theme.styles.portalCss | toJson }} + css: {{ .Values.theme.styles.portal.main | toJson }} # Requires .ico, .svg does not work. - favicon: {{ .Values.theme.imagery.faviconIcoB64 | toJson }} + favicon: {{ .Values.theme.imagery.portal.faviconIco | toJson }} # The actual `logo` is set in customizing image, the logo down here is for for waiting spinner. - logo: {{ .Values.theme.imagery.portalWaitingSpinnerSvgB64 | toJson }} - backgroundImage: {{ .Values.theme.imagery.portalLogoBackgroundSvgB64 | toJson }} + logo: {{ .Values.theme.imagery.portal.waitingSpinnerSvg | toJson }} + backgroundImage: {{ .Values.theme.imagery.portal.logoBackgroundSvg | toJson }} nubusStackDataUms: containerSecurityContext: diff --git a/helmfile/apps/opendesk-services/helmfile-child.yaml.gotmpl b/helmfile/apps/opendesk-services/helmfile-child.yaml.gotmpl index f4421ec6..a7f622a1 100644 --- a/helmfile/apps/opendesk-services/helmfile-child.yaml.gotmpl +++ b/helmfile/apps/opendesk-services/helmfile-child.yaml.gotmpl @@ -44,7 +44,7 @@ repositories: # openDesk Grafana Dashboards # https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-dashboards - - name: "dashboards-repo" + - name: "opendesk-dashboards-repo" keyring: "../../files/gpg-pubkeys/opencode.gpg" verify: {{ .Values.charts.opendeskDashboards.verify }} username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }} @@ -52,6 +52,16 @@ repositories: oci: true url: "{{ .Values.global.helmRegistry | default .Values.charts.opendeskDashboards.registry }}/{{ .Values.charts.opendeskDashboards.repository }}" + # openDesk Static Files + # https://gitlab.opencode.de/bmi/opendesk/components/platform-development/charts/opendesk-static-files + - name: "opendesk-static-files-repo" + keyring: "../../files/gpg-pubkeys/opencode.gpg" + verify: {{ .Values.charts.opendeskStaticFiles.verify }} + username: {{ env "OD_PRIVATE_REGISTRY_USERNAME" | quote }} + password: {{ env "OD_PRIVATE_REGISTRY_PASSWORD" | quote }} + oci: true + url: "{{ .Values.global.helmRegistry | default .Values.charts.opendeskStaticFiles.registry }}/{{ .Values.charts.opendeskStaticFiles.repository }}" + releases: - name: "opendesk-otterize" chart: "otterize-repo/{{ .Values.charts.otterize.name }}" @@ -97,14 +107,23 @@ releases: timeout: 900 - name: "opendesk-dashboards" - chart: "dashboards-repo/{{ .Values.charts.opendeskDashboards.name }}" + chart: "opendesk-dashboards-repo/{{ .Values.charts.opendeskDashboards.name }}" version: "{{ .Values.charts.opendeskDashboards.version }}" values: - - "values-dashboards.yaml.gotmpl" + - "values-opendesk-dashboards.yaml.gotmpl" - {{ .Values.customization.release.opendeskDashboards | default "additionalValues: false" }} installed: {{ .Values.monitoring.grafana.dashboards.enabled }} timeout: 900 + - name: "opendesk-static-files" + chart: "opendesk-static-files-repo/{{ .Values.charts.opendeskStaticFiles.name }}" + version: "{{ .Values.charts.opendeskStaticFiles.version }}" + values: + - "values-opendesk-static-files.yaml.gotmpl" + - {{ .Values.customization.release.opendeskStaticFiles | default "additionalValues: false" }} + installed: {{ .Values.staticFiles.enabled }} + timeout: 900 + commonLabels: deployStage: "030-opendesk-services" component: "opendesk-services" diff --git a/helmfile/apps/opendesk-services/values-dashboards.yaml.gotmpl b/helmfile/apps/opendesk-services/values-opendesk-dashboards.yaml.gotmpl similarity index 100% rename from helmfile/apps/opendesk-services/values-dashboards.yaml.gotmpl rename to helmfile/apps/opendesk-services/values-opendesk-dashboards.yaml.gotmpl diff --git a/helmfile/apps/opendesk-services/values-opendesk-static-files.yaml.gotmpl b/helmfile/apps/opendesk-services/values-opendesk-static-files.yaml.gotmpl new file mode 100644 index 00000000..a7f1d764 --- /dev/null +++ b/helmfile/apps/opendesk-services/values-opendesk-static-files.yaml.gotmpl @@ -0,0 +1,107 @@ +{{/* +SPDX-FileCopyrightText: 2024 Zentrum für Digitale Souveränität der Öffentlichen Verwaltung (ZenDiS) GmbH +SPDX-License-Identifier: Apache-2.0 +*/}} +--- +global: + domain: {{ .Values.global.domain | quote }} + hosts: + {{ .Values.global.hosts | toYaml | nindent 4 }} + imagePullSecrets: + {{ .Values.global.imagePullSecrets | toYaml | nindent 4 }} + +cleanup: + deletePodsOnSuccess: {{ .Values.debug.cleanup.deletePodsOnSuccess }} + deletePodsOnSuccessTimeout: {{ .Values.debug.cleanup.deletePodsOnSuccessTimeout }} + +containerSecurityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - "ALL" + enabled: true + runAsUser: 101 + runAsGroup: 101 + seccompProfile: + type: "RuntimeDefault" + readOnlyRootFilesystem: true + runAsNonRoot: true + seLinuxOptions: + {{ .Values.seLinuxOptions.opendeskStaticFiles | toYaml | nindent 4 }} + +ingress: + ingressClassName: {{ .Values.ingress.ingressClassName | quote }} + host: "{{ .Values.global.hosts.static }}.{{ .Values.global.domain }}" + tls: + secretName: {{ .Values.ingress.tls.secretName | quote }} + +image: + registry: {{ coalesce .Values.repositories.image.dockerHub .Values.global.imageRegistry .Values.images.opendeskStaticFiles.registry | quote }} + repository: {{ .Values.images.opendeskStaticFiles.repository | quote }} + tag: {{ .Values.images.opendeskStaticFiles.tag | quote }} + imagePullPolicy: {{ .Values.global.imagePullPolicy | quote }} + + +podSecurityContext: + enabled: true + fsGroup: 101 + fsGroupChangePolicy: "Always" + +replicaCount: {{ .Values.replicas.opendeskStaticFiles }} + +resources: + {{ .Values.resources.opendeskStaticFiles | toYaml | nindent 2 }} + +service: + type: "ClusterIP" + +theme: + imagery: + assets: + element: + subdomain: {{ .Values.global.hosts.element }} + paths: + - path: "/vector-icons/favicon.........ico" + data: {{ .Values.theme.imagery.chat.faviconIco }} + jitsi: + subdomain: {{ .Values.global.hosts.jitsi }} + paths: + - path: "/images/favicon.svg" + data: {{ .Values.theme.imagery.videoconference.faviconSvg }} + keycloak: + subdomain: {{ .Values.global.hosts.keycloak }} + paths: + - path: "/resources/...../login/UCS/img/favicon.ico" + data: {{ .Values.theme.imagery.portal.faviconIco }} + nextcloud: + subdomain: {{ .Values.global.hosts.nextcloud }} + paths: + - path: "/core/img/favicon-touch.png" + data: {{ .Values.theme.imagery.files.faviconPng }} + - path: "/core/img/favicon.ico" + data: {{ .Values.theme.imagery.files.faviconIco }} + openproject: + subdomain: {{ .Values.global.hosts.openproject }} + paths: + - path: "/custom_style/........../favicon/favicon.svg" + data: {{ .Values.theme.imagery.projects.faviconSvg }} + openxchange: + subdomain: {{ .Values.global.hosts.openxchange }} + paths: + - path: "/appsuite/favicon.ico" + data: {{ .Values.theme.imagery.groupware.faviconIco }} + - path: "/appsuite/favicon.svg" + data: {{ .Values.theme.imagery.groupware.faviconSvg }} + portal: + subdomain: {{ .Values.global.hosts.nubus }} + paths: + - path: "/favicon.ico" + data: {{ .Values.theme.imagery.portal.faviconIco }} + xwiki: + subdomain: {{ .Values.global.hosts.xwiki }} + paths: + - path: "/resources/icons/xwiki/favicon.svg" + data: {{ .Values.theme.imagery.knowledge.faviconSvg }} + - path: "/resources/icons/xwiki/favicon16.png" + data: {{ .Values.theme.imagery.knowledge.faviconPng }} +... diff --git a/helmfile/apps/openproject/values.yaml.gotmpl b/helmfile/apps/openproject/values.yaml.gotmpl index 4dc9edad..665a7047 100644 --- a/helmfile/apps/openproject/values.yaml.gotmpl +++ b/helmfile/apps/openproject/values.yaml.gotmpl @@ -40,7 +40,7 @@ dbInit: environment: # For more details and more options see # https://www.openproject.org/docs/installation-and-operations/configuration/environment/ - OPENPROJECT_APP__TITLE: "Projects | {{ .Values.theme.texts.productName }}" + OPENPROJECT_APP__TITLE: "Projekte - {{ .Values.theme.texts.productName }}" OPENPROJECT_LOG__LEVEL: {{ if .Values.debug.enabled }}"debug"{{ else }}"info"{{ end }} OPENPROJECT_LOGIN__REQUIRED: "true" OPENPROJECT_USER__DEFAULT__TIMEZONE: "Europe/Berlin" diff --git a/helmfile/apps/xwiki/values.yaml.gotmpl b/helmfile/apps/xwiki/values.yaml.gotmpl index 22e186da..f1bd004d 100644 --- a/helmfile/apps/xwiki/values.yaml.gotmpl +++ b/helmfile/apps/xwiki/values.yaml.gotmpl @@ -141,9 +141,6 @@ postgresql: properties: "attachment:xwiki:FlamingoThemes.Iceberg@logo.svg": "data:image/svg+xml;base64,{{ .Values.theme.imagery.logoHeaderSvgB64 }}" - "attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon.svg": "data:image/svg+xml;base64,{{ .Values.theme.imagery.faviconSvgB64 }}" - "attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon16.png": "data:image/png;base64,{{ .Values.theme.imagery.favicon16PngB64 }}" - "attachment:xwiki:XWiki.DefaultSkin@icons.xwiki.favicon144.png": "data:image/png;base64,{{ .Values.theme.imagery.favicon144PngB64 }}" "property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.secure": 1 "property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.server": "{{ .Values.global.hosts.xwiki }}.{{ .Values.global.domain }}" "property:xwiki:XWiki.XWikiServerXwiki^XWiki.XWikiServerClass.port": 443 @@ -193,7 +190,7 @@ properties: ## LDAP filter to only synchronize some groups "property:xwiki:LDAPUserImport.WebHome^LDAPUserImport.LDAPUserImportConfigClass.ldapGroupImportSearchFilter": "(&(objectClass=opendeskKnowledgemanagementGroup)(opendeskKnowledgemanagementEnabled=TRUE))" - "property:xwiki:XWiki.XWikiPreferences^XWiki.XWikiPreferences.title": "{{ .Values.theme.texts.productName }} Wissen - $!tdoc.displayTitle" + "property:xwiki:XWiki.XWikiPreferences^XWiki.XWikiPreferences.title": "Wissen - $!tdoc.displayTitle - {{ .Values.theme.texts.productName }}" cluster: replicas: {{ .Values.replicas.xwiki }} diff --git a/helmfile/environments/default/charts.yaml.gotmpl b/helmfile/environments/default/charts.yaml.gotmpl index f91db86c..7c432c95 100644 --- a/helmfile/environments/default/charts.yaml.gotmpl +++ b/helmfile/environments/default/charts.yaml.gotmpl @@ -21,7 +21,7 @@ charts: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/charts/opendesk-certificates" name: "opendesk-certificates" - version: "3.1.0" + version: "3.1.1" verify: true clamav: # providerCategory: "Platform" @@ -104,7 +104,7 @@ charts: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/charts/opendesk-element" name: "opendesk-element" - version: "5.0.1" + version: "6.0.0" verify: true elementWeb: # providerCategory: "Platform" @@ -114,7 +114,7 @@ charts: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/charts/opendesk-element" name: "opendesk-element-web" - version: "5.0.1" + version: "6.0.0" verify: true elementWellKnown: # providerCategory: "Platform" @@ -124,7 +124,7 @@ charts: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/charts/opendesk-element" name: "opendesk-well-known" - version: "5.0.1" + version: "6.0.0" verify: true home: # providerCategory: "Platform" @@ -156,7 +156,7 @@ charts: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/charts/opendesk-jitsi" name: "opendesk-jitsi" - version: "2.1.1" + version: "3.0.1" verify: true mariadb: # providerCategory: "Platform" @@ -216,7 +216,7 @@ charts: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/charts/opendesk-element" name: "opendesk-matrix-user-verification-service" - version: "5.0.1" + version: "6.0.1" verify: true memcached: # providerCategory: "Community" @@ -340,6 +340,16 @@ charts: name: "opendesk-keycloak-bootstrap" version: "2.2.0" verify: true + opendeskStaticFiles: + # providerCategory: "Platform" + # providerResponsible: "openDesk" + # upstreamRegistry: "https://registry.opencode.de" + # upstreamRepository: "bmi/opendesk/components/platform-development/charts/opendesk-static-files/opendesk-static-files" + registry: "registry.opencode.de" + repository: "bmi/opendesk/components/platform-development/charts/opendesk-static-files" + name: "opendesk-static-files" + version: "3.0.1" + verify: true openproject: # providerCategory: "Supplier" # providerResponsible: "openProject" @@ -444,7 +454,7 @@ charts: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/charts/opendesk-element" name: "opendesk-synapse" - version: "5.0.1" + version: "6.0.1" verify: true synapseAdmin: # Component is required for openDesk Enterprise only. @@ -468,7 +478,7 @@ charts: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/charts/opendesk-element" name: "opendesk-synapse-create-account" - version: "5.0.1" + version: "6.0.0" verify: true synapseGroupsync: # Component is required for openDesk Enterprise only. @@ -492,7 +502,7 @@ charts: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/charts/opendesk-element" name: "opendesk-synapse-web" - version: "5.0.1" + version: "6.0.0" verify: true xwiki: # providerCategory: "Supplier" diff --git a/helmfile/environments/default/customization.yaml.gotmpl b/helmfile/environments/default/customization.yaml.gotmpl index 772fa3f5..2eb3cd86 100644 --- a/helmfile/environments/default/customization.yaml.gotmpl +++ b/helmfile/environments/default/customization.yaml.gotmpl @@ -50,12 +50,16 @@ customization: openproject: {} # openproject-bootstrap opendeskOpenprojectBootstrap: {} - # services + # xwiki + xwiki: {} + # openDesk services opendeskOtterize: {} opendeskHome: {} opendeskCertificates: {} opendeskAlerts: {} opendeskDashboards: {} + opendeskStaticFiles: {} + # external services redis: {} memcached: {} postgresql: {} @@ -65,8 +69,6 @@ customization: clamav: {} clamavSimple: {} minio: {} - # xwiki - xwiki: {} # openDesk Enterprise Components cassandra: {} diff --git a/helmfile/environments/default/debug.yaml.gotmpl b/helmfile/environments/default/debug.yaml.gotmpl index b53563bb..41dd6e57 100644 --- a/helmfile/environments/default/debug.yaml.gotmpl +++ b/helmfile/environments/default/debug.yaml.gotmpl @@ -7,9 +7,9 @@ debug: deletePodsOnSuccess: true # When deletePodsOnSuccess is enabled, the pod will be deleted after configured seconds. deletePodsOnSuccessTimeout: 60 - # Keep persistence on deletion of this release. + # Keep persistence on deletion of a release. keepPVCOnDelete: false - # Keep additional resources, like certificates on deletion of this release. + # Keep additional resources, like certificates on deletion of a release. keepRessourceOnDelete: true # should activate debug output in all components and even allow e.g. successfully executed jobs # to stay available. This is going to be implemented on a case by case basis when we actually diff --git a/helmfile/environments/default/global.yaml.gotmpl b/helmfile/environments/default/global.yaml.gotmpl index bc8cac76..a616017e 100644 --- a/helmfile/environments/default/global.yaml.gotmpl +++ b/helmfile/environments/default/global.yaml.gotmpl @@ -48,6 +48,7 @@ global: nubus: "portal" openproject: "projects" openxchange: "webmail" + static: "static" synapse: "matrix" synapseFederation: "matrix-federation" whiteboard: "whiteboard" diff --git a/helmfile/environments/default/images.yaml.gotmpl b/helmfile/environments/default/images.yaml.gotmpl index 7402255d..f147b468 100644 --- a/helmfile/environments/default/images.yaml.gotmpl +++ b/helmfile/environments/default/images.yaml.gotmpl @@ -628,6 +628,14 @@ images: registry: "registry.opencode.de" repository: "bmi/opendesk/components/platform-development/images/opendesk-keycloak-bootstrap" tag: "1.2.1@sha256:f5ce0be27580c6347c5e700c4fa271a811d45d8a0e4b40ffe8a4d0e3d47e670f" + opendeskStaticFiles: + # providerCategory: "Community" + # providerResponsible: "Element" + # upstreamRegistry: "https://registry-1.docker.io" + # upstreamRepository: "library/nginx" + registry: "registry-1.docker.io" + repository: "library/nginx" + tag: "1.27.3-alpine3.20@sha256:41523187cf7d7a2f2677a80609d9caa14388bf5c1fbca9c410ba3de602aaaab4" openproject: # providerCategory: "Supplier" # providerResponsible: "OpenProject" @@ -859,7 +867,7 @@ images: # upstreamRepository: "library/nginx" registry: "registry-1.docker.io" repository: "library/nginx" - tag: "1.27.0-bookworm@sha256:1445eb9c6dc5e9619346c836ef6fbd6a95092e4663f27dcfce116f051cdbd232" + tag: "1.27.3-alpine3.20@sha256:41523187cf7d7a2f2677a80609d9caa14388bf5c1fbca9c410ba3de602aaaab4" xwiki: # providerCategory: "Supplier" # providerResponsible: "XWiki" diff --git a/helmfile/environments/default/opendesk_main.yaml.gotmpl b/helmfile/environments/default/opendesk_main.yaml.gotmpl index 7b8db222..f803af51 100644 --- a/helmfile/environments/default/opendesk_main.yaml.gotmpl +++ b/helmfile/environments/default/opendesk_main.yaml.gotmpl @@ -70,6 +70,9 @@ postgresql: redis: enabled: true namespace: ~ +staticFiles: + enabled: true + namespace: ~ xwiki: enabled: true namespace: ~ diff --git a/helmfile/environments/default/replicas.yaml.gotmpl b/helmfile/environments/default/replicas.yaml.gotmpl index 998d7f78..74136ad8 100644 --- a/helmfile/environments/default/replicas.yaml.gotmpl +++ b/helmfile/environments/default/replicas.yaml.gotmpl @@ -155,6 +155,10 @@ replicas: # -- scalable: true nextcloudExporter: 1 + # -- component: openDesk Static Files + # -- scalable: true + opendeskStaticFiles: 1 + # -- component: Project management (OpenProject) # -- scalable: true openprojectWeb: 1 diff --git a/helmfile/environments/default/resources.yaml.gotmpl b/helmfile/environments/default/resources.yaml.gotmpl index d08b60fc..219a1e41 100644 --- a/helmfile/environments/default/resources.yaml.gotmpl +++ b/helmfile/environments/default/resources.yaml.gotmpl @@ -134,6 +134,13 @@ resources: requests: cpu: 0.1 memory: "256Mi" + opendeskStaticFiles: + limits: + cpu: 99 + memory: "64Mi" + requests: + cpu: 0.01 + memory: "16Mi" umsKeycloak: limits: cpu: 99 diff --git a/helmfile/environments/default/selinux.yaml.gotmpl b/helmfile/environments/default/selinux.yaml.gotmpl index 4b5ae0e5..10d50867 100644 --- a/helmfile/environments/default/selinux.yaml.gotmpl +++ b/helmfile/environments/default/selinux.yaml.gotmpl @@ -41,6 +41,7 @@ seLinuxOptions: notesFrontend: ~ notesYProvider: ~ opendeskKeycloakBootstrap: ~ + opendeskStaticFiles: ~ openproject: ~ openprojectBootstrap: ~ openprojectDbInit: ~ diff --git a/helmfile/environments/default/theme.yaml.gotmpl b/helmfile/environments/default/theme.yaml.gotmpl index 6a64a0f0..f51cb2c4 100644 --- a/helmfile/environments/default/theme.yaml.gotmpl +++ b/helmfile/environments/default/theme.yaml.gotmpl @@ -39,48 +39,64 @@ theme: ## Define imagery # imagery: - # Xwiki - faviconSvgB64: {{ readFile "./../../files/theme/favicon.svg" | b64enc | quote }} - faviconIcoB64: {{ readFile "./../../files/theme/favicon.ico" | b64enc | quote }} - favicon16PngB64: {{ readFile "./../../files/theme/favicon16.png" | b64enc | quote }} - favicon144PngB64: {{ readFile "./../../files/theme/favicon144.png" | b64enc | quote }} logoHeaderSvgB64: {{ readFile "./../../files/theme/logoHeader.svg" | b64enc | quote }} - - # Jitsi logoHeaderInvertedSvgB64: {{ readFile "./../../files/theme/logoHeaderInverted.svg" | b64enc | quote }} - # Portal - portalLogoBackgroundSvgB64: {{ readFile "./../../files/theme/empty.svg" | b64enc | quote }} - portalWaitingSpinnerSvgB64: {{ readFile "./../../files/theme/portalWaitingSpinner.svg" | b64enc | quote }} + chat: + faviconIco: {{ readFile "./../../files/theme/chat/favicon.ico" | b64enc | quote }} + + files: + faviconIco: {{ readFile "./../../files/theme/files/favicon.ico" | b64enc | quote }} + faviconPng: {{ readFile "./../../files/theme/files/favicon.png" | b64enc | quote }} + + groupware: + faviconIco: {{ readFile "./../../files/theme/groupware/favicon.ico" | b64enc | quote }} + faviconSvg: {{ readFile "./../../files/theme/groupware/favicon.svg" | b64enc | quote }} + + knowledge: + faviconSvg: {{ readFile "./../../files/theme/knowledge/favicon.svg" | b64enc | quote }} + faviconPng: {{ readFile "./../../files/theme/knowledge/favicon.png" | b64enc | quote }} + + portal: + faviconIco: {{ readFile "./../../files/theme/portal/favicon.ico" | b64enc | quote }} + waitingSpinnerSvg: {{ readFile "./../../files/theme/portal/waitingSpinner.svg" | b64enc }} + logoBackgroundSvg: {{ readFile "./../../files/theme/empty.svg" | b64enc | quote }} portalTiles: - adminAnnouncement: {{ readFile "./../../files/portal-tiles/admin_announcement.svg" | b64enc | quote }} - adminContext: {{ readFile "./../../files/portal-tiles/admin_context.svg" | b64enc | quote }} - adminFunctionalmailbox: {{ readFile "./../../files/portal-tiles/admin_functionalmailbox.svg" | b64enc | quote }} - adminGroup: {{ readFile "./../../files/portal-tiles/admin_group.svg" | b64enc | quote }} - adminResource: {{ readFile "./../../files/portal-tiles/admin_resource.svg" | b64enc | quote }} - adminUser: {{ readFile "./../../files/portal-tiles/admin_user.svg" | b64enc | quote }} - anonymousLogin: {{ readFile "./../../files/portal-tiles/anonymous_login.svg" | b64enc | quote }} - dummyCircle: {{ readFile "./../../files/portal-tiles/dummy_circle.svg" | b64enc | quote }} - fileshareActivity: {{ readFile "./../../files/portal-tiles/fileshare_activity.svg" | b64enc | quote }} - fileshareDirectdocOdp: {{ readFile "./../../files/portal-tiles/fileshare_directdoc_odp.svg" | b64enc | quote }} - fileshareDirectdocOds: {{ readFile "./../../files/portal-tiles/fileshare_directdoc_ods.svg" | b64enc | quote }} - fileshareDirectdocOdt: {{ readFile "./../../files/portal-tiles/fileshare_directdoc_odt.svg" | b64enc | quote }} - fileshareFiles: {{ readFile "./../../files/portal-tiles/fileshare_files.svg" | b64enc | quote }} - groupwareCalendar: {{ readFile "./../../files/portal-tiles/groupware_calendar.svg" | b64enc | quote }} - groupwareContacts: {{ readFile "./../../files/portal-tiles/groupware_contacts.svg" | b64enc | quote }} - groupwareMail: {{ readFile "./../../files/portal-tiles/groupware_mail.svg" | b64enc | quote }} - groupwareTasks: {{ readFile "./../../files/portal-tiles/groupware_tasks.svg" | b64enc | quote }} - managementKnowledge: {{ readFile "./../../files/portal-tiles/management_knowledge.svg" | b64enc | quote }} - managementProject: {{ readFile "./../../files/portal-tiles/management_project.svg" | b64enc | quote }} - notes: {{ readFile "./../../files/portal-tiles/misc_notes.svg" | b64enc | quote }} - realtimeCollaboration: {{ readFile "./../../files/portal-tiles/realtime_collaboration.svg" | b64enc | quote }} - realtimeVideoconference: {{ readFile "./../../files/portal-tiles/realtime_videoconference.svg" | b64enc | quote }} - selfserviceChangepassword: {{ readFile "./../../files/portal-tiles/selfservice_changepassword.svg" | b64enc | quote }} - selfserviceEditprofile: {{ readFile "./../../files/portal-tiles/selfservice_editprofile.svg" | b64enc | quote }} - selfserviceProtectaccount: {{ readFile "./../../files/portal-tiles/selfservice_protectaccount.svg" | b64enc | quote }} + adminAnnouncement: {{ readFile "./../../files/theme/portal-tiles/admin_announcement.svg" | b64enc | quote }} + adminContext: {{ readFile "./../../files/theme/portal-tiles/admin_context.svg" | b64enc | quote }} + adminFunctionalmailbox: {{ readFile "./../../files/theme/portal-tiles/admin_functionalmailbox.svg" | b64enc | quote }} + adminGroup: {{ readFile "./../../files/theme/portal-tiles/admin_group.svg" | b64enc | quote }} + adminResource: {{ readFile "./../../files/theme/portal-tiles/admin_resource.svg" | b64enc | quote }} + adminUser: {{ readFile "./../../files/theme/portal-tiles/admin_user.svg" | b64enc | quote }} + anonymousLogin: {{ readFile "./../../files/theme/portal-tiles/anonymous_login.svg" | b64enc | quote }} + dummyCircle: {{ readFile "./../../files/theme/portal-tiles/dummy_circle.svg" | b64enc | quote }} + fileshareActivity: {{ readFile "./../../files/theme/portal-tiles/fileshare_activity.svg" | b64enc | quote }} + fileshareDirectdocOdp: {{ readFile "./../../files/theme/portal-tiles/fileshare_directdoc_odp.svg" | b64enc | quote }} + fileshareDirectdocOds: {{ readFile "./../../files/theme/portal-tiles/fileshare_directdoc_ods.svg" | b64enc | quote }} + fileshareDirectdocOdt: {{ readFile "./../../files/theme/portal-tiles/fileshare_directdoc_odt.svg" | b64enc | quote }} + fileshareFiles: {{ readFile "./../../files/theme/portal-tiles/fileshare_files.svg" | b64enc | quote }} + groupwareCalendar: {{ readFile "./../../files/theme/portal-tiles/groupware_calendar.svg" | b64enc | quote }} + groupwareContacts: {{ readFile "./../../files/theme/portal-tiles/groupware_contacts.svg" | b64enc | quote }} + groupwareMail: {{ readFile "./../../files/theme/portal-tiles/groupware_mail.svg" | b64enc | quote }} + groupwareTasks: {{ readFile "./../../files/theme/portal-tiles/groupware_tasks.svg" | b64enc | quote }} + managementKnowledge: {{ readFile "./../../files/theme/portal-tiles/management_knowledge.svg" | b64enc | quote }} + managementProject: {{ readFile "./../../files/theme/portal-tiles/management_project.svg" | b64enc | quote }} + notes: {{ readFile "./../../files/theme/portal-tiles/misc_notes.svg" | b64enc | quote }} + realtimeCollaboration: {{ readFile "./../../files/theme/portal-tiles/realtime_collaboration.svg" | b64enc | quote }} + realtimeVideoconference: {{ readFile "./../../files/theme/portal-tiles/realtime_videoconference.svg" | b64enc | quote }} + selfserviceChangepassword: {{ readFile "./../../files/theme/portal-tiles/selfservice_changepassword.svg" | b64enc | quote }} + selfserviceEditprofile: {{ readFile "./../../files/theme/portal-tiles/selfservice_editprofile.svg" | b64enc | quote }} + selfserviceProtectaccount: {{ readFile "./../../files/theme/portal-tiles/selfservice_protectaccount.svg" | b64enc | quote }} + + projects: + faviconSvg: {{ readFile "./../../files/theme/projects/favicon.svg" | b64enc | quote }} + + videoconference: + faviconSvg: {{ readFile "./../../files/theme/videoconference/favicon.svg" | b64enc | quote }} ## Where required define complete Stylesheets # styles: - portalCss: {{ readFile "./../../files/theme/portalStylesheet.css" | b64enc }} + portal: + main: {{ readFile "./../../files/theme/portal/stylesheet.css" | b64enc }} ... diff --git a/helmfile/files/theme/_dev/red.ico b/helmfile/files/theme/_dev/red.ico new file mode 100644 index 00000000..29ade171 Binary files /dev/null and b/helmfile/files/theme/_dev/red.ico differ diff --git a/helmfile/files/theme/_dev/red.png b/helmfile/files/theme/_dev/red.png new file mode 100644 index 00000000..fc225308 Binary files /dev/null and b/helmfile/files/theme/_dev/red.png differ diff --git a/helmfile/files/theme/_dev/red.svg b/helmfile/files/theme/_dev/red.svg new file mode 100644 index 00000000..61182609 --- /dev/null +++ b/helmfile/files/theme/_dev/red.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/helmfile/files/theme/chat/favicon.ico b/helmfile/files/theme/chat/favicon.ico new file mode 100644 index 00000000..61e71022 Binary files /dev/null and b/helmfile/files/theme/chat/favicon.ico differ diff --git a/helmfile/files/theme/favicon.ico b/helmfile/files/theme/favicon.ico deleted file mode 100644 index 667f9244..00000000 Binary files a/helmfile/files/theme/favicon.ico and /dev/null differ diff --git a/helmfile/files/theme/favicon144.png b/helmfile/files/theme/favicon144.png deleted file mode 100644 index 0825116f..00000000 Binary files a/helmfile/files/theme/favicon144.png and /dev/null differ diff --git a/helmfile/files/theme/favicon16.png b/helmfile/files/theme/favicon16.png deleted file mode 100644 index 6bf08436..00000000 Binary files a/helmfile/files/theme/favicon16.png and /dev/null differ diff --git a/helmfile/files/theme/files/favicon.ico b/helmfile/files/theme/files/favicon.ico new file mode 100644 index 00000000..e481d2ab Binary files /dev/null and b/helmfile/files/theme/files/favicon.ico differ diff --git a/helmfile/files/theme/files/favicon.png b/helmfile/files/theme/files/favicon.png new file mode 100644 index 00000000..7e3a6cda Binary files /dev/null and b/helmfile/files/theme/files/favicon.png differ diff --git a/helmfile/files/theme/groupware/favicon.ico b/helmfile/files/theme/groupware/favicon.ico new file mode 100644 index 00000000..f44c8566 Binary files /dev/null and b/helmfile/files/theme/groupware/favicon.ico differ diff --git a/helmfile/files/theme/groupware/favicon.svg b/helmfile/files/theme/groupware/favicon.svg new file mode 100644 index 00000000..822a7bd3 --- /dev/null +++ b/helmfile/files/theme/groupware/favicon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/helmfile/files/theme/knowledge/favicon.png b/helmfile/files/theme/knowledge/favicon.png new file mode 100644 index 00000000..f1509678 Binary files /dev/null and b/helmfile/files/theme/knowledge/favicon.png differ diff --git a/helmfile/files/theme/knowledge/favicon.svg b/helmfile/files/theme/knowledge/favicon.svg new file mode 100644 index 00000000..ff6494ed --- /dev/null +++ b/helmfile/files/theme/knowledge/favicon.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/helmfile/files/portal-tiles/admin_announcement.svg b/helmfile/files/theme/portal-tiles/admin_announcement.svg similarity index 100% rename from helmfile/files/portal-tiles/admin_announcement.svg rename to helmfile/files/theme/portal-tiles/admin_announcement.svg diff --git a/helmfile/files/portal-tiles/admin_context.svg b/helmfile/files/theme/portal-tiles/admin_context.svg similarity index 100% rename from helmfile/files/portal-tiles/admin_context.svg rename to helmfile/files/theme/portal-tiles/admin_context.svg diff --git a/helmfile/files/portal-tiles/admin_functionalmailbox.svg b/helmfile/files/theme/portal-tiles/admin_functionalmailbox.svg similarity index 100% rename from helmfile/files/portal-tiles/admin_functionalmailbox.svg rename to helmfile/files/theme/portal-tiles/admin_functionalmailbox.svg diff --git a/helmfile/files/portal-tiles/admin_group.svg b/helmfile/files/theme/portal-tiles/admin_group.svg similarity index 100% rename from helmfile/files/portal-tiles/admin_group.svg rename to helmfile/files/theme/portal-tiles/admin_group.svg diff --git a/helmfile/files/portal-tiles/admin_resource.svg b/helmfile/files/theme/portal-tiles/admin_resource.svg similarity index 100% rename from helmfile/files/portal-tiles/admin_resource.svg rename to helmfile/files/theme/portal-tiles/admin_resource.svg diff --git a/helmfile/files/portal-tiles/admin_user.svg b/helmfile/files/theme/portal-tiles/admin_user.svg similarity index 100% rename from helmfile/files/portal-tiles/admin_user.svg rename to helmfile/files/theme/portal-tiles/admin_user.svg diff --git a/helmfile/files/portal-tiles/anonymous_login.svg b/helmfile/files/theme/portal-tiles/anonymous_login.svg similarity index 100% rename from helmfile/files/portal-tiles/anonymous_login.svg rename to helmfile/files/theme/portal-tiles/anonymous_login.svg diff --git a/helmfile/files/portal-tiles/dummy_circle.svg b/helmfile/files/theme/portal-tiles/dummy_circle.svg similarity index 100% rename from helmfile/files/portal-tiles/dummy_circle.svg rename to helmfile/files/theme/portal-tiles/dummy_circle.svg diff --git a/helmfile/files/portal-tiles/fileshare_activity.svg b/helmfile/files/theme/portal-tiles/fileshare_activity.svg similarity index 100% rename from helmfile/files/portal-tiles/fileshare_activity.svg rename to helmfile/files/theme/portal-tiles/fileshare_activity.svg diff --git a/helmfile/files/portal-tiles/fileshare_directdoc_odp.svg b/helmfile/files/theme/portal-tiles/fileshare_directdoc_odp.svg similarity index 100% rename from helmfile/files/portal-tiles/fileshare_directdoc_odp.svg rename to helmfile/files/theme/portal-tiles/fileshare_directdoc_odp.svg diff --git a/helmfile/files/portal-tiles/fileshare_directdoc_ods.svg b/helmfile/files/theme/portal-tiles/fileshare_directdoc_ods.svg similarity index 100% rename from helmfile/files/portal-tiles/fileshare_directdoc_ods.svg rename to helmfile/files/theme/portal-tiles/fileshare_directdoc_ods.svg diff --git a/helmfile/files/portal-tiles/fileshare_directdoc_odt.svg b/helmfile/files/theme/portal-tiles/fileshare_directdoc_odt.svg similarity index 100% rename from helmfile/files/portal-tiles/fileshare_directdoc_odt.svg rename to helmfile/files/theme/portal-tiles/fileshare_directdoc_odt.svg diff --git a/helmfile/files/portal-tiles/fileshare_files.svg b/helmfile/files/theme/portal-tiles/fileshare_files.svg similarity index 100% rename from helmfile/files/portal-tiles/fileshare_files.svg rename to helmfile/files/theme/portal-tiles/fileshare_files.svg diff --git a/helmfile/files/portal-tiles/groupware_calendar.svg b/helmfile/files/theme/portal-tiles/groupware_calendar.svg similarity index 100% rename from helmfile/files/portal-tiles/groupware_calendar.svg rename to helmfile/files/theme/portal-tiles/groupware_calendar.svg diff --git a/helmfile/files/portal-tiles/groupware_contacts.svg b/helmfile/files/theme/portal-tiles/groupware_contacts.svg similarity index 100% rename from helmfile/files/portal-tiles/groupware_contacts.svg rename to helmfile/files/theme/portal-tiles/groupware_contacts.svg diff --git a/helmfile/files/portal-tiles/groupware_mail.svg b/helmfile/files/theme/portal-tiles/groupware_mail.svg similarity index 100% rename from helmfile/files/portal-tiles/groupware_mail.svg rename to helmfile/files/theme/portal-tiles/groupware_mail.svg diff --git a/helmfile/files/portal-tiles/groupware_tasks.svg b/helmfile/files/theme/portal-tiles/groupware_tasks.svg similarity index 100% rename from helmfile/files/portal-tiles/groupware_tasks.svg rename to helmfile/files/theme/portal-tiles/groupware_tasks.svg diff --git a/helmfile/files/portal-tiles/management_knowledge.svg b/helmfile/files/theme/portal-tiles/management_knowledge.svg similarity index 100% rename from helmfile/files/portal-tiles/management_knowledge.svg rename to helmfile/files/theme/portal-tiles/management_knowledge.svg diff --git a/helmfile/files/portal-tiles/management_project.svg b/helmfile/files/theme/portal-tiles/management_project.svg similarity index 100% rename from helmfile/files/portal-tiles/management_project.svg rename to helmfile/files/theme/portal-tiles/management_project.svg diff --git a/helmfile/files/portal-tiles/misc_notes.svg b/helmfile/files/theme/portal-tiles/misc_notes.svg similarity index 100% rename from helmfile/files/portal-tiles/misc_notes.svg rename to helmfile/files/theme/portal-tiles/misc_notes.svg diff --git a/helmfile/files/portal-tiles/realtime_collaboration.svg b/helmfile/files/theme/portal-tiles/realtime_collaboration.svg similarity index 100% rename from helmfile/files/portal-tiles/realtime_collaboration.svg rename to helmfile/files/theme/portal-tiles/realtime_collaboration.svg diff --git a/helmfile/files/portal-tiles/realtime_videoconference.svg b/helmfile/files/theme/portal-tiles/realtime_videoconference.svg similarity index 100% rename from helmfile/files/portal-tiles/realtime_videoconference.svg rename to helmfile/files/theme/portal-tiles/realtime_videoconference.svg diff --git a/helmfile/files/portal-tiles/selfservice_changepassword.svg b/helmfile/files/theme/portal-tiles/selfservice_changepassword.svg similarity index 100% rename from helmfile/files/portal-tiles/selfservice_changepassword.svg rename to helmfile/files/theme/portal-tiles/selfservice_changepassword.svg diff --git a/helmfile/files/portal-tiles/selfservice_editprofile.svg b/helmfile/files/theme/portal-tiles/selfservice_editprofile.svg similarity index 100% rename from helmfile/files/portal-tiles/selfservice_editprofile.svg rename to helmfile/files/theme/portal-tiles/selfservice_editprofile.svg diff --git a/helmfile/files/portal-tiles/selfservice_protectaccount.svg b/helmfile/files/theme/portal-tiles/selfservice_protectaccount.svg similarity index 100% rename from helmfile/files/portal-tiles/selfservice_protectaccount.svg rename to helmfile/files/theme/portal-tiles/selfservice_protectaccount.svg diff --git a/helmfile/files/theme/portal/favicon.ico b/helmfile/files/theme/portal/favicon.ico new file mode 100644 index 00000000..041f0d61 Binary files /dev/null and b/helmfile/files/theme/portal/favicon.ico differ diff --git a/helmfile/files/theme/portalLogoBackground.svg b/helmfile/files/theme/portal/logoBackground.svg similarity index 100% rename from helmfile/files/theme/portalLogoBackground.svg rename to helmfile/files/theme/portal/logoBackground.svg diff --git a/helmfile/files/theme/portalStylesheet.css b/helmfile/files/theme/portal/stylesheet.css similarity index 100% rename from helmfile/files/theme/portalStylesheet.css rename to helmfile/files/theme/portal/stylesheet.css diff --git a/helmfile/files/theme/favicon.svg b/helmfile/files/theme/portal/waitingSpinner.svg similarity index 100% rename from helmfile/files/theme/favicon.svg rename to helmfile/files/theme/portal/waitingSpinner.svg diff --git a/helmfile/files/theme/portalWaitingSpinner.svg b/helmfile/files/theme/portalWaitingSpinner.svg deleted file mode 100644 index eb76781c..00000000 --- a/helmfile/files/theme/portalWaitingSpinner.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/helmfile/files/theme/projects/favicon.svg b/helmfile/files/theme/projects/favicon.svg new file mode 100644 index 00000000..2c72b7f4 --- /dev/null +++ b/helmfile/files/theme/projects/favicon.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/helmfile/files/theme/videoconference/favicon.svg b/helmfile/files/theme/videoconference/favicon.svg new file mode 100644 index 00000000..9078559d --- /dev/null +++ b/helmfile/files/theme/videoconference/favicon.svg @@ -0,0 +1,5 @@ + + + + +