Compare commits
38 Commits
262734c255
...
d7607faff5
Author | SHA1 | Date | |
---|---|---|---|
|
d7607faff5 | ||
|
43210d537a | ||
|
1a7b201aba | ||
|
5dcda7ff78 | ||
|
534e81a280 | ||
|
1fb2d57658 | ||
|
411ac2e9d0 | ||
|
0847494f87 | ||
|
107a8a4c33 | ||
|
8246efc943 | ||
|
b82d7eedd8 | ||
|
06621e23af | ||
|
ec31989348 | ||
|
59fbefd065 | ||
|
0d9788bc7b | ||
|
b869858029 | ||
|
9ea5d6e77e | ||
|
b357c483be | ||
|
315bbcc430 | ||
|
2628860543 | ||
|
c525426181 | ||
|
c24b103d1b | ||
|
e4db4d4a35 | ||
|
8efccb88a5 | ||
|
0027ffa8e9 | ||
|
4f7fc5619f | ||
|
f1c83cf0c0 | ||
|
a5627a97af | ||
|
46233d3c13 | ||
|
d1b52e3cf3 | ||
|
e0de022ac2 | ||
|
15420c4247 | ||
|
b6cab7b32e | ||
|
925554d4e4 | ||
|
116ec641f9 | ||
|
60126c13ad | ||
|
a8d044a57b | ||
|
863c09a38d |
@ -2,4 +2,4 @@ apiVersion: v1
|
||||
appVersion: "1.0"
|
||||
description: A Helm chart for Kubernetes
|
||||
name: httpd
|
||||
version: 0.1.1
|
||||
version: 0.1.2
|
@ -34,19 +34,12 @@ questions:
|
||||
description: "If undefined or null, uses the default StorageClass. Default to null"
|
||||
type: storageclass
|
||||
label: Default StorageClass for MOLGENIS
|
||||
- variable: ingress.enabled
|
||||
default: "true"
|
||||
description: "Expose app using Layer 7 Load Balancer - ingress"
|
||||
type: boolean
|
||||
label: Expose app using Layer 7 Load Balancer
|
||||
show_subquestion_if: true
|
||||
group: "Services and Load Balancing"
|
||||
subquestions:
|
||||
- variable: ingress.hosts[0].name
|
||||
- variable: ingress.hosts[0].name
|
||||
default: "test.molgenis.org"
|
||||
description: "Hostname for your stack"
|
||||
type: hostname
|
||||
required: true
|
||||
group: "Services and Load Balancing"
|
||||
label: Hostname
|
||||
- variable: httpd.hostname
|
||||
default: "test.molgenis.org"
|
@ -7,7 +7,7 @@ replicaCount: 1
|
||||
image:
|
||||
repository: registry.webhosting.rug.nl/molgenis/httpd
|
||||
tag: lts
|
||||
pullPolicy: always
|
||||
pullPolicy: Always
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
@ -28,7 +28,7 @@ ingress:
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
path: /
|
||||
hosts:
|
||||
- molgenis.local
|
||||
- name: test.molgenis.org
|
||||
tls: []
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
Before Width: | Height: | Size: 133 KiB After Width: | Height: | Size: 133 KiB |
32
jenkins/v0.1.x/templates/_helpers.tpl
Normal file
32
jenkins/v0.1.x/templates/_helpers.tpl
Normal file
@ -0,0 +1,32 @@
|
||||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "jenkins.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
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).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "jenkins.fullname" -}}
|
||||
{{- if .Values.fullnameOverride -}}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- if contains $name .Release.Name -}}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "jenkins.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
@ -0,0 +1,38 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: {{ .Values.jenkins.agent.name }}
|
||||
labels:
|
||||
app: {{ .Values.jenkins.agent.name }}
|
||||
environment: {{ .Values.environment }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount}}
|
||||
strategy:
|
||||
type: {{ .Values.jenkins.strategy.type }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ .Values.jenkins.agent.selector }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ .Values.jenkins.agent.name }}
|
||||
creationTimestamp: null
|
||||
spec:
|
||||
restartPolicy: {{ .Values.agent.restartPolicy }}
|
||||
containers:
|
||||
- name: {{ .Values.jenkins.agent.name }}
|
||||
image: "{{ .Values.jenkins.agent.image.repository }}:{{ .Values.jenkins.agent.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.jenkins.agent.image.pullPolicy }}
|
||||
- name: JENKINS_SLAVE_SSH_PUBKEY
|
||||
value: {{ .Values.jenkins.agent.ssh.public.key }}
|
||||
ports:
|
||||
- containerPort: {{ .Values.jenkins.agent.port }}
|
||||
volumeMounts:
|
||||
- mountPath: /var/run/docker.sock
|
||||
name: jenkins-agent-worker-claim
|
||||
volumes:
|
||||
- name: jenkins-agent-worker-claim
|
||||
persistentVolumeClaim:
|
||||
claimName: jenkins-agent-worker-claim
|
||||
|
@ -0,0 +1,41 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: {{ .Values.jenkins.master.name }}
|
||||
labels:
|
||||
app: {{ .Values.jenkins.master.name }}
|
||||
environment: {{ .Values.environment }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount}}
|
||||
strategy:
|
||||
type: {{ .Values.jenkins.strategy.type }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ .Values.jenkins.master.selector }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ .Values.jenkins.master.name }}
|
||||
creationTimestamp: null
|
||||
spec:
|
||||
restartPolicy: {{ .Values.jenkins.restartPolicy }}
|
||||
containers:
|
||||
- name: {{ .Values.jenkins.master.name }}
|
||||
image: "{{ .Values.jenkins.master.image.repository }}:{{ .Values.jenkins.master.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.jenkins.master.image.pullPolicy }}
|
||||
- env:
|
||||
- name: JENKINS_ADMIN_PASS
|
||||
- name: JENKINS_ADMIN_USER
|
||||
ports:
|
||||
- containerPort: {{ .Values.jenkins.master.port }}
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- name: jenkins-master-claim
|
||||
mountPath: /var/jenkins-home
|
||||
- name: jenkins-master-claim
|
||||
mountPath: /var/run/docker.sock
|
||||
volumes:
|
||||
- name: jenkins-master-claim
|
||||
persistentVolumeClaim:
|
||||
claimName: jenkins-master-claim
|
36
jenkins/v0.1.x/templates/ingress.yaml
Normal file
36
jenkins/v0.1.x/templates/ingress.yaml
Normal file
@ -0,0 +1,36 @@
|
||||
{{- if .Values.ingress.enabled }}
|
||||
{{- range .Values.ingress.hosts }}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: "{{ $.Release.Name }}-ingress"
|
||||
labels:
|
||||
app: {{ template "jenkins.fullname" $ }}
|
||||
chart: "{{ $.Chart.Name }}-{{ $.Chart.Version }}"
|
||||
release: "{{ $.Release.Name }}"
|
||||
heritage: "{{ $.Release.Service }}"
|
||||
annotations:
|
||||
{{- if .tls }}
|
||||
ingress.kubernetes.io/secure-backends: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
spec:
|
||||
rules:
|
||||
- host: {{ .name }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ default "/" .path }}
|
||||
backend:
|
||||
serviceName: {{ template "jenkins.fullname" $ }}
|
||||
servicePort: 80
|
||||
{{- if .tls }}
|
||||
tls:
|
||||
- hosts:
|
||||
- {{ .name }}
|
||||
secretName: {{ .tlsSecret }}
|
||||
{{- end }}
|
||||
---
|
||||
{{- end }}
|
||||
{{- end }}
|
13
jenkins/v0.1.x/templates/services/jenkins-agent-service.yaml
Normal file
13
jenkins/v0.1.x/templates/services/jenkins-agent-service.yaml
Normal file
@ -0,0 +1,13 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ .Values.jenkins.agent.name }}
|
||||
labels:
|
||||
app: {{ .Values.jenkins.agent.name }}
|
||||
spec:
|
||||
type: NodePort
|
||||
ports:
|
||||
- name: {{ .Values.jenkins.agent.name }}
|
||||
port: {{ .Values.jenkins.agent.port }}
|
||||
selector:
|
||||
app: {{ .Values.jenkins.agent.selector }}
|
@ -0,0 +1,13 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ .Values.jenkins.master.name }}
|
||||
labels:
|
||||
app: {{ .Values.jenkins.master.name }}
|
||||
spec:
|
||||
type: NodePort
|
||||
ports:
|
||||
- name: {{ .Values.jenkins.master.name }}
|
||||
port: {{ .Values.jenkins.master.port }}
|
||||
selector:
|
||||
app: {{ .Values.jenkins.master.selector }}
|
68
jenkins/v0.1.x/values.yaml
Normal file
68
jenkins/v0.1.x/values.yaml
Normal file
@ -0,0 +1,68 @@
|
||||
# Default values for jenkins.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
environment: production
|
||||
|
||||
service:
|
||||
type: NodePort
|
||||
port: 8080
|
||||
|
||||
jenkins:
|
||||
strategy:
|
||||
type: Recreate
|
||||
restartPolicy: Always
|
||||
master:
|
||||
name: jenkins-master
|
||||
selector: jenkins-master
|
||||
image:
|
||||
repository: registry.webhosting.rug.nl/molgenis/jenkins-master
|
||||
tag: lts
|
||||
pullPolicy: Always
|
||||
port: 8080
|
||||
agent:
|
||||
name: jenkins-agent
|
||||
selector: jenkins-agent
|
||||
image:
|
||||
repository: registry.webhosting.rug.nl/molgenis/jenkins-agent
|
||||
tag: lts
|
||||
pullPolicy: Always
|
||||
port: 22
|
||||
ssh:
|
||||
public:
|
||||
key: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC6+L3I5Dh1oKCxRktAhKwX20vQq5+hp40D2HCN+JSOT1WmiZOKQQ2U73HyRlukXV1MJGn6NM0pZS1W12IiAiSeu6xl+YFlEJykRK+9NnpSGwTMXXirCmCyWAlMUb6pcXmCqa1Pk1HqiUUfvflkvFHNT+26LBNXj0LbrT6KFd0xhm/KH9gMTKnYoBQqezE7D5jjPki5lKAfBL7IQkwgs5wFdaQicRYAUsuI7gV6EsDgVmLmF6f2d8+/AJ0fwYIFpzaYqQfgrpilMCvHXcuskpHj2RtJFMiPZ4WZSMZ3sMTD0MmZxdNU32qc/TR7mILHEB9/10EzmE4F7X1NdWYeJqK5VKH8RfwLHtiFDPPoqttc2AuaMrSPiRJxtww0oLsEN3toE9qauXpVcJUgaxpj0hE7UQP026Et3LZDQCD8w+3VPVUCfGHy7LTZdPzxDYuWmSMGF/VjYYKbv3WgPEVomRdB1TlaSEb8JfnHI1CVo4C+dImwxppVRbiAkjK/D+TnTavgx+zl85Fo1oNO49kjg9Avp2sOoHBSCBk6ceywIdvvaIzQSxQZfj3PbSWRg+ywJMS8tM6m6riEQola8EmHA7pP/Aj70453ip08MUnz1vsM/e396nqdw55KhR5dPEPHrfqmONMgr6IUa+6zyeWBQ7LTpkWztQ4lQcPl48jRE0ijTQ== sido@client-145-100-225-240.surfnet.eduroam.rug.nl
|
||||
|
||||
|
||||
|
||||
ingress:
|
||||
enabled: true
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
path: /
|
||||
hosts:
|
||||
- registry.molgenis.org
|
||||
tls: []
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - chart-example.local
|
||||
|
||||
resources: {}
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
@ -1,39 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert
|
||||
kompose.version: 1.13.0 ()
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: jenkins-agent-worker
|
||||
name: jenkins-agent-worker
|
||||
spec:
|
||||
replicas: 1
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: jenkins-agent-worker
|
||||
spec:
|
||||
containers:
|
||||
- env:
|
||||
- name: JENKINS_SLAVE_SSH_PUBKEY
|
||||
value: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC6+L3I5Dh1oKCxRktAhKwX20vQq5+hp40D2HCN+JSOT1WmiZOKQQ2U73HyRlukXV1MJGn6NM0pZS1W12IiAiSeu6xl+YFlEJykRK+9NnpSGwTMXXirCmCyWAlMUb6pcXmCqa1Pk1HqiUUfvflkvFHNT+26LBNXj0LbrT6KFd0xhm/KH9gMTKnYoBQqezE7D5jjPki5lKAfBL7IQkwgs5wFdaQicRYAUsuI7gV6EsDgVmLmF6f2d8+/AJ0fwYIFpzaYqQfgrpilMCvHXcuskpHj2RtJFMiPZ4WZSMZ3sMTD0MmZxdNU32qc/TR7mILHEB9/10EzmE4F7X1NdWYeJqK5VKH8RfwLHtiFDPPoqttc2AuaMrSPiRJxtww0oLsEN3toE9qauXpVcJUgaxpj0hE7UQP026Et3LZDQCD8w+3VPVUCfGHy7LTZdPzxDYuWmSMGF/VjYYKbv3WgPEVomRdB1TlaSEb8JfnHI1CVo4C+dImwxppVRbiAkjK/D+TnTavgx+zl85Fo1oNO49kjg9Avp2sOoHBSCBk6ceywIdvvaIzQSxQZfj3PbSWRg+ywJMS8tM6m6riEQola8EmHA7pP/Aj70453ip08MUnz1vsM/e396nqdw55KhR5dPEPHrfqmONMgr6IUa+6zyeWBQ7LTpkWztQ4lQcPl48jRE0ijTQ==
|
||||
sido@client-145-100-225-240.surfnet.eduroam.rug.nl
|
||||
image: registry.molgenis.org/molgenis-ops-releases/jenkins-agent-worker:lts
|
||||
name: jenkins-agent-worker
|
||||
ports:
|
||||
- containerPort: 22
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /var/run/docker.sock
|
||||
name: jenkins-agent-worker-claim
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: jenkins-agent-worker-claim
|
||||
persistentVolumeClaim:
|
||||
claimName: jenkins-agent-worker-claim
|
||||
status: {}
|
@ -1,40 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert
|
||||
kompose.version: 1.13.0 ()
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: jenkins-master
|
||||
name: jenkins-master
|
||||
spec:
|
||||
replicas: 1
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: jenkins-master
|
||||
spec:
|
||||
containers:
|
||||
- env:
|
||||
- name: JENKINS_ADMIN_PASS
|
||||
- name: JENKINS_ADMIN_USER
|
||||
image: registry.molgenis.org/molgenis-ops-releases/jenkins-master:lts
|
||||
name: jenkins-master
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /var/jenkins-home
|
||||
name: jenkins-master-claim
|
||||
- mountPath: /var/run/docker.sock
|
||||
name: jenkins-master-claim
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: jenkins-master-claim
|
||||
persistentVolumeClaim:
|
||||
claimName: jenkins-master-claim
|
||||
status: {}
|
@ -1,12 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: ingress-${SERVICE}
|
||||
spec:
|
||||
rules:
|
||||
- host: ${SITENAME}
|
||||
http:
|
||||
paths:
|
||||
- backend:
|
||||
serviceName: ${SERVICE}
|
||||
servicePort: 80
|
@ -1,19 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert
|
||||
kompose.version: 1.13.0 ()
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: jenkins-agent-worker
|
||||
name: jenkins-agent-worker
|
||||
spec:
|
||||
ports:
|
||||
- name: "22"
|
||||
port: 22
|
||||
targetPort: 22
|
||||
selector:
|
||||
io.kompose.service: jenkins-agent-worker
|
||||
status:
|
||||
loadBalancer: {}
|
@ -1,19 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
kompose.cmd: kompose convert
|
||||
kompose.version: 1.13.0 ()
|
||||
creationTimestamp: null
|
||||
labels:
|
||||
io.kompose.service: jenkins-master
|
||||
name: jenkins-master
|
||||
spec:
|
||||
ports:
|
||||
- name: "8080"
|
||||
port: 8080
|
||||
targetPort: 8080
|
||||
selector:
|
||||
io.kompose.service: jenkins-master
|
||||
status:
|
||||
loadBalancer: {}
|
@ -1,45 +0,0 @@
|
||||
# Default values for jenkins.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
repository: registry.molgenis.org/molgenis-ops-releases/jenkins-master:lts
|
||||
tag: lts
|
||||
pullPolicy: Always
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 8080
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
path: /
|
||||
hosts:
|
||||
- registry.molgenis.local
|
||||
tls: []
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
||||
# - chart-example.local
|
||||
|
||||
resources: {}
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
@ -2,5 +2,5 @@ apiVersion: v1
|
||||
appVersion: "1.0"
|
||||
description: Nexus stack for MOLGENIS
|
||||
name: nexus
|
||||
version: 0.1.0
|
||||
version: 0.1.2
|
||||
icon: https://github.com/sidohaakma/molgenis-docker-helm/blob/master/nexus/catalogIcon-molgenis-nexus.svg
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
32
nexus/v0.1.x/templates/_helpers.tpl
Normal file
32
nexus/v0.1.x/templates/_helpers.tpl
Normal file
@ -0,0 +1,32 @@
|
||||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "nexus.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
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).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "nexus.fullname" -}}
|
||||
{{- if .Values.fullnameOverride -}}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- if contains $name .Release.Name -}}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "nexus.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
34
nexus/v0.1.x/templates/deployments/httpd-deployment.yaml
Normal file
34
nexus/v0.1.x/templates/deployments/httpd-deployment.yaml
Normal file
@ -0,0 +1,34 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: {{ .Values.httpd.name }}
|
||||
labels:
|
||||
app: {{ .Values.httpd.name }}
|
||||
environment: {{ .Values.environment }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
strategy:
|
||||
type: {{ .Values.httpd.strategy.type }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ .Values.httpd.selector }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ .Values.httpd.name }}
|
||||
creationTimestamp: null
|
||||
spec:
|
||||
restartPolicy: {{ .Values.httpd.restartPolicy }}
|
||||
containers:
|
||||
- name: {{ .Values.httpd.name }}
|
||||
image: "{{ .Values.httpd.image.repository }}:{{ .Values.httpd.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.httpd.image.pullPolicy }}
|
||||
env:
|
||||
- name: PROXY_SERVICE
|
||||
value: "{{ .Values.nexus.name }}:{{ .Values.nexus.port.ui }},{{ .Values.nexus.name }}:{{ .Values.nexus.port.docker }}:{{ .Values.nexus.path.dockerV2 }}"
|
||||
- name: SERVER_NAME
|
||||
value: {{ .Values.httpd.hostname }}
|
||||
ports:
|
||||
- containerPort: {{ .Values.httpd.port }}
|
||||
resources: {}
|
29
nexus/v0.1.x/templates/deployments/nexus-deployment.yaml
Normal file
29
nexus/v0.1.x/templates/deployments/nexus-deployment.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: {{ .Values.nexus.name }}
|
||||
labels:
|
||||
app: {{ .Values.nexus.name }}
|
||||
environment: {{ .Values.environment }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
strategy:
|
||||
type: {{ .Values.nexus.strategy.type }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app: {{ .Values.nexus.selector }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ .Values.nexus.name }}
|
||||
creationTimestamp: null
|
||||
spec:
|
||||
restartPolicy: {{ .Values.nexus.restartPolicy }}
|
||||
containers:
|
||||
- name: {{ .Values.nexus.name }}
|
||||
image: "{{ .Values.nexus.image.repository }}:{{ .Values.nexus.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.nexus.image.pullPolicy }}
|
||||
ports:
|
||||
- containerPort: {{ .Values.nexus.port.ui }}
|
||||
- containerPort: {{ .Values.nexus.port.docker }}
|
38
nexus/v0.1.x/templates/ingress.yaml
Normal file
38
nexus/v0.1.x/templates/ingress.yaml
Normal file
@ -0,0 +1,38 @@
|
||||
{{- if .Values.ingress.enabled }}
|
||||
{{- range .Values.ingress.hosts }}
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: "{{ $.Release.Name }}-ingress"
|
||||
labels:
|
||||
app: httpd
|
||||
chart: "{{ $.Chart.Name }}-{{ $.Chart.Version }}"
|
||||
release: "{{ $.Release.Name }}"
|
||||
heritage: "{{ $.Release.Service }}"
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: "nginx"
|
||||
nginx.ingress.kubernetes.io/proxy-body-size: "0"
|
||||
{{- if .tls }}
|
||||
ingress.kubernetes.io/secure-backends: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
spec:
|
||||
rules:
|
||||
- host: {{ .name }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ default "/" .path }}
|
||||
backend:
|
||||
serviceName: httpd
|
||||
servicePort: 80
|
||||
{{- if .tls }}
|
||||
tls:
|
||||
- hosts:
|
||||
- {{ .name }}
|
||||
secretName: {{ .tlsSecret }}
|
||||
{{- end }}
|
||||
---
|
||||
{{- end }}
|
||||
{{- end }}
|
13
nexus/v0.1.x/templates/services/httpd-service.yaml
Normal file
13
nexus/v0.1.x/templates/services/httpd-service.yaml
Normal file
@ -0,0 +1,13 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ .Values.httpd.name }}
|
||||
labels:
|
||||
app: {{ .Values.httpd.name }}
|
||||
spec:
|
||||
type: NodePort
|
||||
ports:
|
||||
- name: {{ .Values.httpd.name }}
|
||||
port: {{ .Values.httpd.port }}
|
||||
selector:
|
||||
app: {{ .Values.httpd.selector }}
|
15
nexus/v0.1.x/templates/services/nexus-service.yaml
Normal file
15
nexus/v0.1.x/templates/services/nexus-service.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ .Values.nexus.name }}
|
||||
labels:
|
||||
app: {{ .Values.nexus.name }}
|
||||
spec:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
- name: ui
|
||||
port: {{ .Values.nexus.port.ui }}
|
||||
- name: docker
|
||||
port: {{ .Values.nexus.port.docker }}
|
||||
selector:
|
||||
app: {{ .Values.nexus.selector }}
|
@ -4,20 +4,41 @@
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
repository: sonatype/nexus3
|
||||
tag: stable
|
||||
pullPolicy: IfNotPresent
|
||||
environment: production
|
||||
|
||||
httpd:
|
||||
name: httpd
|
||||
type: ClusterIP
|
||||
service:
|
||||
type: NodePort
|
||||
port: 80
|
||||
proxy: httpd:80:/
|
||||
|
||||
nexus:
|
||||
name: nexus
|
||||
type: ClusterIP
|
||||
strategy:
|
||||
type: Recreate
|
||||
selector: nexus
|
||||
restartPolicy: Always
|
||||
image:
|
||||
repository: sonatype/nexus3
|
||||
tag: latest
|
||||
pullPolicy: Always
|
||||
port:
|
||||
docker: 5000
|
||||
ui: 8081
|
||||
path:
|
||||
dockerV2: v2
|
||||
|
||||
httpd:
|
||||
name: httpd
|
||||
hostname: registry.molgenis.org
|
||||
strategy:
|
||||
type: Recreate
|
||||
selector: httpd
|
||||
restartPolicy: Always
|
||||
image:
|
||||
repository: registry.webhosting.rug.nl/molgenis/httpd
|
||||
tag: lts
|
||||
pullPolicy: Always
|
||||
port: 80
|
||||
|
||||
|
||||
ingress:
|
||||
enabled: true
|
||||
@ -26,7 +47,7 @@ ingress:
|
||||
# kubernetes.io/tls-acme: "true"
|
||||
path: /
|
||||
hosts:
|
||||
- registry.molgenis.org
|
||||
- name: registry.molgenis.org
|
||||
tls: []
|
||||
# - secretName: chart-example-tls
|
||||
# hosts:
|
@ -1,29 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: httpd
|
||||
labels:
|
||||
app: httpd
|
||||
spec:
|
||||
replicas: 1
|
||||
strategy: {}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: httpd
|
||||
creationTimestamp: null
|
||||
spec:
|
||||
containers:
|
||||
- env:
|
||||
- name: PROXY_SERVICE
|
||||
value: nexus:8081,nexus:5000:v2
|
||||
- name: SERVER_NAME
|
||||
value: httpd:80
|
||||
image: registry.webhosting.rug.nl/molgenis/httpd:lts
|
||||
name: httpd
|
||||
ports:
|
||||
- containerPort: 80
|
||||
resources: {}
|
||||
restartPolicy: Always
|
||||
status: {}
|
@ -1,32 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: nexus
|
||||
spec:
|
||||
replicas: 1
|
||||
strategy:
|
||||
type: Recreate
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: httpd
|
||||
creationTimestamp: null
|
||||
spec:
|
||||
containers:
|
||||
- image: sonatype/nexus3:latest
|
||||
name: nexus
|
||||
ports:
|
||||
- containerPort: 8081
|
||||
- containerPort: 5000
|
||||
resources: {}
|
||||
volumeMounts:
|
||||
- mountPath: /nexus-data
|
||||
name: molgenis-nexus-data
|
||||
restartPolicy: Always
|
||||
volumes:
|
||||
- name: molgenis-nexus-data
|
||||
persistentVolumeClaim:
|
||||
claimName: molgenis-nexus-data
|
||||
status: {}
|
||||
|
@ -1,12 +0,0 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: ingress-nexus
|
||||
spec:
|
||||
rules:
|
||||
- host: registry.molgenis.org
|
||||
http:
|
||||
paths:
|
||||
- backend:
|
||||
serviceName: httpd
|
||||
servicePort: 80
|
@ -1,19 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ template "httpd.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "httpd.name" . }}
|
||||
chart: {{ template "httpd.chart" . }}
|
||||
release: {{ .Release.Name }}
|
||||
heritage: {{ .Release.Service }}
|
||||
spec:
|
||||
type: {{ .Values.httpd.type }}
|
||||
ports:
|
||||
- port: {{ .Values.httpd.port }}
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
name: http
|
||||
selector:
|
||||
app: {{ template "httpd.name" . }}
|
||||
release: {{ .Release.Name }}
|
@ -1,15 +0,0 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: nexus
|
||||
labels:
|
||||
app: nexus
|
||||
spec:
|
||||
ports:
|
||||
- name: "ui"
|
||||
port: 8081
|
||||
- name: "docker"
|
||||
port: 5000
|
||||
selector:
|
||||
app: nexus
|
Loading…
Reference in New Issue
Block a user