From bc22c2506edb4d6de4628c3b6aacfcc884890e5d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 4 Jan 2026 02:25:34 +0000 Subject: [PATCH] Release gohoarder 0.1.43 --- charts/gohoarder/Chart.yaml | 4 +- .../templates/deployment-frontend.yaml | 9 +- charts/gohoarder/templates/ingress.yaml | 98 ++---------------- charts/gohoarder/values.yaml | 27 ++--- charts/packages/gohoarder-0.1.43.tgz | Bin 0 -> 17919 bytes index.yaml | 29 +++++- 6 files changed, 54 insertions(+), 113 deletions(-) create mode 100644 charts/packages/gohoarder-0.1.43.tgz diff --git a/charts/gohoarder/Chart.yaml b/charts/gohoarder/Chart.yaml index 01a3d09..b870a8a 100644 --- a/charts/gohoarder/Chart.yaml +++ b/charts/gohoarder/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v2 name: gohoarder description: A universal package cache proxy supporting npm, PyPI, and Go modules with security scanning type: application -version: 0.1.28 -appVersion: "0.1.28" +version: 0.1.43 +appVersion: "0.1.43" keywords: - package-manager - cache diff --git a/charts/gohoarder/templates/deployment-frontend.yaml b/charts/gohoarder/templates/deployment-frontend.yaml index 97dbe60..f8bc47b 100644 --- a/charts/gohoarder/templates/deployment-frontend.yaml +++ b/charts/gohoarder/templates/deployment-frontend.yaml @@ -67,11 +67,18 @@ spec: protocol: TCP env: - name: API_BASE_URL - value: {{ .Values.frontend.backendUrl | default (printf "http://%s-server:%d" (include "gohoarder.fullname" .) (.Values.server.service.port | int)) | quote }} + value: {{ .Values.frontend.backendUrl | default "/api" | quote }} - name: APP_VERSION value: {{ .Chart.AppVersion | quote }} - name: APP_NAME value: "GoHoarder" + # Backend proxy configuration (frontend now includes reverse proxy) + - name: BACKEND_HOST + value: {{ include "gohoarder.fullname" . }}-server + - name: BACKEND_PORT + value: {{ .Values.server.service.port | quote }} + - name: SERVER_NAME + value: {{ .Values.frontend.serverName | default "_" | quote }} {{- with .Values.frontend.env }} {{- toYaml . | nindent 8 }} {{- end }} diff --git a/charts/gohoarder/templates/ingress.yaml b/charts/gohoarder/templates/ingress.yaml index cd4f08c..3423528 100644 --- a/charts/gohoarder/templates/ingress.yaml +++ b/charts/gohoarder/templates/ingress.yaml @@ -1,11 +1,10 @@ {{- if .Values.ingress.enabled -}} -{{- if .Values.ingress.frontend.enabled -}} apiVersion: networking.k8s.io/v1 kind: Ingress metadata: - name: {{ include "gohoarder.fullname" . }}-frontend + name: {{ include "gohoarder.fullname" . }} labels: - {{- include "gohoarder.frontend.labels" . | nindent 4 }} + {{- include "gohoarder.labels" . | nindent 4 }} {{- with .Values.ingress.annotations }} annotations: {{- toYaml . | nindent 4 }} @@ -14,65 +13,17 @@ spec: {{- if .Values.ingress.className }} ingressClassName: {{ .Values.ingress.className }} {{- end }} - {{- if .Values.ingress.frontend.tls.enabled }} + {{- if .Values.ingress.tls.enabled }} tls: - hosts: - - {{ .Values.ingress.frontend.host | default (printf "%s.%s" "gohoarder" .Values.global.domain) | quote }} - secretName: {{ .Values.ingress.frontend.tls.secretName }} + - {{ .Values.ingress.host | default (printf "%s.%s" "gohoarder" .Values.global.domain) | quote }} + secretName: {{ .Values.ingress.tls.secretName }} {{- end }} rules: - - host: {{ .Values.ingress.frontend.host | default (printf "%s.%s" "gohoarder" .Values.global.domain) | quote }} + - host: {{ .Values.ingress.host | default (printf "%s.%s" "gohoarder" .Values.global.domain) | quote }} http: paths: - - path: /npm - pathType: Prefix - backend: - service: - name: {{ include "gohoarder.fullname" . }}-server - port: - number: {{ .Values.server.service.port }} - - path: /pypi - pathType: Prefix - backend: - service: - name: {{ include "gohoarder.fullname" . }}-server - port: - number: {{ .Values.server.service.port }} - - path: /go - pathType: Prefix - backend: - service: - name: {{ include "gohoarder.fullname" . }}-server - port: - number: {{ .Values.server.service.port }} - - path: /api - pathType: Prefix - backend: - service: - name: {{ include "gohoarder.fullname" . }}-server - port: - number: {{ .Values.server.service.port }} - - path: /ws - pathType: Prefix - backend: - service: - name: {{ include "gohoarder.fullname" . }}-server - port: - number: {{ .Values.server.service.port }} - - path: /health - pathType: Prefix - backend: - service: - name: {{ include "gohoarder.fullname" . }}-server - port: - number: {{ .Values.server.service.port }} - - path: /metrics - pathType: Prefix - backend: - service: - name: {{ include "gohoarder.fullname" . }}-server - port: - number: {{ .Values.server.service.port }} + # Route all traffic to frontend (which now includes reverse proxy to backend) - path: / pathType: Prefix backend: @@ -81,38 +32,3 @@ spec: port: number: {{ .Values.frontend.service.port }} {{- end }} ---- -{{- if .Values.ingress.api.enabled }} -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: {{ include "gohoarder.fullname" . }}-api - labels: - {{- include "gohoarder.server.labels" . | nindent 4 }} - {{- with .Values.ingress.annotations }} - annotations: - {{- toYaml . | nindent 4 }} - {{- end }} -spec: - {{- if .Values.ingress.className }} - ingressClassName: {{ .Values.ingress.className }} - {{- end }} - {{- if .Values.ingress.api.tls.enabled }} - tls: - - hosts: - - {{ .Values.ingress.api.host | default (printf "api.%s.%s" "gohoarder" .Values.global.domain) | quote }} - secretName: {{ .Values.ingress.api.tls.secretName }} - {{- end }} - rules: - - host: {{ .Values.ingress.api.host | default (printf "api.%s.%s" "gohoarder" .Values.global.domain) | quote }} - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: {{ include "gohoarder.fullname" . }}-server - port: - number: {{ .Values.server.service.port }} -{{- end }} -{{- end }} diff --git a/charts/gohoarder/values.yaml b/charts/gohoarder/values.yaml index cb37bf9..69357ad 100644 --- a/charts/gohoarder/values.yaml +++ b/charts/gohoarder/values.yaml @@ -51,17 +51,17 @@ image: server: repository: ghcr.io/lukaszraczylo/gohoarder-server pullPolicy: IfNotPresent - tag: "0.1.28" + tag: "0.1.43" frontend: repository: ghcr.io/lukaszraczylo/gohoarder-frontend pullPolicy: IfNotPresent - tag: "0.1.28" + tag: "0.1.43" scanner: repository: ghcr.io/lukaszraczylo/gohoarder-scanner pullPolicy: IfNotPresent - tag: "0.1.28" + tag: "0.1.43" # Service Account serviceAccount: @@ -358,7 +358,7 @@ migration: image: repository: ghcr.io/lukaszraczylo/gohoarder-migrate pullPolicy: IfNotPresent - tag: "0.1.28" + tag: "0.1.43" # Migration settings logLevel: "info" # debug, info, warn, error @@ -507,21 +507,12 @@ ingress: nginx.ingress.kubernetes.io/proxy-read-timeout: "300" nginx.ingress.kubernetes.io/proxy-send-timeout: "300" - # Ingress for frontend - frontend: - enabled: true - host: "gohoarder.local" - tls: - enabled: false - secretName: "gohoarder-frontend-tls" - - # Ingress for API (if you want separate ingress) - api: + # Single ingress routes all traffic to frontend + # Frontend now includes reverse proxy to backend (merged gateway functionality) + host: "gohoarder.local" + tls: enabled: false - host: "api.gohoarder.local" - tls: - enabled: false - secretName: "gohoarder-api-tls" + secretName: "gohoarder-tls" # Autoscaling configuration autoscaling: diff --git a/charts/packages/gohoarder-0.1.43.tgz b/charts/packages/gohoarder-0.1.43.tgz new file mode 100644 index 0000000000000000000000000000000000000000..82f3f63acb190875596127b3db0a80f7d8f11533 GIT binary patch literal 17919 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 W56`_k|9=1g0RR8@(*Yp>Yykj*$nfR> literal 0 HcmV?d00001 diff --git a/index.yaml b/index.yaml index 7e0af03..60c3553 100644 --- a/index.yaml +++ b/index.yaml @@ -1,6 +1,33 @@ apiVersion: v1 entries: gohoarder: + - apiVersion: v2 + appVersion: 0.1.43 + created: "2026-01-04T02:25:34.31761878Z" + description: A universal package cache proxy supporting npm, PyPI, and Go modules + with security scanning + digest: c6a527a88e98ce0e59a25ab24fbab57e33930bc63232d30d26850b84330e2786 + home: https://github.com/lukaszraczylo/gohoarder + icon: https://raw.githubusercontent.com/lukaszraczylo/gohoarder/main/docs/logo.png + keywords: + - package-manager + - cache + - proxy + - npm + - pypi + - go-modules + - security + - vulnerability-scanning + maintainers: + - email: lukasz@raczylo.com + name: Lukasz Raczylo + name: gohoarder + sources: + - https://github.com/lukaszraczylo/gohoarder + type: application + urls: + - https://github.com/lukaszraczylo/helm-charts/releases/download/gohoarder-0.1.43/gohoarder-0.1.43.tgz + version: 0.1.43 - apiVersion: v2 appVersion: 0.1.28 created: "2026-01-04T00:02:47.20976788Z" @@ -1867,4 +1894,4 @@ entries: urls: - https://github.com/lukaszraczylo/helm-charts/releases/download/kubemirror-0.2.8/kubemirror-0.2.8.tgz version: 0.2.8 -generated: "2026-01-04T00:02:47.208203254Z" +generated: "2026-01-04T02:25:34.316038179Z"