diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..e3ab061 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,40 @@ +--- +kind: pipeline +type: docker +name: default + +steps: +- name: submodules + image: alpine/git + commands: + - git submodule update --init --recursive + +- name: build + image: alpine/helm + volumes: + - name: result + path: /output + commands: + - helm lint --set redis.enabled=false + - helm package -d chart . + - mv chart/glitchtip*.tgz /output/glitchtip.tgz + +- name: upload + image: curlimages/curl:latest + environment: + GIT_HOST: git.kurocon.nl + GIT_PACKAGE_OWNER: KuroNET + GIT_USER: + from_secret: git_username + GIT_TOKEN: + from_secret: git_password_or_token + volumes: + - name: result + path: /output + commands: + - curl --user $GIT_USER:$GIT_TOKEN -X POST --upload-file /output/glitchtip.tgz https://$GIT_HOST/api/packages/{$GIT_PACKAGE_OWNER}/helm/api/charts + + +volumes: +- name: result + temp: {} diff --git a/.gitmodules b/.gitmodules index 1ad4fb4..0290350 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ [submodule "django-helm-chart"] path = django-helm-chart - url = https://gitlab.com/burke-software/django-helm-chart.git + url = https://git.kurocon.nl/KuroNET/django-helm-chart.git diff --git a/CHANGELOG b/CHANGELOG new file mode 100644 index 0000000..8a85976 --- /dev/null +++ b/CHANGELOG @@ -0,0 +1,9 @@ +# Unreleased + +# 4.0.0 + +- (Breaking) Rename value preInstall to migrationJob +- The migration job now runs the migrate script which includes pgpartition. This should help ensure it runs more often as a failsafe should celery fail. +- Add some support for volume mounts, not well tested +- Started this changelog +- Updated chart dependencies to latest versions diff --git a/Chart.lock b/Chart.lock index dd5efba..4973b71 100644 --- a/Chart.lock +++ b/Chart.lock @@ -1,9 +1,9 @@ dependencies: - name: postgresql repository: https://charts.bitnami.com/bitnami - version: 12.2.1 + version: 15.5.16 - name: redis repository: https://charts.bitnami.com/bitnami - version: 17.7.5 -digest: sha256:abaff7f53b1a66bffc8873d0e869fdbd9047173942418070c853121eae39f387 -generated: "2023-02-20T10:53:30.117200225-05:00" + version: 19.6.1 +digest: sha256:39ccb3c76f7a8587ce6623d8b563cefcb3c63a7376768a901ae8092ca4fd9b82 +generated: "2024-07-15T16:16:16.67406353-04:00" diff --git a/Chart.yaml b/Chart.yaml index 87143f0..048d1ae 100644 --- a/Chart.yaml +++ b/Chart.yaml @@ -14,20 +14,20 @@ type: application # This is the chart version. This version number should be incremented each time you make changes # to the chart and its templates, including the app version. -version: 2.2.5 +version: 4.0.1 # This is the version number of the application being deployed. This version number should be # incremented each time you make changes to the application. -appVersion: 3.1.0 +appVersion: 4.1.1 icon: https://glitchtip.gitlab.io/glitchtip-helm-chart/icon.svg dependencies: - name: postgresql - version: ^12.1.9 + version: ^15.2.5 repository: https://charts.bitnami.com/bitnami condition: postgresql.enabled - name: redis - version: ^17.4.2 + version: ^19.1.0 repository: https://charts.bitnami.com/bitnami condition: redis.enabled diff --git a/README.md b/README.md index 6fcafb3..6187bcd 100644 --- a/README.md +++ b/README.md @@ -18,19 +18,21 @@ For postgresql, we recommend an externally managed database and providing only t ## Important Tips - Use [helm diff](https://github.com/databus23/helm-diff) to preview changes -- We don't update the chart version for app version updates at this time, set image.tag instead. - Set image.pullPolicy to `IfNotPresent` after specifying the image.tag - Set redis.auth.password to avoid redis being entirely remade on each release - If updating the chart, carefully review values for any new defaults ## Updating +See changes in this chart on [GitLab](https://gitlab.com/glitchtip/glitchtip-helm-chart/-/releases) + - `helm repo update` - Set the image.tag to the [latest version](https://gitlab.com/glitchtip/glitchtip-frontend/-/releases) - `helm diff upgrade glitchtip glitchtip/glitchtip` - Carefully review diff - `helm upgrade glitchtip glitchtip/glitchtip -f your-values.yaml` + # Contributing Please open issues only with potential solutions and be prepared to do some work or else fund it. Contributors are welcome. However, we kindly ask that feature requests and support requests not be opened in this repo. diff --git a/charts/postgresql-12.2.1.tgz b/charts/postgresql-12.2.1.tgz deleted file mode 100644 index 249bfae..0000000 Binary files a/charts/postgresql-12.2.1.tgz and /dev/null differ diff --git a/charts/postgresql-15.5.16.tgz b/charts/postgresql-15.5.16.tgz new file mode 100644 index 0000000..3c4bc38 Binary files /dev/null and b/charts/postgresql-15.5.16.tgz differ diff --git a/charts/redis-17.7.5.tgz b/charts/redis-17.7.5.tgz deleted file mode 100644 index 48eebe5..0000000 Binary files a/charts/redis-17.7.5.tgz and /dev/null differ diff --git a/charts/redis-19.6.1.tgz b/charts/redis-19.6.1.tgz new file mode 100644 index 0000000..f517dcf Binary files /dev/null and b/charts/redis-19.6.1.tgz differ diff --git a/django-helm-chart b/django-helm-chart index 95717ec..4c7256e 160000 --- a/django-helm-chart +++ b/django-helm-chart @@ -1 +1 @@ -Subproject commit 95717ec228ccca9a295eb3761f8ed9fa5c4193bb +Subproject commit 4c7256e5c96d18e4f187074354690a11d65b57fe diff --git a/values.yaml b/values.yaml index 830523b..415b0b5 100644 --- a/values.yaml +++ b/values.yaml @@ -1,7 +1,7 @@ # Default values for glitchtip. image: repository: glitchtip/glitchtip - tag: v3.1.0 + tag: v4.1.1 pullPolicy: IfNotPresent imagePullSecrets: [] @@ -12,14 +12,16 @@ env: normal: ENABLE_SOCIAL_AUTH: false GLITCHTIP_DOMAIN: https://example.com - CELERY_WORKER_CONCURRENCY: "2" # Remove to set to number of cpus + CELERY_WORKER_AUTOSCALE: "1,3" + CELERY_WORKER_MAX_TASKS_PER_CHILD: "10000" secret: SECRET_KEY: # Required # DATABASE_URL: Specify if using external postgres (not managed by this chart) # REDIS_URL: Specify if using external redis (not managed by this chart) -preInstall: +migrationJob: enabled: true + command: ["bin/run-migrate.sh"] activeDeadlineSeconds: 900 web: @@ -38,7 +40,7 @@ web: memory: 512Mi requests: cpu: 100m - memory: 128Mi + memory: 256Mi nodeSelector: {} tolerations: [] podAnnotations: {} @@ -57,7 +59,7 @@ web: livenessProbe: failureThreshold: 5 initialDelaySeconds: 5 - timeoutSeconds: 2 + timeoutSeconds: 3 readinessProbe: failureThreshold: 10 initialDelaySeconds: 5 @@ -88,16 +90,25 @@ worker: autoscaling: enabled: false minReplicas: 1 - maxReplicas: 20 - targetCPU: 90 - # targetMemory: 80 + maxReplicas: 10 + targetCPU: 100 + # targetMemory: 100 + livenessProbe: + initialDelaySeconds: 10 + periodSeconds: 60 + timeoutSeconds: 30 + exec: + command: + - "bash" + - "-c" + - "celery -A glitchtip inspect ping -d celery@$HOSTNAME | grep -q OK" resources: limits: cpu: 900m memory: 768Mi requests: cpu: 100m - memory: 128Mi + memory: 350Mi nodeSelector: {} tolerations: [] podAnnotations: {} @@ -107,11 +118,11 @@ beat: enabled: true resources: limits: - cpu: 100m - memory: 120Mi + cpu: 200m + memory: 150Mi requests: cpu: 1m - memory: 90Mi + memory: 130Mi nodeSelector: {} tolerations: [] podAnnotations: {} @@ -119,6 +130,10 @@ beat: flower: enabled: false + image: + repository: mher/flower + tag: latest + pullPolicy: IfNotPresent resources: limits: cpu: 500m @@ -156,7 +171,7 @@ serviceAccount: # If not set and create is true, a name is generated using the fullname template name: - +# For configuration options, see https://artifacthub.io/packages/helm/bitnami/redis redis: enabled: true architecture: standalone @@ -167,7 +182,8 @@ redis: enabled: false # Default to disabled, use a managed database service. But can be enabled here. +# For configuration options, see https://artifacthub.io/packages/helm/bitnami/postgresql postgresql: enabled: false - #auth: - # password: # Must be set + # auth: + # postgresPassword: # Must be set