mirror of
https://github.com/helm/charts.git
synced 2026-08-23 22:37:45 +00:00
Add support for additional secret, initContainers, postStart command and deployment annotations (#8338)
* Add support for additional secret, initContainers, postStart command and deployment annotations Signed-off-by: faizanahmad055 <faizan.ahmad55@outlook.com> * Add support for additional secret Signed-off-by: faizanahmad055 <faizan.ahmad55@outlook.com> * Add support for additional container, additional volume and separate container port and exposed port Signed-off-by: faizanahmad055 <faizan.ahmad55@outlook.com> * Rename exposedPort to port and Add additional service Signed-off-by: faizanahmad055 <faizan.ahmad55@outlook.com> * Diasble additional service by default Signed-off-by: faizanahmad055 <faizan.ahmad55@outlook.com> * Add support to disable nexus-proxy Signed-off-by: faizanahmad055 <faizan.ahmad55@outlook.com> * Update readme for nexusProxy.enabled Signed-off-by: faizanahmad055 <faizan.ahmad55@outlook.com>
This commit is contained in:
committed by
k8s-ci-robot
parent
d21713d84e
commit
e67166deca
@@ -1,5 +1,5 @@
|
||||
name: sonatype-nexus
|
||||
version: 1.11.0
|
||||
version: 1.12.0
|
||||
appVersion: 3.13.0-01
|
||||
description: Sonatype Nexus is an open source repository manager
|
||||
keywords:
|
||||
|
||||
@@ -77,12 +77,16 @@ The following table lists the configurable parameters of the Nexus chart and the
|
||||
| `nexus.livenessProbe.initialDelaySeconds` | LivenessProbe initial delay | 30 |
|
||||
| `nexus.livenessProbe.periodSeconds` | Seconds between polls | 30 |
|
||||
| `nexus.livenessProbe.failureThreshold` | Number of attempts before failure | 6 |
|
||||
| `nexus.livenessProbe.timeoutSeconds` | Time in seconds after liveness probe times out | `nil` |
|
||||
| `nexus.livenessProbe.path` | Path for LivenessProbe | / |
|
||||
| `nexus.readinessProbe.initialDelaySeconds` | ReadinessProbe initial delay | 30 |
|
||||
| `nexus.readinessProbe.periodSeconds` | Seconds between polls | 30 |
|
||||
| `nexus.readinessProbe.failureThreshold` | Number of attempts before failure | 6 |
|
||||
| `nexus.readinessProbe.timeoutSeconds` | Time in seconds after readiness probe times out | `nil` |
|
||||
| `nexus.readinessProbe.path` | Path for ReadinessProbe | / |
|
||||
| `nexus.hostAliases` | Aliases for IPs in /etc/hosts | [] |
|
||||
| `nexusProxy.enabled` | Enable nexus proxy | `true` |
|
||||
| `nexusProxy.targetPort` | Container Port for Nexus proxy | `8080` |
|
||||
| `nexusProxy.port` | Port for exposing Nexus | `8080` |
|
||||
| `nexusProxy.imageName` | Proxy image | `quay.io/travelaudience/docker-nexus-proxy` |
|
||||
| `nexusProxy.imageTag` | Proxy image version | `2.1.0` |
|
||||
@@ -119,6 +123,21 @@ The following table lists the configurable parameters of the Nexus chart and the
|
||||
| `config.enabled` | Enable configmap | `false` |
|
||||
| `config.mountPath` | Path to mount the config | `/sonatype-nexus-conf` |
|
||||
| `config.data` | Configmap data | `nil` |
|
||||
| `deployment.annotations` | Annotations to enhance deployment configuration | `{}` |
|
||||
| `deployment.initContainers` | Init containers to run before main containers | `nil` |
|
||||
| `deployment.postStart.command` | Command to run after starting the nexus container | `nil` |
|
||||
| `deployment.additionalContainers` | Add additional Container | `nil` |
|
||||
| `deployment.additionalVolumes` | Add additional Container | `nil` |
|
||||
| `secret.enabled` | Enable secret | `false` |
|
||||
| `secret.mountPath` | Path to mount the secret | `/etc/secret-volume` |
|
||||
| `secret.readOnly` | Secret readonly state | `true` |
|
||||
| `secret.data` | Secret data | `nil` |
|
||||
| `service.enabled` | Enable additional service | `nil` |
|
||||
| `service.name` | Service name | `nil` |
|
||||
| `service.labels` | Service labels | `nil` |
|
||||
| `service.annotations` | Service annotations | `nil` |
|
||||
| `service.targetPort` | Service port | `nil` |
|
||||
| `service.port` | Port for exposing service | `nil` |
|
||||
|
||||
If `nexusProxy.env.cloudIamAuthEnabled` is set to `true` the following variables need to be configured
|
||||
|
||||
|
||||
@@ -4,6 +4,13 @@ metadata:
|
||||
name: {{ template "nexus.fullname" . }}
|
||||
labels:
|
||||
{{ include "nexus.labels" . | indent 4 }}
|
||||
{{- if .Values.nexus.labels }}
|
||||
{{ toYaml .Values.nexus.labels | indent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.deployment.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.deployment.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
{{- if .Values.deploymentStrategy }}
|
||||
@@ -20,6 +27,10 @@ spec:
|
||||
app: {{ template "nexus.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
spec:
|
||||
{{- if .Values.deployment.initContainers }}
|
||||
initContainers:
|
||||
{{ toYaml .Values.deployment.initContainers | indent 6 }}
|
||||
{{- end }}
|
||||
{{- if .Values.nexus.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml .Values.nexus.nodeSelector | indent 8 }}
|
||||
@@ -32,6 +43,12 @@ spec:
|
||||
- name: nexus
|
||||
image: {{ .Values.nexus.imageName }}:{{ .Values.nexus.imageTag }}
|
||||
imagePullPolicy: {{ .Values.nexus.imagePullPolicy }}
|
||||
{{- if .Values.deployment.postStart.command }}
|
||||
lifecycle:
|
||||
postStart:
|
||||
exec:
|
||||
command: {{ .Values.deployment.postStart.command }}
|
||||
{{- end }}
|
||||
env:
|
||||
{{ toYaml .Values.nexus.env | indent 12 }}
|
||||
resources:
|
||||
@@ -48,6 +65,9 @@ spec:
|
||||
initialDelaySeconds: {{ .Values.nexus.livenessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.nexus.livenessProbe.periodSeconds }}
|
||||
failureThreshold: {{ .Values.nexus.livenessProbe.failureThreshold }}
|
||||
{{- if .Values.nexus.livenessProbe.timeoutSeconds }}
|
||||
timeoutSeconds: {{ .Values.nexus.livenessProbe.timeoutSeconds }}
|
||||
{{- end }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: {{ .Values.nexus.readinessProbe.path }}
|
||||
@@ -55,6 +75,9 @@ spec:
|
||||
initialDelaySeconds: {{ .Values.nexus.readinessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.nexus.readinessProbe.periodSeconds }}
|
||||
failureThreshold: {{ .Values.nexus.readinessProbe.failureThreshold }}
|
||||
{{- if .Values.nexus.readinessProbe.timeoutSeconds }}
|
||||
timeoutSeconds: {{ .Values.nexus.readinessProbe.timeoutSeconds }}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- mountPath: /nexus-data
|
||||
name: nexus-data
|
||||
@@ -64,6 +87,12 @@ spec:
|
||||
- mountPath: {{ .Values.config.mountPath }}
|
||||
name: {{ template "nexus.name" . }}-conf
|
||||
{{- end }}
|
||||
{{- if .Values.secret.enabled }}
|
||||
- mountPath: {{ .Values.secret.mountPath }}
|
||||
name: {{ template "nexus.name" . }}-secret
|
||||
readOnly: {{ .Values.secret.readOnly }}
|
||||
{{- end }}
|
||||
{{- if .Values.nexusProxy.enabled }}
|
||||
- name: nexus-proxy
|
||||
image: {{ .Values.nexusProxy.imageName }}:{{ .Values.nexusProxy.imageTag }}
|
||||
resources:
|
||||
@@ -75,7 +104,7 @@ spec:
|
||||
- name: CLOUD_IAM_AUTH_ENABLED
|
||||
value: {{ .Values.nexusProxy.env.cloudIamAuthEnabled | quote }}
|
||||
- name: BIND_PORT
|
||||
value: {{ .Values.nexusProxy.port | quote }}
|
||||
value: {{ .Values.nexusProxy.targetPort | quote }}
|
||||
- name: ENFORCE_HTTPS
|
||||
value: {{ .Values.nexusProxy.env.enforceHttps | quote }}
|
||||
- name: NEXUS_DOCKER_HOST
|
||||
@@ -112,7 +141,7 @@ spec:
|
||||
value: "86400000"
|
||||
{{- end }}
|
||||
ports:
|
||||
- containerPort: {{ .Values.nexusProxy.port }}
|
||||
- containerPort: {{ .Values.nexusProxy.targetPort }}
|
||||
name: nexus-proxy
|
||||
{{- if .Values.nexusProxy.env.cloudIamAuthEnabled }}
|
||||
volumeMounts:
|
||||
@@ -120,6 +149,7 @@ spec:
|
||||
name: {{ template "nexus.proxy-ks.name" . }}
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .Values.nexusBackup.enabled }}
|
||||
- name: nexus-backup
|
||||
image: {{ .Values.nexusBackup.imageName }}:{{ .Values.nexusBackup.imageTag }}
|
||||
@@ -150,6 +180,9 @@ spec:
|
||||
- mountPath: /nexus-data/backup
|
||||
name: nexus-backup
|
||||
{{- end }}
|
||||
{{- if .Values.deployment.additionalContainers }}
|
||||
{{ toYaml .Values.deployment.additionalContainers | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.nexus.securityContext }}
|
||||
securityContext:
|
||||
{{ toYaml .Values.nexus.securityContext | indent 8 }}
|
||||
@@ -179,6 +212,14 @@ spec:
|
||||
configMap:
|
||||
name: {{ template "nexus.name" . }}-conf
|
||||
{{- end }}
|
||||
{{- if .Values.secret.enabled }}
|
||||
- name: {{ template "nexus.name" . }}-secret
|
||||
secret:
|
||||
secretName: {{ template "nexus.name" . }}-secret
|
||||
{{- end }}
|
||||
{{- if .Values.deployment.additionalVolumes }}
|
||||
{{ toYaml .Values.deployment.additionalVolumes | indent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml . | indent 8 }}
|
||||
|
||||
@@ -7,6 +7,9 @@ metadata:
|
||||
{{- if .Values.nexus.labels }}
|
||||
{{ toYaml .Values.nexus.labels | indent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.nexusProxy.labels }}
|
||||
{{ toYaml .Values.nexusProxy.labels | indent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.nexus.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.nexus.annotations | indent 4 }}
|
||||
@@ -16,7 +19,7 @@ spec:
|
||||
- name: {{ .Values.nexusProxy.name }}
|
||||
port: {{ .Values.nexusProxy.port }}
|
||||
protocol: TCP
|
||||
targetPort: {{ .Values.nexusProxy.port }}
|
||||
targetPort: {{ .Values.nexusProxy.targetPort }}
|
||||
selector:
|
||||
app: {{ template "nexus.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
{{- if .Values.secret.enabled -}}
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ template "nexus.name" . }}-secret
|
||||
labels:
|
||||
{{ include "nexus.labels" . | indent 4 }}
|
||||
{{- if .Values.nexus.labels }}
|
||||
{{ toYaml .Values.nexus.labels | indent 4 }}
|
||||
{{- end }}
|
||||
data:
|
||||
{{ toYaml .Values.secret.data | indent 2 }}
|
||||
{{- end}}
|
||||
@@ -0,0 +1,25 @@
|
||||
{{- if .Values.service.enabled -}}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ template "nexus.name" . }}-service
|
||||
labels:
|
||||
{{ include "nexus.labels" . | indent 4 }}
|
||||
{{- if .Values.service.labels }}
|
||||
{{ toYaml .Values.service.labels | indent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.service.annotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.service.annotations | indent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
ports:
|
||||
- name: {{ .Values.service.name }}
|
||||
port: {{ .Values.service.port }}
|
||||
protocol: TCP
|
||||
targetPort: {{ .Values.service.targetPort }}
|
||||
selector:
|
||||
app: {{ template "nexus.name" . }}
|
||||
release: {{ .Release.Name }}
|
||||
type: {{ .Values.service.serviceType }}
|
||||
{{- end}}
|
||||
@@ -39,11 +39,13 @@ nexus:
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 30
|
||||
failureThreshold: 6
|
||||
# timeoutSeconds: 10
|
||||
path: /
|
||||
readinessProbe:
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 30
|
||||
failureThreshold: 6
|
||||
# timeoutSeconds: 10
|
||||
path: /
|
||||
# hostAliases allows the modification of the hosts file inside a container
|
||||
hostAliases: []
|
||||
@@ -53,10 +55,13 @@ nexus:
|
||||
# - "www.example.com"
|
||||
|
||||
nexusProxy:
|
||||
enabled: true
|
||||
imageName: quay.io/travelaudience/docker-nexus-proxy
|
||||
imageTag: 2.3.0
|
||||
imagePullPolicy: IfNotPresent
|
||||
port: 8080
|
||||
targetPort: 8080
|
||||
# labels: {}
|
||||
env:
|
||||
nexusDockerHost:
|
||||
nexusHttpHost:
|
||||
@@ -136,3 +141,38 @@ config:
|
||||
enabled: false
|
||||
mountPath: /sonatype-nexus-conf
|
||||
data:
|
||||
|
||||
deployment:
|
||||
# # Add annotations in deployment to enhance deployment configurations
|
||||
annotations: {}
|
||||
# # Add init containers. e.g. to be used to give specific permissions for nexus-data.
|
||||
# # Add your own init container or uncomment and modify the given example.
|
||||
initContainers:
|
||||
# - name: fmp-volume-permission
|
||||
# image: busybox
|
||||
# imagePullPolicy: IfNotPresent
|
||||
# command: ['chown','-R', '200', '/nexus-data']
|
||||
# volumeMounts:
|
||||
# - name: nexus-data
|
||||
# mountPath: /nexus-data
|
||||
# # Uncomment and modify this to run a command after starting the nexus container.
|
||||
postStart:
|
||||
command: # '["/bin/sh", "-c", "ls"]'
|
||||
additionalContainers:
|
||||
additionalVolumes:
|
||||
|
||||
# # To use an additional secret, set enable to true and add data
|
||||
secret:
|
||||
enabled: false
|
||||
mountPath: /etc/secret-volume
|
||||
readOnly: true
|
||||
data:
|
||||
|
||||
# # To use an additional service, set enable to true
|
||||
service:
|
||||
enabled: false
|
||||
name: nexus-service
|
||||
labels: {}
|
||||
annotations: {}
|
||||
targetPort: 80
|
||||
port: 80
|
||||
|
||||
Reference in New Issue
Block a user