Merge branch 'dev-newchart'
All checks were successful
Upload Helm Chart / Explore-Gitea-Actions (push) Successful in 2s
All checks were successful
Upload Helm Chart / Explore-Gitea-Actions (push) Successful in 2s
This commit is contained in:
@@ -1,14 +1,12 @@
|
|||||||
name: Upload Helm Chart
|
name: Upload Helm Chart
|
||||||
run-name: Uploading helm chart
|
run-name: Uploading helm chart
|
||||||
on:
|
on: [push]
|
||||||
push:
|
|
||||||
tags: ['*']
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
Explore-Gitea-Actions:
|
Explore-Gitea-Actions:
|
||||||
runs-on: shell
|
runs-on: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
HELM_CHART_VERSION: "${{ github.ref_name }}"
|
HELM_CHART_VERSION: "1.0.34"
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Set up Helm
|
- name: Set up Helm
|
||||||
@@ -19,7 +17,7 @@ jobs:
|
|||||||
- run: helm package ./Chart
|
- run: helm package ./Chart
|
||||||
- name: Upload Helm Chart
|
- name: Upload Helm Chart
|
||||||
run: |
|
run: |
|
||||||
curl --request POST \
|
curl -ki -X POST \
|
||||||
--user ${{ secrets.HELM_PKG_UPLOAD_USER }}:${{ secrets.HELM_PKG_UPLOAD_PASS }} \
|
--user ${{ secrets.HELM_PKG_UPLOAD_USER }}:${{ secrets.HELM_PKG_UPLOAD_PASS }} \
|
||||||
--form "chart=@wordyne-${HELM_CHART_VERSION}.tgz" \
|
--upload-file "wordyne-${HELM_CHART_VERSION}.tgz" \
|
||||||
https://git.cloudyne.io/api/packages/helm/helm/api/charts
|
https://helm.cloudyne.io/api/charts
|
||||||
|
|||||||
@@ -2,5 +2,5 @@ apiVersion: v2
|
|||||||
name: wordyne
|
name: wordyne
|
||||||
description: Helm chart for deploying pre-built website containers to kubernetes clusters
|
description: Helm chart for deploying pre-built website containers to kubernetes clusters
|
||||||
type: application
|
type: application
|
||||||
version: "1.0.24"
|
version: "1.0.27"
|
||||||
appVersion: "6.2.2"
|
appVersion: "6.2.2"
|
||||||
|
|||||||
@@ -99,16 +99,16 @@ spec:
|
|||||||
- name: serverconfig
|
- name: serverconfig
|
||||||
mountPath: /init-go/config.json
|
mountPath: /init-go/config.json
|
||||||
subPath: init.json
|
subPath: init.json
|
||||||
|
{{- if .Values.storage.cloud.active }}
|
||||||
|
- name: cloud
|
||||||
|
mountPath: "/mnt/cloud"
|
||||||
|
{{- end }}
|
||||||
{{- if .Values.storage.local.active }}
|
{{- if .Values.storage.local.active }}
|
||||||
{{- range .Values.storage.folders }}
|
{{- range .Values.storage.folders }}
|
||||||
- name: local
|
- name: local
|
||||||
mountPath: "/app/web/app/{{ . }}"
|
mountPath: "/app/web/app/{{ . }}"
|
||||||
subPath: "{{ . }}"
|
subPath: "{{ . }}"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.storage.cloud.active }}
|
|
||||||
- name: cloud
|
|
||||||
mountPath: "/mnt/cloud"
|
|
||||||
{{- end }}
|
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{- if .Values.storage.cloud.active }}
|
{{- if .Values.storage.cloud.active }}
|
||||||
{{- range .Values.storage.folders }}
|
{{- range .Values.storage.folders }}
|
||||||
@@ -156,17 +156,29 @@ spec:
|
|||||||
mountPath: "/mnt/cloud"
|
mountPath: "/mnt/cloud"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.storage.local.active }}
|
{{- if .Values.storage.local.active }}
|
||||||
{{- range .Values.storage.folders }}
|
{{- range .Values.storage.folders }}
|
||||||
|
{{- if or ( eq . "certificates" ) ( eq . "secrets" ) }}
|
||||||
|
- name: local
|
||||||
|
mountPath: "/app/{{ . }}"
|
||||||
|
subPath: "{{ . }}"
|
||||||
|
{{- else }}
|
||||||
- name: local
|
- name: local
|
||||||
mountPath: "/app/web/app/{{ . }}"
|
mountPath: "/app/web/app/{{ . }}"
|
||||||
subPath: "{{ . }}"
|
subPath: "{{ . }}"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{- if .Values.storage.cloud.active }}
|
{{- if .Values.storage.cloud.active }}
|
||||||
{{- range .Values.storage.folders }}
|
{{- range .Values.storage.folders }}
|
||||||
|
{{- if or ( eq . "certificates" ) ( eq . "secrets" ) }}
|
||||||
|
- name: cloud
|
||||||
|
mountPath: "/app/{{ . }}"
|
||||||
|
subPath: "{{ . }}"
|
||||||
|
{{- else }}
|
||||||
- name: cloud
|
- name: cloud
|
||||||
mountPath: "/app/web/app/{{ . }}"
|
mountPath: "/app/web/app/{{ . }}"
|
||||||
subPath: "{{ . }}"
|
subPath: "{{ . }}"
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
@@ -187,4 +199,4 @@ spec:
|
|||||||
ports:
|
ports:
|
||||||
- containerPort: 8080
|
- containerPort: 8080
|
||||||
name: http
|
name: http
|
||||||
protocol: TCP
|
protocol: TCP
|
||||||
|
|||||||
132
Chart/templates/job.yaml
Normal file
132
Chart/templates/job.yaml
Normal file
@@ -0,0 +1,132 @@
|
|||||||
|
#dev-newchart
|
||||||
|
{{- if .Values.init.asJob }}
|
||||||
|
apiVersion: batch/v1
|
||||||
|
kind: Job
|
||||||
|
metadata:
|
||||||
|
name: {{ include "..fullname" . }}-initializer
|
||||||
|
labels:
|
||||||
|
{{- include "..labels" . | nindent 4 }}
|
||||||
|
cloudyne.systems/component: site-init
|
||||||
|
spec:
|
||||||
|
backoffLimit: 2
|
||||||
|
template:
|
||||||
|
spec:
|
||||||
|
restartPolicy: "OnFailure"
|
||||||
|
affinity: {{ include "..affinity-labels" . | nindent 8 }}
|
||||||
|
securityContext:
|
||||||
|
fsGroup: 101
|
||||||
|
volumes:
|
||||||
|
- name: serverconfig
|
||||||
|
configMap:
|
||||||
|
name: {{ include "..fullname" . }}-cfg
|
||||||
|
{{- if and .Values.secrets .Values.secrets.external }}
|
||||||
|
{{- range .Values.secrets.external }}
|
||||||
|
{{- if eq .type "file" }}
|
||||||
|
- name: {{ .name }}
|
||||||
|
secret:
|
||||||
|
secretName: {{- include "..fullname" $ }}-exts-{{ .name }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.storage.kubernetes }}
|
||||||
|
{{- range .Values.storage.kubernetes }}
|
||||||
|
- name: {{ .name }}
|
||||||
|
{{- if eq .type "secret" }}
|
||||||
|
secret:
|
||||||
|
secretName: "{{- include "..fullname" $ }}-sec-{{ .name }}"
|
||||||
|
{{- end }}
|
||||||
|
{{- if eq .type "configmap" }}
|
||||||
|
configMap:
|
||||||
|
name: "{{- include "..fullname" $ }}-sec-{{ .name }}"
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.storage.cloud.active }}
|
||||||
|
- name: cloud
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: pvc-{{- include "..name" . }}-cloud
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.storage.local.active }}
|
||||||
|
- name: local
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: pvc-{{- include "..name" . }}-local
|
||||||
|
{{- end }}
|
||||||
|
{{- if and .Values.secrets .Values.secrets.external }}
|
||||||
|
{{- range .Values.secrets.external }}
|
||||||
|
{{- if eq .type "docker" }}
|
||||||
|
imagePullSecrets:
|
||||||
|
- name: "{{- include "..fullname" $ }}-exts-{{ .name }}"
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.storage.kubernetes }}
|
||||||
|
{{- range .Values.storage.kubernetes }}
|
||||||
|
{{- if eq .type "docker" }}
|
||||||
|
imagePullSecrets:
|
||||||
|
- name: "{{- include "..fullname" $ }}-sec-{{ .name }}"
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if and .Values.storage.cloud.active .Values.storage.local.active .Values.storage.local.cloneCloud }}
|
||||||
|
initContainers:
|
||||||
|
- name: init-local-storage
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
runAsUser: 0
|
||||||
|
image: cloudyne/ubuntu-ci:latest
|
||||||
|
command: ["python3"]
|
||||||
|
args: ["/usr/local/bin/storage-clone", "/mnt/cloud", "/mnt/local"]
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
volumeMounts:
|
||||||
|
- name: cloud
|
||||||
|
mountPath: /mnt/cloud
|
||||||
|
- name: local
|
||||||
|
mountPath: /mnt/local
|
||||||
|
{{- end }}
|
||||||
|
containers:
|
||||||
|
- name: init-site
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
runAsUser: 0
|
||||||
|
image: "{{ .Values.site.image }}"
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
volumeMounts:
|
||||||
|
- name: serverconfig
|
||||||
|
mountPath: /init-go/config.json
|
||||||
|
subPath: init.json
|
||||||
|
{{- if .Values.storage.cloud.active }}
|
||||||
|
- name: cloud
|
||||||
|
mountPath: "/mnt/cloud"
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.storage.local.active }}
|
||||||
|
{{- range .Values.storage.folders }}
|
||||||
|
- name: local
|
||||||
|
mountPath: "/app/web/app/{{ . }}"
|
||||||
|
subPath: "{{ . }}"
|
||||||
|
{{- end }}
|
||||||
|
{{- else }}
|
||||||
|
{{- if .Values.storage.cloud.active }}
|
||||||
|
{{- range .Values.storage.folders }}
|
||||||
|
- name: cloud
|
||||||
|
mountPath: "/app/web/app/{{ . }}"
|
||||||
|
subPath: "{{ . }}"
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: {{ include "..fullname" . }}-env
|
||||||
|
{{- if and .Values.secrets .Values.secrets.external }}
|
||||||
|
{{- range .Values.secrets.external }}
|
||||||
|
{{- if eq .type "env" }}
|
||||||
|
- secretRef:
|
||||||
|
name: "{{- include "..fullname" $ }}-exts-{{ .name }}"
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
- secretRef:
|
||||||
|
name: {{ include "..fullname" . }}-db-auth
|
||||||
|
command: ["sh"]
|
||||||
|
args: ["-c", "/init-go/init-go"]
|
||||||
|
{{- end }}
|
||||||
Reference in New Issue
Block a user