-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
23 changed files
with
2,876 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# Patterns to ignore when building packages. | ||
# This supports shell glob matching, relative path matching, and | ||
# negation (prefixed with !). Only one pattern per line. | ||
.DS_Store | ||
# Common VCS dirs | ||
.git/ | ||
.gitignore | ||
.bzr/ | ||
.bzrignore | ||
.hg/ | ||
.hgignore | ||
.svn/ | ||
# Common backup files | ||
*.swp | ||
*.bak | ||
*.tmp | ||
*~ | ||
# Various IDEs | ||
.project | ||
.idea/ | ||
*.tmproj |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# Copyright VMware, Inc. | ||
# SPDX-License-Identifier: APACHE-2.0 | ||
|
||
annotations: | ||
category: CMS | ||
licenses: Apache-2.0 | ||
images: | | ||
- name: apache-exporter | ||
image: docker.io/bitnami/apache-exporter:1.0.3-debian-11-r2 | ||
- name: drupal | ||
image: docker.io/bitnami/drupal:10.2.0-debian-11-r0 | ||
- name: os-shell | ||
image: docker.io/bitnami/os-shell:11-debian-11-r92 | ||
apiVersion: v2 | ||
appVersion: 10.2.0 | ||
dependencies: | ||
- condition: mariadb.enabled | ||
name: mariadb | ||
repository: oci://registry-1.docker.io/bitnamicharts | ||
version: 15.x.x | ||
- name: common | ||
repository: oci://registry-1.docker.io/bitnamicharts | ||
tags: | ||
- bitnami-common | ||
version: 2.x.x | ||
description: Drupal is one of the most versatile open source content management systems in the world. It is pre-configured with the Ctools and Views modules, Drush and Let's Encrypt auto-configuration support. | ||
home: https://bitnami.com | ||
icon: https://bitnami.com/assets/stacks/drupal/img/drupal-stack-220x234.png | ||
keywords: | ||
- drupal | ||
- cms | ||
- blog | ||
- http | ||
- web | ||
- application | ||
- php | ||
maintainers: | ||
- name: VMware, Inc. | ||
url: https://github.com/bitnami/charts | ||
name: drupal | ||
sources: | ||
- https://github.com/bitnami/charts/tree/main/bitnami/drupal | ||
version: 17.0.0 |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
CHART NAME: {{ .Chart.Name }} | ||
CHART VERSION: {{ .Chart.Version }} | ||
APP VERSION: {{ .Chart.AppVersion }} | ||
|
||
{{- if or .Values.mariadb.enabled .Values.externalDatabase.host -}} | ||
|
||
** Please be patient while the chart is being deployed ** | ||
|
||
1. Get the Drupal URL: | ||
|
||
{{- if .Values.ingress.enabled }} | ||
|
||
You should be able to access your new Drupal installation through | ||
|
||
http://{{- .Values.ingress.hostname }}/ | ||
|
||
{{- else if eq .Values.service.type "LoadBalancer" }} | ||
|
||
NOTE: It may take a few minutes for the LoadBalancer IP to be available. | ||
Watch the status with: 'kubectl get svc --namespace {{ include "common.names.namespace" . }} -w {{ include "common.names.fullname" . }}' | ||
|
||
export SERVICE_IP=$(kubectl get svc --namespace {{ include "common.names.namespace" . }} {{ include "common.names.fullname" . }} --template "{{ "{{ range (index .status.loadBalancer.ingress 0) }}{{ . }}{{ end }}" }}") | ||
|
||
{{- $port:=(coalesce .Values.service.ports.http .Values.service.port) | toString }} | ||
echo "Drupal URL: http://$SERVICE_IP{{- if ne $port "80" }}:{{ coalesce .Values.service.ports.http .Values.service.port }}{{ end }}/" | ||
|
||
{{- else if eq .Values.service.type "ClusterIP" }} | ||
|
||
echo "Drupal URL: http://127.0.0.1:8080/" | ||
kubectl port-forward --namespace {{ include "common.names.namespace" . }} svc/{{ include "common.names.fullname" . }} 8080:{{ coalesce .Values.service.ports.http .Values.service.port }} | ||
|
||
{{- end }} | ||
|
||
{{- if eq .Values.service.type "NodePort" }} | ||
|
||
Or running: | ||
|
||
export NODE_PORT=$(kubectl get --namespace {{ include "common.names.namespace" . }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "common.names.fullname" . }}) | ||
export NODE_IP=$(kubectl get nodes --namespace {{ include "common.names.namespace" . }} -o jsonpath="{.items[0].status.addresses[0].address}") | ||
echo "Drupal URL: http://$NODE_IP:$NODE_PORT/" | ||
|
||
{{- end }} | ||
|
||
2. Get your Drupal login credentials by running: | ||
|
||
echo Username: {{ .Values.drupalUsername }} | ||
echo Password: $(kubectl get secret --namespace {{ include "common.names.namespace" . }} {{ template "drupal.secretName" . }} -o jsonpath="{.data.drupal-password}" | base64 -d) | ||
|
||
{{- else -}} | ||
|
||
######################################################################################## | ||
### ERROR: You did not provide an external database host in your 'helm install' call ### | ||
######################################################################################## | ||
|
||
This deployment will be incomplete until you configure Drupal with a resolvable database | ||
host. To configure Drupal to use and external database host: | ||
|
||
1. Complete your Drupal deployment by running: | ||
|
||
export APP_PASSWORD=$(kubectl get secret --namespace {{ include "common.names.namespace" . }} {{ template "drupal.secretName" . }} -o jsonpath="{.data.drupal-password}" | base64 -d) | ||
|
||
## PLEASE UPDATE THE EXTERNAL DATABASE CONNECTION PARAMETERS IN THE FOLLOWING COMMAND AS NEEDED ## | ||
|
||
helm upgrade --namespace {{ include "common.names.namespace" . }} {{ .Release.Name }} oci://registry-1.docker.io/bitnamicharts/{{ .Chart.Name }} \ | ||
--set drupalPassword=$APP_PASSWORD,service.type={{ .Values.service.type }},mariadb.enabled=false{{- if not (empty .Values.externalDatabase.user) }},externalDatabase.user={{ .Values.externalDatabase.user }}{{- end }}{{- if not (empty .Values.externalDatabase.password) }},externalDatabase.password={{ .Values.externalDatabase.password }}{{- end }}{{- if not (empty .Values.externalDatabase.database) }},externalDatabase.database={{ .Values.externalDatabase.database }}{{- end }},externalDatabase.host=YOUR_EXTERNAL_DATABASE_HOST{{- if .Values.global }}{{- if .Values.global.imagePullSecrets }},global.imagePullSecrets={{ .Values.global.imagePullSecrets }}{{- end }}{{- end }} | ||
|
||
{{- end }} | ||
|
||
{{- include "common.warnings.rollingTag" .Values.image }} | ||
{{- include "common.warnings.rollingTag" .Values.metrics.image }} | ||
{{- include "common.warnings.rollingTag" .Values.volumePermissions.image }} | ||
{{- include "common.warnings.rollingTag" .Values.certificates.image }} | ||
|
||
{{- $passwordValidationErrors := list -}} | ||
{{- if not .Values.existingSecret -}} | ||
{{- $secretName := include "drupal.secretName" . -}} | ||
{{- $requiredDrupalPassword := dict "valueKey" "drupalPassword" "secret" $secretName "field" "drupal-password" "context" $ -}} | ||
{{- $requiredDrupalPasswordError := include "common.validations.values.single.empty" $requiredDrupalPassword -}} | ||
{{- $passwordValidationErrors = append $passwordValidationErrors $requiredDrupalPasswordError -}} | ||
{{- end -}} | ||
|
||
{{- $mariadbSecretName := include "drupal.databaseSecretName" . -}} | ||
{{- $mariadbPasswordValidationErrors := include "common.validations.values.mariadb.passwords" (dict "secret" $mariadbSecretName "subchart" true "context" $) -}} | ||
{{- $passwordValidationErrors = append $passwordValidationErrors $mariadbPasswordValidationErrors -}} | ||
|
||
{{- include "common.errors.upgrade.passwords.empty" (dict "validationErrors" $passwordValidationErrors "context" $) -}} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,144 @@ | ||
{{/* | ||
Copyright VMware, Inc. | ||
SPDX-License-Identifier: APACHE-2.0 | ||
*/}} | ||
|
||
{{/* | ||
Create a default fully qualified app name. | ||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). | ||
*/}} | ||
{{- define "drupal.mariadb.fullname" -}} | ||
{{- printf "%s-%s" .Release.Name "mariadb" | trunc 63 | trimSuffix "-" -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the proper certificate image name | ||
*/}} | ||
{{- define "certificates.image" -}} | ||
{{- include "common.images.image" ( dict "imageRoot" .Values.certificates.image "global" .Values.global ) -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the proper Drupal image name | ||
*/}} | ||
{{- define "drupal.image" -}} | ||
{{- include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the proper image name (for the metrics image) | ||
*/}} | ||
{{- define "drupal.metrics.image" -}} | ||
{{- include "common.images.image" (dict "imageRoot" .Values.metrics.image "global" .Values.global) -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the proper image name (for the init container volume-permissions image) | ||
*/}} | ||
{{- define "drupal.volumePermissions.image" -}} | ||
{{- include "common.images.image" ( dict "imageRoot" .Values.volumePermissions.image "global" .Values.global ) -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the proper Docker Image Registry Secret Names | ||
*/}} | ||
{{- define "drupal.imagePullSecrets" -}} | ||
{{- include "common.images.pullSecrets" (dict "images" (list .Values.image .Values.metrics.image .Values.volumePermissions.image .Values.certificates.image) "global" .Values.global) -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the proper Storage Class | ||
*/}} | ||
{{- define "drupal.storageClass" -}} | ||
{{- include "common.storage.class" (dict "persistence" .Values.persistence "global" .Values.global) -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Drupal credential secret name | ||
*/}} | ||
{{- define "drupal.secretName" -}} | ||
{{- coalesce .Values.existingSecret (include "common.names.fullname" .) -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the MariaDB Hostname | ||
*/}} | ||
{{- define "drupal.databaseHost" -}} | ||
{{- if .Values.mariadb.enabled }} | ||
{{- if eq .Values.mariadb.architecture "replication" }} | ||
{{- printf "%s-%s" (include "drupal.mariadb.fullname" .) "primary" | trunc 63 | trimSuffix "-" -}} | ||
{{- else -}} | ||
{{- printf "%s" (include "drupal.mariadb.fullname" .) -}} | ||
{{- end -}} | ||
{{- else -}} | ||
{{- printf "%s" .Values.externalDatabase.host -}} | ||
{{- end -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the MariaDB Port | ||
*/}} | ||
{{- define "drupal.databasePort" -}} | ||
{{- if .Values.mariadb.enabled }} | ||
{{- printf "3306" -}} | ||
{{- else -}} | ||
{{- printf "%d" (.Values.externalDatabase.port | int ) -}} | ||
{{- end -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the MariaDB Database Name | ||
*/}} | ||
{{- define "drupal.databaseName" -}} | ||
{{- if .Values.mariadb.enabled }} | ||
{{- printf "%s" .Values.mariadb.auth.database -}} | ||
{{- else -}} | ||
{{- printf "%s" .Values.externalDatabase.database -}} | ||
{{- end -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the MariaDB User | ||
*/}} | ||
{{- define "drupal.databaseUser" -}} | ||
{{- if .Values.mariadb.enabled }} | ||
{{- printf "%s" .Values.mariadb.auth.username -}} | ||
{{- else -}} | ||
{{- printf "%s" .Values.externalDatabase.user -}} | ||
{{- end -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the MariaDB Secret Name | ||
*/}} | ||
{{- define "drupal.databaseSecretName" -}} | ||
{{- if .Values.mariadb.enabled }} | ||
{{- printf "%s" (include "drupal.mariadb.fullname" .) -}} | ||
{{- else if .Values.externalDatabase.existingSecret -}} | ||
{{- printf "%s" .Values.externalDatabase.existingSecret -}} | ||
{{- else -}} | ||
{{- printf "%s-%s" (include "common.names.fullname" .) "externaldb" -}} | ||
{{- end -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Return the database password key | ||
*/}} | ||
{{- define "drupal.databasePasswordKey" -}} | ||
{{- if .Values.mariadb.enabled -}} | ||
mariadb-password | ||
{{- else -}} | ||
db-password | ||
{{- end -}} | ||
{{- end -}} | ||
|
||
{{/* | ||
Create the name of the service account to use | ||
*/}} | ||
{{- define "drupal.serviceAccountName" -}} | ||
{{- if .Values.serviceAccount.create -}} | ||
{{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} | ||
{{- else -}} | ||
{{ default "default" .Values.serviceAccount.name }} | ||
{{- end -}} | ||
{{- end -}} |
Oops, something went wrong.