From a6e7573be4c4ea05f2418c3031c61666d92b5e14 Mon Sep 17 00:00:00 2001 From: wbsong111 Date: Thu, 6 Aug 2026 10:13:11 +0900 Subject: [PATCH] =?UTF-8?q?gitea=2012.6.0=20=EC=97=90=20=EC=B9=B4=ED=83=88?= =?UTF-8?q?=EB=A1=9C=EA=B7=B8=20=EA=B4=80=EB=A1=80=20=ED=8C=8C=EC=9D=BC=20?= =?UTF-8?q?=EC=8A=B9=EA=B3=84=20=EB=88=84=EB=9D=BD=EB=B6=84=20=EB=B3=B5?= =?UTF-8?q?=EA=B5=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 12.4.0 → 12.6.0 승계 시 BUILD-README/CUSTOM-README/custom-values 3개만 옮기고 카탈로그 관례 파일 5개를 빠뜨렸다. 12.4.0 에서 그대로 승계한다: - argo-values.yaml - dip-questions.yaml - dip-resources-quotas.yaml - dip-values.yaml - dip-volumes-quotas.yaml dip-*.yaml 은 카탈로그 전반의 관례다(25개 이상 차트, 총 100개 파일). 갱신 대상 7개 차트 중 이 파일들을 가진 것은 gitea 뿐이라 다른 차트는 영향이 없다. 내용은 버전 의존적이지 않아(리소스/볼륨 티어, questions, ApplicationSet 용 values) 수정 없이 그대로 옮겼다. 검증: 5개 파일 모두 12.4.0 과 12.6.0 에서 helm 렌더 결과가 동일하다. dip-values.yaml (`{{ .Name }}`·`{{ .Domain }}` 미치환)과 argo-values.yaml(postgresql/postgresql-ha 동시 활성)은 양쪽 버전에서 똑같이 렌더 실패하는데, ApplicationSet 계층이 먼저 치환·조정하는 것을 전제로 한 파일이라 원래 helm 단독 렌더 대상이 아니다 — 이번 승계로 생긴 회귀가 아님을 12.4.0 대조로 확인했다. 차트 12개 렌더 재검증 12/12 통과. Co-Authored-By: Claude Opus 5 (1M context) --- manifests/helm/gitea/12.6.0/argo-values.yaml | 101 +++++++++++++++++ .../helm/gitea/12.6.0/dip-questions.yaml | 10 ++ .../gitea/12.6.0/dip-resources-quotas.yaml | 53 +++++++++ manifests/helm/gitea/12.6.0/dip-values.yaml | 106 ++++++++++++++++++ .../helm/gitea/12.6.0/dip-volumes-quotas.yaml | 29 +++++ 5 files changed, 299 insertions(+) create mode 100644 manifests/helm/gitea/12.6.0/argo-values.yaml create mode 100644 manifests/helm/gitea/12.6.0/dip-questions.yaml create mode 100644 manifests/helm/gitea/12.6.0/dip-resources-quotas.yaml create mode 100644 manifests/helm/gitea/12.6.0/dip-values.yaml create mode 100644 manifests/helm/gitea/12.6.0/dip-volumes-quotas.yaml diff --git a/manifests/helm/gitea/12.6.0/argo-values.yaml b/manifests/helm/gitea/12.6.0/argo-values.yaml new file mode 100644 index 0000000..e96f4ab --- /dev/null +++ b/manifests/helm/gitea/12.6.0/argo-values.yaml @@ -0,0 +1,101 @@ +global: + imageRegistry: "" + +ingress: + enabled: true + annotations: + kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/proxy-body-size: 200m + cert-manager.io/cluster-issuer: "selfsigned-issuer" + cert-manager.io/duration: 8760h + cert-manager.io/renew-before: 720h + hosts: + - host: gitea.example.org + paths: + - path: / + pathType: Prefix + tls: + - hosts: + host: gitea.example.org + secretName: gitea-tls-secret + +# 사설 인증서를 사용 시 아래 내용 추가 +# keycloak의 인증서를 마운트한다. +extraVolumes: + - name: keycloak-tls + secret: + secretName: platform + +extraContainerVolumeMounts: + - name: keycloak-tls + mountPath: /etc/ssl/certs/ca.crt + subPath: ca.crt + +lifecycleHooks: + postStart: + exec: + command: + - "/bin/sh" + - "-c" + - | + /bin/bash <<'EOF' > /tmp/post_start.log + su git + OAUTH_NAME='keycloak' + AUTH_ID=$(gitea admin auth list --vertical-bars | grep -E "\|${OAUTH_NAME}\s+\|" | grep -iE '\|OAuth2\s+\|' | awk -F " " "{print \$1}") + KEYCLOAK_URL="https://keycloak.example.org" + KEYCLOAK_CLIENT_ID="gitea" + KEYCLOAK_SECRET='I5TeB3JV82PJjrqFdzsVdhZfCJhcZwNT' + REALM=paasxpert + if [[ -z "${AUTH_ID}" ]]; then + echo "No oauth configuration found with name '${OAUTH_NAME}'. Installing it now..." + gitea admin auth add-oauth --auto-discover-url "${KEYCLOAK_URL}/auth/realms/${REALM}/.well-known/openid-configuration" --key "${KEYCLOAK_CLIENT_ID}" --name "keycloak" --provider "openidConnect" --secret "${KEYCLOAK_SECRET}" + echo '...installed.' + else + echo "Existing oauth configuration with name '${OAUTH_NAME}': '${AUTH_ID}'. Running update to sync settings..." + gitea admin auth update-oauth --id "${AUTH_ID}" --auto-discover-url "${KEYCLOAK_URL}/auth/realms/${REALM}/.well-known/openid-configuration" --key "${KEYCLOAK_CLIENT_ID}" --name "keycloak" --provider "openidConnect" --secret "${KEYCLOAK_SECRET}" + echo '...sync settings done.' + fi + EOF + +## pod 설정 +replicaCount: 1 + +resources: + requests: + cpu: 100m + memory: 300Mi + limits: + cpu: 300m + memory: 500Mi + +persistence: + enabled: true + size: 10Gi + storageClass: "longhorn" + +## 같은 네임스페이스에 postgresql 배포 가정 +gitea: + admin: + username: sudouser + password: password + email: "sudouser@cro.com" + config: + APP_NAME: paasup git + RUN_MODE: prod + server: + ROOT_URL: https://gitea.example.org + service: + DEFAULT_ALLOW_CREATE_ORGANIZATION: true + repository: + DEFAULT_BRANCH: master + +postgresql: + enabled: true + global: + postgresql: + postgresqlDatabase: gitea + postgresqlUsername: gitea + postgresqlPassword: gitea + servicePort: 5432 + persistence: + size: 5Gi \ No newline at end of file diff --git a/manifests/helm/gitea/12.6.0/dip-questions.yaml b/manifests/helm/gitea/12.6.0/dip-questions.yaml new file mode 100644 index 0000000..51497b4 --- /dev/null +++ b/manifests/helm/gitea/12.6.0/dip-questions.yaml @@ -0,0 +1,10 @@ +questions: +- variable: infisical.username + label: username + type: hidden + default: "sudouser" +- variable: infisical.password + label: Password + type: password + required: true + default: "" \ No newline at end of file diff --git a/manifests/helm/gitea/12.6.0/dip-resources-quotas.yaml b/manifests/helm/gitea/12.6.0/dip-resources-quotas.yaml new file mode 100644 index 0000000..6639956 --- /dev/null +++ b/manifests/helm/gitea/12.6.0/dip-resources-quotas.yaml @@ -0,0 +1,53 @@ +small: + resources: + requests: + cpu: 500m + memory: 1Gi + limits: + cpu: 1000m + memory: 2Gi + + postgresql: + resources: + requests: + cpu: 250m + memory: 512Mi + limits: + cpu: 500m + memory: 1Gi + +medium: + resources: + requests: + cpu: 1000m + memory: 2Gi + limits: + cpu: 2000m + memory: 4Gi + + postgresql: + resources: + requests: + cpu: 500m + memory: 1Gi + limits: + cpu: 1000m + memory: 2Gi + +large: + resources: + requests: + cpu: 2000m + memory: 4Gi + limits: + cpu: 4000m + memory: 8Gi + + postgresql: + resources: + requests: + cpu: 1000m + memory: 2Gi + limits: + cpu: 2000m + memory: 4Gi \ No newline at end of file diff --git a/manifests/helm/gitea/12.6.0/dip-values.yaml b/manifests/helm/gitea/12.6.0/dip-values.yaml new file mode 100644 index 0000000..3b67617 --- /dev/null +++ b/manifests/helm/gitea/12.6.0/dip-values.yaml @@ -0,0 +1,106 @@ +global: + imageRegistry: "" + +ingress: + enabled: true + className: apisix + annotations: + k8s.apisix.apache.org/plugin-config-name: https-redirect + cert-manager.io/cluster-issuer: "root-ca-issuer" + cert-manager.io/duration: 8760h + cert-manager.io/renew-before: 720h + hosts: + - host: "{{ .Name }}.{{ .Domain }}" + paths: + - path: / + pathType: Prefix + tls: + - hosts: + host: "{{ .Name }}.{{ .Domain }}" + secretName: "{{ .Name }}-tls-secret" + +extraVolumes: + - name: keycloak-tls + secret: + secretName: keycloak-tls + + +extraContainerVolumeMounts: + - name: keycloak-tls + mountPath: /etc/ssl/certs/ca.crt + subPath: ca.crt + +extraInitVolumeMounts: + - name: keycloak-tls + mountPath: /etc/ssl/certs/ca.crt + subPath: ca.crt + +replicaCount: 1 + +resources: + requests: + cpu: 100m + memory: 300Mi + limits: + cpu: 300m + memory: 500Mi + +persistence: + enabled: true + size: 10Gi + storageClass: "longhorn" + +gitea: + admin: + username: sudouser + password: "" + email: "gitea@local.domain" + existingSecret: "$INFISICAL_SECRET" + config: + APP_NAME: paasup git + RUN_MODE: prod + server: + ROOT_URL: "https://{{ .Name }}.{{ .Domain }}" + database: + DB_TYPE: postgres + HOST: "{{ .Name }}-postgresql:5432" + NAME: gitea + USER: gitea + PASSWD: gitea + CHARSET: utf8 + SSL_MODE: disable + session: + PROVIDER: postgres + PROVIDER_CONFIG: user=gitea password=gitea host={{ .Name }}-postgresql port=5432 dbname=gitea sslmode=disable + COOKIE_NAME: i_hate_gitea + service: + DEFAULT_ALLOW_CREATE_ORGANIZATION: true + repository: + DEFAULT_BRANCH: master + oauth: + - name: keycloak + provider: "openidConnect" + key: "$KEYCLOAK_CLIENT_ID" + secret: "$KEYCLOAK_CLIENT_SECRET" + autoDiscoverUrl: "$KEYCLOAK_URL/realms/$KEYCLOAK_REALM/.well-known/openid-configuration" + +postgresql-ha: + enabled: false +valkey: + enabled: false +valkey-cluster: + enabled: false +postgresql: + enabled: true + global: + postgresql: + auth: + password: gitea + database: gitea + username: gitea + service: + ports: + postgresql: 5432 + primary: + persistence: + size: 10Gi \ No newline at end of file diff --git a/manifests/helm/gitea/12.6.0/dip-volumes-quotas.yaml b/manifests/helm/gitea/12.6.0/dip-volumes-quotas.yaml new file mode 100644 index 0000000..f7d73e2 --- /dev/null +++ b/manifests/helm/gitea/12.6.0/dip-volumes-quotas.yaml @@ -0,0 +1,29 @@ +small: + persistence: + size: 10Gi + storageClass: "" + + postgresql: + primary: + persistence: + size: 5Gi + +medium: + persistence: + size: 100Gi + storageClass: "" + + postgresql: + primary: + persistence: + size: 20Gi + +large: + persistence: + size: 500Gi + storageClass: "" + + postgresql: + primary: + persistence: + size: 100Gi \ No newline at end of file