mirror of
https://github.com/lukaszraczylo/helm-charts.git
synced 2026-10-18 06:27:38 +00:00
Release gohoarder 0.1.148
This commit is contained in:
@@ -2,8 +2,8 @@ apiVersion: v2
|
|||||||
name: gohoarder
|
name: gohoarder
|
||||||
description: A universal package cache proxy supporting npm, PyPI, and Go modules with security scanning
|
description: A universal package cache proxy supporting npm, PyPI, and Go modules with security scanning
|
||||||
type: application
|
type: application
|
||||||
version: 0.1.147
|
version: 0.1.148
|
||||||
appVersion: "0.1.147"
|
appVersion: "0.1.148"
|
||||||
keywords:
|
keywords:
|
||||||
- package-manager
|
- package-manager
|
||||||
- cache
|
- cache
|
||||||
|
|||||||
@@ -0,0 +1,129 @@
|
|||||||
|
{{- if and .Values.ingress.enabled (eq .Values.ingress.className "traefik") -}}
|
||||||
|
---
|
||||||
|
# Traefik IngressRoute for package registry paths
|
||||||
|
# This handles package downloads including scoped packages with encoded slashes
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: {{ include "gohoarder.fullname" . }}-packages
|
||||||
|
labels:
|
||||||
|
{{- include "gohoarder.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- websecure
|
||||||
|
routes:
|
||||||
|
# Package registry routes with high priority
|
||||||
|
# PathPrefix matching to avoid Go's encoded slash rejection in regex
|
||||||
|
- match: Host(`{{ .Values.ingress.host | default (printf "%s.%s" "gohoarder" .Values.global.domain) }}`) && PathPrefix(`/npm/`)
|
||||||
|
kind: Rule
|
||||||
|
priority: 100
|
||||||
|
services:
|
||||||
|
- name: {{ include "gohoarder.fullname" . }}-frontend
|
||||||
|
port: {{ .Values.frontend.service.port }}
|
||||||
|
middlewares:
|
||||||
|
- name: {{ include "gohoarder.fullname" . }}-strip-encoded-slash
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
{{- if .Values.ingress.traefik }}
|
||||||
|
{{- if .Values.ingress.traefik.middlewares }}
|
||||||
|
{{- range .Values.ingress.traefik.middlewares }}
|
||||||
|
- name: {{ . }}
|
||||||
|
namespace: traefik
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
- match: Host(`{{ .Values.ingress.host | default (printf "%s.%s" "gohoarder" .Values.global.domain) }}`) && PathPrefix(`/pypi/`)
|
||||||
|
kind: Rule
|
||||||
|
priority: 100
|
||||||
|
services:
|
||||||
|
- name: {{ include "gohoarder.fullname" . }}-frontend
|
||||||
|
port: {{ .Values.frontend.service.port }}
|
||||||
|
middlewares:
|
||||||
|
- name: {{ include "gohoarder.fullname" . }}-strip-encoded-slash
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
{{- if .Values.ingress.traefik }}
|
||||||
|
{{- if .Values.ingress.traefik.middlewares }}
|
||||||
|
{{- range .Values.ingress.traefik.middlewares }}
|
||||||
|
- name: {{ . }}
|
||||||
|
namespace: traefik
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
- match: Host(`{{ .Values.ingress.host | default (printf "%s.%s" "gohoarder" .Values.global.domain) }}`) && PathPrefix(`/go/`)
|
||||||
|
kind: Rule
|
||||||
|
priority: 100
|
||||||
|
services:
|
||||||
|
- name: {{ include "gohoarder.fullname" . }}-frontend
|
||||||
|
port: {{ .Values.frontend.service.port }}
|
||||||
|
middlewares:
|
||||||
|
- name: {{ include "gohoarder.fullname" . }}-strip-encoded-slash
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
{{- if .Values.ingress.traefik }}
|
||||||
|
{{- if .Values.ingress.traefik.middlewares }}
|
||||||
|
{{- range .Values.ingress.traefik.middlewares }}
|
||||||
|
- name: {{ . }}
|
||||||
|
namespace: traefik
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
# All other routes (frontend, API, etc.) with lower priority
|
||||||
|
- match: Host(`{{ .Values.ingress.host | default (printf "%s.%s" "gohoarder" .Values.global.domain) }}`)
|
||||||
|
kind: Rule
|
||||||
|
priority: 50
|
||||||
|
services:
|
||||||
|
- name: {{ include "gohoarder.fullname" . }}-frontend
|
||||||
|
port: {{ .Values.frontend.service.port }}
|
||||||
|
{{- if .Values.ingress.traefik }}
|
||||||
|
{{- if .Values.ingress.traefik.middlewares }}
|
||||||
|
middlewares:
|
||||||
|
{{- range .Values.ingress.traefik.middlewares }}
|
||||||
|
- name: {{ . }}
|
||||||
|
namespace: traefik
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- if .Values.ingress.tls.enabled }}
|
||||||
|
tls:
|
||||||
|
secretName: {{ .Values.ingress.tls.secretName }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
---
|
||||||
|
# Middleware to handle encoded slashes in package paths
|
||||||
|
# Note: This middleware attempts to work around Traefik's encoded slash limitation
|
||||||
|
# but may not fully resolve the issue due to Go stdlib constraints
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: Middleware
|
||||||
|
metadata:
|
||||||
|
name: {{ include "gohoarder.fullname" . }}-strip-encoded-slash
|
||||||
|
labels:
|
||||||
|
{{- include "gohoarder.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
# Use headers to pass original path information
|
||||||
|
# The backend can reconstruct the original URL from these headers
|
||||||
|
headers:
|
||||||
|
customRequestHeaders:
|
||||||
|
X-Original-URI: "{{ .Request.URL.Path }}"
|
||||||
|
X-Forwarded-Path: "{{ .Request.URL.Path }}"
|
||||||
|
|
||||||
|
---
|
||||||
|
# ServersTransport configuration for backend communication
|
||||||
|
# This ensures the backend connection doesn't have additional restrictions
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: ServersTransport
|
||||||
|
metadata:
|
||||||
|
name: {{ include "gohoarder.fullname" . }}-transport
|
||||||
|
labels:
|
||||||
|
{{- include "gohoarder.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
insecureSkipVerify: false
|
||||||
|
{{- if .Values.ingress.traefik }}
|
||||||
|
{{- if .Values.ingress.traefik.transport }}
|
||||||
|
{{- with .Values.ingress.traefik.transport }}
|
||||||
|
serverName: {{ .serverName | default "" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -51,17 +51,17 @@ image:
|
|||||||
server:
|
server:
|
||||||
repository: ghcr.io/lukaszraczylo/gohoarder-server
|
repository: ghcr.io/lukaszraczylo/gohoarder-server
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
tag: "0.1.147"
|
tag: "0.1.148"
|
||||||
|
|
||||||
frontend:
|
frontend:
|
||||||
repository: ghcr.io/lukaszraczylo/gohoarder-frontend
|
repository: ghcr.io/lukaszraczylo/gohoarder-frontend
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
tag: "0.1.147"
|
tag: "0.1.148"
|
||||||
|
|
||||||
scanner:
|
scanner:
|
||||||
repository: ghcr.io/lukaszraczylo/gohoarder-scanner
|
repository: ghcr.io/lukaszraczylo/gohoarder-scanner
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
tag: "0.1.147"
|
tag: "0.1.148"
|
||||||
|
|
||||||
# Service Account
|
# Service Account
|
||||||
serviceAccount:
|
serviceAccount:
|
||||||
@@ -358,7 +358,7 @@ migration:
|
|||||||
image:
|
image:
|
||||||
repository: ghcr.io/lukaszraczylo/gohoarder-migrate
|
repository: ghcr.io/lukaszraczylo/gohoarder-migrate
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
tag: "0.1.147"
|
tag: "0.1.148"
|
||||||
|
|
||||||
# Migration settings
|
# Migration settings
|
||||||
logLevel: "info" # debug, info, warn, error
|
logLevel: "info" # debug, info, warn, error
|
||||||
@@ -514,6 +514,16 @@ ingress:
|
|||||||
enabled: false
|
enabled: false
|
||||||
secretName: "gohoarder-tls"
|
secretName: "gohoarder-tls"
|
||||||
|
|
||||||
|
# Traefik-specific configuration (when className: "traefik")
|
||||||
|
# Used by IngressRoute template for advanced routing
|
||||||
|
traefik:
|
||||||
|
# Middleware references (from traefik namespace)
|
||||||
|
# Example: ["default-chain", "rate-limit"]
|
||||||
|
middlewares: []
|
||||||
|
# ServersTransport configuration
|
||||||
|
transport:
|
||||||
|
serverName: ""
|
||||||
|
|
||||||
# Autoscaling configuration
|
# Autoscaling configuration
|
||||||
autoscaling:
|
autoscaling:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|||||||
Binary file not shown.
+27
-1
@@ -1,6 +1,32 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
entries:
|
entries:
|
||||||
gohoarder:
|
gohoarder:
|
||||||
|
- apiVersion: v2
|
||||||
|
appVersion: 0.1.148
|
||||||
|
created: "2026-07-10T08:54:28.084273377Z"
|
||||||
|
description: A universal package cache proxy supporting npm, PyPI, and Go modules
|
||||||
|
with security scanning
|
||||||
|
digest: 1368b6557f75474bc13b1ef9777fab7f04f1cf98ef31e4594183cc5f0241dc5a
|
||||||
|
home: https://github.com/lukaszraczylo/gohoarder
|
||||||
|
keywords:
|
||||||
|
- package-manager
|
||||||
|
- cache
|
||||||
|
- proxy
|
||||||
|
- npm
|
||||||
|
- pypi
|
||||||
|
- go-modules
|
||||||
|
- security
|
||||||
|
- vulnerability-scanning
|
||||||
|
maintainers:
|
||||||
|
- email: [email protected]
|
||||||
|
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.148/gohoarder-0.1.148.tgz
|
||||||
|
version: 0.1.148
|
||||||
- apiVersion: v2
|
- apiVersion: v2
|
||||||
appVersion: 0.1.147
|
appVersion: 0.1.147
|
||||||
created: "2026-07-09T04:40:57.513151076Z"
|
created: "2026-07-09T04:40:57.513151076Z"
|
||||||
@@ -5268,4 +5294,4 @@ entries:
|
|||||||
urls:
|
urls:
|
||||||
- https://github.com/lukaszraczylo/helm-charts/releases/download/kubemirror-0.2.8/kubemirror-0.2.8.tgz
|
- https://github.com/lukaszraczylo/helm-charts/releases/download/kubemirror-0.2.8/kubemirror-0.2.8.tgz
|
||||||
version: 0.2.8
|
version: 0.2.8
|
||||||
generated: "2026-07-09T04:40:57.511571176Z"
|
generated: "2026-07-10T08:54:28.083002086Z"
|
||||||
|
|||||||
Reference in New Issue
Block a user