8 Commits

Author SHA1 Message Date
23adcf6472 chore: bump version up to 2.33.0
All checks were successful
Release Chart / release (push) Successful in 46s
2023-08-30 20:00:10 +03:00
f6b709fba1 feat: change drone to gitea actions
All checks were successful
Release Chart / release (push) Successful in 13s
2023-08-28 01:10:32 +03:00
2324e7d6e2 cs: fix
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-17 17:00:07 +03:00
2f2043e915 ci: use helm plugin
All checks were successful
continuous-integration/drone/push Build is passing
2023-02-15 00:03:04 +03:00
a801fd1480 Fix include number of args
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-12-06 16:03:53 +03:00
8ac94f8f60 Use image version from Chart.AppVersion
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-12-06 16:01:22 +03:00
bbce198fb7 Bump hasura version up to 2.16.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2022-12-06 15:24:33 +03:00
f432a87166 Use hasura-cli deploy for migrations 2022-12-06 15:24:13 +03:00
11 changed files with 137 additions and 151 deletions

View File

@ -1,49 +0,0 @@
---
kind: pipeline
type: docker
name: default
trigger:
event:
- push
- tag
steps:
- name: lint
image: cr.grachevko.ru/docker.io/alpine/helm:latest
pull: always
commands:
- helm lint .
- name: version
image: cr.grachevko.ru/docker.io/mikefarah/yq:latest
pull: always
user: root
commands:
- yq -i '.version = "'$DRONE_TAG'"' Chart.yaml
- cat Chart.yaml
depends_on:
- lint
when:
event:
- tag
- name: release
image: cr.grachevko.ru/docker.io/alpine/helm:latest
pull: always
commands:
- helm dependency build
- helm plugin install https://github.com/chartmuseum/helm-push
- helm repo add hasura $HELM_REPO --username $HELM_REPO_USERNAME --password $HELM_REPO_PASSWORD
- helm cm-push . $HELM_REPO
environment:
HELM_REPO: https://harbor.grachevko.ru/chartrepo/hasura
HELM_REPO_USERNAME:
from_secret: HELM_REPO_USERNAME
HELM_REPO_PASSWORD:
from_secret: HELM_REPO_PASSWORD
depends_on:
- version
when:
event:
- tag

View File

@ -0,0 +1,29 @@
name: Release Chart
on:
push:
tags:
- '*'
jobs:
release:
runs-on: ubuntu-latest
env:
REGISTRY: harbor.grachevko.ru
steps:
- uses: actions/checkout@v3
- uses: yokawasa/action-setup-kube-tools@v0.9.3
with:
setup-tools: helm
- name: deps and lint
run: |
helm dependency update
helm lint --strict .
- name: build
run: helm package --version ${{ gitea.ref_name }} .
- name: publish
run: |
echo "${{ secrets.REGISTRY_PASSWORD }}" | helm registry login ${{ env.REGISTRY }} --username "${{ secrets.REGISTRY_USERNAME }}" --password-stdin
helm push ./*.tgz oci://harbor.grachevko.ru/${{ gitea.repository }}

View File

@ -3,10 +3,10 @@ name: hasura
description: A Helm chart for Kubernetes description: A Helm chart for Kubernetes
type: application type: application
version: 0.2.6 version: 0.2.6
appVersion: v2.15.1 appVersion: 2.33.0
icon: https://raw.githubusercontent.com/hasura/graphql-engine/master/assets/brand/powered_by_hasura_primary_lightbg.svg icon: https://raw.githubusercontent.com/hasura/graphql-engine/master/assets/brand/powered_by_hasura_primary_lightbg.svg
maintainers: maintainers:
- email: me@grachevko.ru - email: me@grachevko.ru
name: Konstantin Grachev name: Konstantin Grachev
sources: sources:
- https://git.grachevko.ru/hasura/chart - https://git.grachevko.ru/hasura/chart

View File

@ -60,3 +60,12 @@ Create the name of the service account to use
{{- default "default" .Values.serviceAccount.name }} {{- default "default" .Values.serviceAccount.name }}
{{- end }} {{- end }}
{{- end }} {{- end }}
{{- define "hasura.image" -}}
{{- .Values.image.registry }}/{{ .Values.image.repository }}:
{{- if .Values.image.tag }}
{{- .Values.image.tag -}}
{{- else -}}
v{{ .Chart.AppVersion }}.cli-migrations-v3
{{- end }}
{{- end }}

View File

@ -31,7 +31,7 @@ spec:
- name: {{ .Chart.Name }} - name: {{ .Chart.Name }}
securityContext: securityContext:
{{- toYaml .Values.securityContext | nindent 12 }} {{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" image: {{ include "hasura.image" . }}
imagePullPolicy: {{ .Values.image.pullPolicy }} imagePullPolicy: {{ .Values.image.pullPolicy }}
envFrom: envFrom:
{{- if .Values.extraEnvVarsSecret }} {{- if .Values.extraEnvVarsSecret }}

View File

@ -23,7 +23,7 @@ spec:
restartPolicy: Never restartPolicy: Never
volumes: volumes:
- name: data - name: data
emptyDir: { } emptyDir: {}
initContainers: initContainers:
- name: copy - name: copy
image: "{{ .Values.migrations.image.registry }}/{{ .Values.migrations.image.repository }}:{{ .Values.migrations.image.tag | default "latest" }}" image: "{{ .Values.migrations.image.registry }}/{{ .Values.migrations.image.repository }}:{{ .Values.migrations.image.tag | default "latest" }}"
@ -34,13 +34,10 @@ spec:
mountPath: /shared-data mountPath: /shared-data
containers: containers:
- name: migrate - name: migrate
image: "{{ .Values.image.registry }}/{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" image: {{ include "hasura.image" . }}
command: [ "/bin/sh", "-c" ] command: ["/bin/sh", "-c"]
args: args:
- set -ex; - hasura-cli deploy
hasura-cli metadata apply;
hasura-cli migrate apply --all-databases;
hasura-cli metadata reload;
workingDir: /data workingDir: /data
env: env:
- name: HASURA_GRAPHQL_ENDPOINT - name: HASURA_GRAPHQL_ENDPOINT

View File

@ -10,6 +10,6 @@ spec:
containers: containers:
- name: wget - name: wget
image: busybox image: busybox
command: [ 'wget' ] command: ['wget']
args: [ '{{ include "hasura.fullname" . }}:{{ .Values.service.port }}' ] args: ['{{ include "hasura.fullname" . }}:{{ .Values.service.port }}']
restartPolicy: Never restartPolicy: Never

View File

@ -9,8 +9,8 @@ image:
repository: hasura/graphql-engine repository: hasura/graphql-engine
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion. # Overrides the image tag whose default is the chart appVersion.
tag: v2.15.0.cli-migrations-v3 tag: ""
pullSecrets: [ ] pullSecrets: []
extraEnvVarsSecret: "" extraEnvVarsSecret: ""
@ -20,7 +20,7 @@ migrations:
registry: *registry registry: *registry
repository: "" repository: ""
tag: "" tag: ""
pullSecrets: [ ] pullSecrets: []
path: /data path: /data
nameOverride: "" nameOverride: ""
@ -30,22 +30,22 @@ serviceAccount:
# Specifies whether a service account should be created # Specifies whether a service account should be created
create: false create: false
# Annotations to add to the service account # Annotations to add to the service account
annotations: { } annotations: {}
# The name of the service account to use. # The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template # If not set and create is true, a name is generated using the fullname template
name: "" name: ""
podAnnotations: { } podAnnotations: {}
podSecurityContext: { } podSecurityContext: {}
# fsGroup: 2000 # fsGroup: 2000
securityContext: { } securityContext: {}
# capabilities: # capabilities:
# drop: # drop:
# - ALL # - ALL
# readOnlyRootFilesystem: true # readOnlyRootFilesystem: true
# runAsNonRoot: true # runAsNonRoot: true
# runAsUser: 1000 # runAsUser: 1000
service: service:
@ -55,7 +55,7 @@ service:
ingress: ingress:
enabled: false enabled: false
className: "" className: ""
annotations: { } annotations: {}
# kubernetes.io/ingress.class: nginx # kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true" # kubernetes.io/tls-acme: "true"
hosts: hosts:
@ -63,12 +63,12 @@ ingress:
paths: paths:
- path: / - path: /
pathType: ImplementationSpecific pathType: ImplementationSpecific
tls: [ ] tls: []
# - secretName: chart-example-tls # - secretName: chart-example-tls
# hosts: # hosts:
# - chart-example.local # - chart-example.local
resources: { } resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious # 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 # 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 # resources, such as Minikube. If you do want to specify resources, uncomment the following
@ -77,7 +77,7 @@ resources: { }
# cpu: 100m # cpu: 100m
# memory: 128Mi # memory: 128Mi
# requests: # requests:
# cpu: 100m # cpu: 100m
# memory: 128Mi # memory: 128Mi
autoscaling: autoscaling:
@ -87,8 +87,8 @@ autoscaling:
targetCPUUtilizationPercentage: 80 targetCPUUtilizationPercentage: 80
# targetMemoryUtilizationPercentage: 80 # targetMemoryUtilizationPercentage: 80
nodeSelector: { } nodeSelector: {}
tolerations: [ ] tolerations: []
affinity: { } affinity: {}