feat: add initial chart files

This commit is contained in:
barbirict committed 2026-02-15 13:39:00 +01:00
commit c30fb61d6f
11 files changed
+276

No files matched your search

+4
View File
@@ -0,0 +1,4 @@
helm/charts/
helm/Chart.lock
/.cr-release-packages/
.idea/
+12
View File
@@ -0,0 +1,12 @@
plugins:
- "@semantic-release/commit-analyzer"
- "@semantic-release/release-notes-generator"
- "@semantic-release/changelog"
- ["@semantic-release/exec", {
"prepareCmd": "sed -i 's/^version:.*/version: \"${nextRelease.version}\"/' helm/Chart.yaml && sed -i 's/^appVersion:.*/appVersion: \"${nextRelease.version}\"/' helm/Chart.yaml"
}]
- ["@semantic-release/git", {
"assets": ["CHANGELOG.md", "helm/Chart.yaml"],
"message": "chore(release): ${nextRelease.version} [skip ci]"
}]
- "@forge-for-gitea/semantic-release-gitea"
+59
View File
@@ -0,0 +1,59 @@
when:
- event: push
branch: [main]
path:
include:
- 'helm/**'
- '.woodpecker/**'
- event: tag
ref: "refs/tags/v*"
steps:
- name: release
image: node:24-alpine
environment:
GITEA_TOKEN:
from_secret: gitea_token
GITEA_USERNAME:
from_secret: gitea_username
GITEA_URL: ${CI_FORGE_URL}
commands:
- apk add --no-cache git
- git config --global credential.helper store
- echo "https://$${GITEA_USERNAME}:$${GITEA_TOKEN}@git.barbiric.io" > ~/.git-credentials
- npm install -g semantic-release @semantic-release/commit-analyzer @semantic-release/release-notes-generator @semantic-release/changelog @semantic-release/git @semantic-release/exec @forge-for-gitea/semantic-release-gitea
- npx semantic-release
when:
event: push
branch: main
- name: package-charts
image: quay.io/helmpack/chart-testing:v3.11.0
commands:
- mkdir -p .cr-release-packages
- |
helm package helm -d .cr-release-packages
when:
event: tag
- name: publish-charts
image: quay.io/helmpack/chart-testing:v3.11.0
environment:
GITEA_USERNAME:
from_secret: gitea_username
GITEA_TOKEN:
from_secret: gitea_token
commands:
- |
for pkg in .cr-release-packages/*.tgz; do
if [ -f "$pkg" ]; then
echo "Publishing $pkg to Gitea..."
curl -s -f \
-u "$${GITEA_USERNAME}:$${GITEA_TOKEN}" \
-X POST \
--upload-file "$pkg" \
"${CI_FORGE_URL}/api/packages/${CI_REPO_OWNER}/helm/api/charts"
fi
done
when:
event: tag
+22
View File
@@ -0,0 +1,22 @@
when:
- event: push
branch: main
steps:
- name: release
image: node:20-alpine
environment:
GITEA_TOKEN:
from_secret: gitea_token
GITEA_USERNAME:
from_secret: gitea_username
GITEA_URL: ${CI_FORGE_URL}
commands:
- apk add --no-cache git
- git config --global credential.helper store
- echo "https://$${GITEA_USERNAME}:$${GITEA_TOKEN}@git.barbiric.io" > ~/.git-credentials
- npm install -g semantic-release @semantic-release/commit-analyzer @semantic-release/release-notes-generator @semantic-release/changelog @semantic-release/git @forge-for-gitea/semantic-release-gitea
- npx semantic-release
when:
event: push
branch: main
+21
View File
@@ -0,0 +1,21 @@
when:
- event: cron
cron: "renovate"
- event: manual
steps:
- name: renovate
image: renovate/renovate:43.15
environment:
RENOVATE_PLATFORM: gitea
RENOVATE_ENDPOINT: ${CI_FORGE_URL}
RENOVATE_REPOSITORIES: ${CI_REPO}
RENOVATE_TOKEN:
from_secret: RENOVATE_CI_KEY
RENOVATE_ONBOARDING: false
RENOVATE_GITHUB_COM_TOKEN:
from_secret: RENOVATE_GH_KEY
LOG_LEVEL: info
commands:
- renovate ${CI_REPO}
+42
View File
@@ -0,0 +1,42 @@
# A helm chart for opencloud-oidc-webfinger-proxy
## Status
This is a very basic chart that deploys [opencloud-oidc-webfinger-proxy](https://git.barbiric.io/opencloud-oidc-webfinger-proxy).
## Development
Use mise to install devdeps.
## Parameters
### Common Configuration
| Name | Description | Value |
| --------------------------------------------------------------------- | ---------------------------------------- | ---------------------------------------------------------- |
| `common.controllers.main.containers.app.image.repository` | Image repository | `git.barbiric.io/barbirict/opencloud-oidc-webfinger-proxy` |
| `common.controllers.main.containers.app.image.tag` | Image tag (defaults to Chart.AppVersion) | `{{ .Chart.AppVersion }}` |
| `common.controllers.main.containers.app.image.pullPolicy` | Image pull policy | `IfNotPresent` |
| `common.controllers.main.containers.app.env[0].name` | Environment variable name | `PORT` |
| `common.controllers.main.containers.app.env[0].value` | Application listen port | `9210` |
| `common.controllers.main.containers.app.envFrom[0].configMapRef.name` | ConfigMap name for env vars | `opencloud-oidc-webfinger-proxy-config` |
| `common.controllers.main.containers.app.probes.liveness.enabled` | Enable liveness probe | `true` |
| `common.controllers.main.containers.app.probes.readiness.enabled` | Enable readiness probe | `true` |
| `common.controllers.main.containers.app.resources.requests.cpu` | CPU request | `100m` |
| `common.controllers.main.containers.app.resources.requests.memory` | Memory request | `64Mi` |
| `common.controllers.main.containers.app.resources.limits.cpu` | CPU limit | `250m` |
| `common.controllers.main.containers.app.resources.limits.memory` | Memory limit | `128Mi` |
### Service Configuration
| Name | Description | Value |
| ------------------------------------ | ---------------------------- | ------ |
| `common.service.app.controller` | Controller to associate with | `main` |
| `common.service.app.ports.http.port` | HTTP service port | `9210` |
### ConfigMap Configuration
| Name | Description | Value |
| ------------------------------------------------ | ------------------------------------------- | ---------------------------------------- |
| `common.configMaps.config.data.UPSTREAM_URL` | Upstream URL to proxy requests to | `https://cloud.domain.com` |
| `common.configMaps.config.data.HREF_PATTERN` | Pattern to match in href attributes | `https://auth.domain.com/application/o/` |
| `common.configMaps.config.data.HREF_REPLACEMENT` | Replacement value for matched href patterns | `https://auth.domain.com/application/o/` |
| `common.configMaps.config.data.DEFAULT_SUFFIX` | Default suffix appended to requests | `opencloud` |
+10
View File
@@ -0,0 +1,10 @@
apiVersion: v2
name: opencloud-oidc-webfinger-proxy
description: OpenCloud OIDC WebFinger Proxy
version: 1.0.0
appVersion: "1.1.0"
type: application
dependencies:
- name: common
version: 4.5.0
repository: https://bjw-s-labs.github.io/helm-charts/
+1
View File
@@ -0,0 +1 @@
{{ include "bjw-s.common.loader.all" . }}
+64
View File
@@ -0,0 +1,64 @@
## @section Common Configuration
common:
controllers:
main:
containers:
app:
image:
## @param common.controllers.main.containers.app.image.repository Image repository
repository: git.barbiric.io/barbirict/opencloud-oidc-webfinger-proxy
## @param common.controllers.main.containers.app.image.tag Image tag (defaults to Chart.AppVersion)
tag: "{{ .Chart.AppVersion }}"
## @param common.controllers.main.containers.app.image.pullPolicy Image pull policy
pullPolicy: IfNotPresent
## @param common.controllers.main.containers.app.env[0].name Environment variable name
## @param common.controllers.main.containers.app.env[0].value Application listen port
env:
- name: PORT
value: 9210
envFrom:
- configMapRef:
## @param common.controllers.main.containers.app.envFrom[0].configMapRef.name ConfigMap name for env vars
name: opencloud-oidc-webfinger-proxy-config
probes:
liveness:
## @param common.controllers.main.containers.app.probes.liveness.enabled Enable liveness probe
enabled: true
readiness:
## @param common.controllers.main.containers.app.probes.readiness.enabled Enable readiness probe
enabled: true
resources:
requests:
## @param common.controllers.main.containers.app.resources.requests.cpu CPU request
cpu: "100m"
## @param common.controllers.main.containers.app.resources.requests.memory Memory request
memory: "64Mi"
limits:
## @param common.controllers.main.containers.app.resources.limits.cpu CPU limit
cpu: "250m"
## @param common.controllers.main.containers.app.resources.limits.memory Memory limit
memory: "128Mi"
## @section Service Configuration
service:
app:
## @param common.service.app.controller Controller to associate with
controller: main
ports:
http:
## @param common.service.app.ports.http.port HTTP service port
port: 9210
## @section ConfigMap Configuration
configMaps:
config:
data:
## @param common.configMaps.config.data.UPSTREAM_URL Upstream URL to proxy requests to
UPSTREAM_URL: https://cloud.domain.com
## @param common.configMaps.config.data.HREF_PATTERN Pattern to match in href attributes
HREF_PATTERN: https://auth.domain.com/application/o/
## @param common.configMaps.config.data.HREF_REPLACEMENT Replacement value for matched href patterns
HREF_REPLACEMENT: https://auth.domain.com/application/o/
## @param common.configMaps.config.data.DEFAULT_SUFFIX Default suffix appended to requests
DEFAULT_SUFFIX: opencloud
+18
View File
@@ -0,0 +1,18 @@
[tools]
go = "1.25.1"
[tasks.devdeps]
description = "Install dev tools"
run = "go install github.com/cozystack/readme-generator-for-helm@latest"
[tasks.readme]
description = "Generate helm chart README"
run = "readme-generator-for-helm --values helm/values.yaml --readme README.md"
[tasks.helm-lint]
description = "Lint helm chart"
run = "helm lint helm/"
[tasks.helm-template]
description = "Preview helm chart output"
run = "helm template opencloud-oidc-webfinger-proxy helm/"
+23
View File
@@ -0,0 +1,23 @@
{
"extends": [
"config:recommended"
],
"dependencyDashboard": true,
"assignees": [
"barbirict"
],
"gitAuthor": "Renovate Bot <renovate-bot@barbiric.io>",
"major": {
"dependencyDashboardApproval": true
},
"regexManagers": [
{
"fileMatch": ["Chart\\.yaml$"],
"matchStrings": [
"appVersion:\\s*\"?(?<currentValue>[^\"\\s]+)\"?"
],
"depNameTemplate": "git.barbiric.io/barbirict/opencloud-oidc-webfinger-proxy",
"datasourceTemplate": "docker"
}
]
}