Compare commits

...

80 Commits

Author SHA1 Message Date
f786359136 chore(deps): update lockfiles (#929)
All checks were successful
changelog / changelog (push) Successful in 9s
check-and-test / check-and-test (push) Successful in 1m46s
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-08-19 00:04:14 +00:00
6d5fbcbaee chore(deps): update bats testing framework (#927)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-08-17 00:04:16 +00:00
14a4e47b73 chore(deps): update lockfiles (#926)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-08-16 00:04:27 +00:00
3a7859f6cc chore(deps): update subcharts (minor & patch) (#922)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-08-15 00:08:57 +00:00
364dfa2076 chore(deps): update dependency go-gitea/gitea to v1.24.5 (#925)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-08-14 06:26:53 +00:00
468c12643f fix(renovate): add lockFileMaintenance (#924)
The following patch adapts the renovate configuration maintain lockfiles, for
example the package-lock.json

Further information can be found in the official documentation:

https://docs.renovatebot.com/configuration-options/#lockfilemaintenance

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/924
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Markus Pesch <markus.pesch@cryptic.systems>
Co-committed-by: Markus Pesch <markus.pesch@cryptic.systems>
2025-08-13 07:24:29 +00:00
46aa0534bb chore(deps): update dependency go-gitea/gitea to v1.24.4 (#919)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-08-12 19:36:22 +00:00
455cc67d41 chore(deps): update docker.io/thegeeklab/git-sv docker tag to v2.0.4 (#921)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-08-12 18:17:07 +00:00
ec898f1330 chore(deps): update dependency helm-unittest/helm-unittest to v1 (#914)
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/914
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-08-12 18:14:14 +00:00
82190f3d30 docs(README): be compliant with markdownlint (#923)
All checks were successful
changelog / changelog (push) Successful in 8s
check-and-test / check-and-test (push) Successful in 1m46s
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/923
Co-authored-by: Markus Pesch <markus.pesch@cryptic.systems>
Co-committed-by: Markus Pesch <markus.pesch@cryptic.systems>
2025-08-12 15:04:57 +00:00
e059beb82b Add "Maintainer needed" notice 2025-08-04 23:50:22 +00:00
9206b34af3 docs: remove pat-s from maintainers (#918)
#916

After many years of maintaining this chart alongside @justusbunsi, I am also stepping down as a maintainer.
In the following, I want to inform users about the reasons.

I am on an independent journey since ~ 1 year, which brought many new challenges and responsibilities.
Since then I have created many devops-related assets (charts, Ansible role, images) which I am now curating as part of my professional work.
Besides, I have also continued with all my FOSS-related efforts. This has summed up to ~ 20-30 projects for which I am either in a primary or secondary maintainer role.
While I have a lot of fun in this, I need to ensure to not go beyond my limits and focus on the ones which I also use in my daily dev & professional life.

Gitea isn't among these anymore since some time, which brings me to the second part of why I am stepping down:
After thinking about it for a long time and being torn between worlds, I've decided to go with Forgejo instead of Gitea for most instances I am running/maintaining.
Since then, I have used the Gitea helm chart to deploy these. This has worked out great and without issues and will likely continue to do so for the foreseeable future.

However, it lately started to feel "wrong", i.e. to continue using the Gitea chart for Forgejo deployments, especially after both projects have substantially diverged some time ago already and a Forgejo Helm Chart exists since some time. Also, I had the feeling of not being able to "commit" to one of the projects fully, being involved in both.
After launching [CodeFloe](https://codefloe.com) a few weeks ago, a public Forgejo instance, I came to the conclusion to step down as a maintainer and focus on the software that I use daily.

And as I like be fully transparent: I don't wanna hold back on the fact that I was also missing the community spirit from "the old days" quite a bit lately, both in the Discord server and the discussions in the chart. The ratio of low-quality requests in the Chart increased a lot over the last ~ 1.5 years, while at the same time the average response times of Gitea core member increased to weeks.

I hope the Gitea community can turn this around again and create a welcoming place to which its fun to contribute to in one's spare time. I enjoyed it for the most part and want to thank everyone who supported me during this time, for the general trust in Chart-related decisions, and the opportunity to personally improve on Helm chart management in general.

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/918
Co-authored-by: pat-s <patrick.schratz@gmail.com>
Co-committed-by: pat-s <patrick.schratz@gmail.com>
2025-08-04 19:06:39 +00:00
203a282e93 docs: step down as maintainer (#917)
This is a direct follow-up to https://gitea.com/gitea/helm-gitea/issues/916.

Over the past months I took an unofficial break. During this time I realized that I don't have the necessary energy and spare time to maintain the Helm Chart long-term - in a way I would like to. Before that break I had ups where I was hyper-focused on the chart, and downs where everything was too much after work. I never found a sweat spot between both. This is not good for me. It is therefore with a heavy heart that I am stepping down as a maintainer.

Signed-off-by: justusbunsi <sk.bunsenbrenner@gmail.com>

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/917
Co-authored-by: justusbunsi <sk.bunsenbrenner@gmail.com>
Co-committed-by: justusbunsi <sk.bunsenbrenner@gmail.com>
2025-08-04 18:33:25 +00:00
81c12fa3e5 chore(deps): update alpine/helm docker tag to v3.18.4 (#913)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-08-03 00:04:24 +00:00
c7e294cf8c chore(deps): update postgresql docker tag to v16.7.21 (#908)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-07-27 00:07:36 +00:00
ce60c7bb0f chore(deps): update subcharts (minor & patch) (#905)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [postgresql](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/postgresql)) | patch | `16.7.18` -> `16.7.20` |
| [postgresql-ha](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/postgresql-ha)) | patch | `16.0.21` -> `16.0.22` |
| [valkey](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/valkey)) | patch | `3.0.20` -> `3.0.22` |
| [valkey-cluster](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/valkey-cluster)) | patch | `3.0.17` -> `3.0.18` |

---

### Release Notes

<details>
<summary>bitnami/charts (postgresql)</summary>

### [`v16.7.20`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql/CHANGELOG.md#16720-2025-07-18)

- \[bitnami/postgresql] Rename backup.cronjob.timeZone to backup.cronjob.timezone ([#&#8203;35153](https://github.com/bitnami/charts/pull/35153))

### [`v16.7.19`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql/CHANGELOG.md#small16719-2025-07-15-small)

- \[bitnami/postgresql]  :arrow\_up: Update dependency references ([#&#8203;35116](https://github.com/bitnami/charts/issues/35116)) ([15c6eee](15c6eeeee5)), closes [#&#8203;35116](https://github.com/bitnami/charts/issues/35116)

</details>

<details>
<summary>bitnami/charts (postgresql-ha)</summary>

### [`v16.0.22`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#16022-2025-07-15)

- \[bitnami/postgresql-ha]  :arrow\_up: Update dependency references ([#&#8203;35117](https://github.com/bitnami/charts/pull/35117))

</details>

<details>
<summary>bitnami/charts (valkey)</summary>

### [`v3.0.22`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey/CHANGELOG.md#3022-2025-07-16)

- \[bitnami/valkey]  :arrow\_up: Update dependency references ([#&#8203;35151](https://github.com/bitnami/charts/pull/35151))

### [`v3.0.21`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey/CHANGELOG.md#small3021-2025-07-15-small)

- \[bitnami/valkey]  :arrow\_up: Update dependency references ([#&#8203;35135](https://github.com/bitnami/charts/issues/35135)) ([4a16d74](4a16d74eeb)), closes [#&#8203;35135](https://github.com/bitnami/charts/issues/35135)

</details>

<details>
<summary>bitnami/charts (valkey-cluster)</summary>

### [`v3.0.18`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey-cluster/CHANGELOG.md#3018-2025-07-15)

- \[bitnami/valkey-cluster]  :arrow\_up: Update dependency references ([#&#8203;35132](https://github.com/bitnami/charts/pull/35132))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xOC4xIiwidXBkYXRlZEluVmVyIjoiNDEuMTguMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsia2luZC9kZXBlbmRlbmN5Il19-->

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/905
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-07-19 13:08:41 +00:00
2875e08daf chore(deps): update workflow dependencies (minor & patch) (#906)
This PR contains the following updates:

| Package | Change | Age | Confidence | Type | Update |
|---|---|---|---|---|---|
| [@bitnami/readme-generator-for-helm](https://github.com/bitnami/readme-generator-for-helm) | [`2.7.1` -> `2.7.2`](https://renovatebot.com/diffs/npm/@bitnami%2freadme-generator-for-helm/2.7.1/2.7.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@bitnami%2freadme-generator-for-helm/2.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@bitnami%2freadme-generator-for-helm/2.7.1/2.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [docker.io/thegeeklab/git-sv](https://github.com/thegeeklab/git-sv) | `2.0.2` -> `2.0.3` | [![age](https://developer.mend.io/api/mc/badges/age/docker/docker.io%2fthegeeklab%2fgit-sv/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/docker/docker.io%2fthegeeklab%2fgit-sv/2.0.2/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | container | patch |

---

### Release Notes

<details>
<summary>bitnami/readme-generator-for-helm (@&#8203;bitnami/readme-generator-for-helm)</summary>

### [`v2.7.2`](https://github.com/bitnami/readme-generator-for-helm/releases/tag/2.7.2)

[Compare Source](https://github.com/bitnami/readme-generator-for-helm/compare/2.7.1...2.7.2)

#### What's Changed

- fix(lib/utils.js): Change regexp to take only the 'key' at the beginning by [@&#8203;fmulero](https://github.com/fmulero) in https://github.com/bitnami/readme-generator-for-helm/pull/147
- fix(builder.js): Values defined as nullabe without setting any value were skipped by [@&#8203;fmulero](https://github.com/fmulero) in https://github.com/bitnami/readme-generator-for-helm/pull/148
- Prepare release 2.7.2 by [@&#8203;fmulero](https://github.com/fmulero) in https://github.com/bitnami/readme-generator-for-helm/pull/149

**Full Changelog**: https://github.com/bitnami/readme-generator-for-helm/compare/2.7.1...2.7.2

</details>

<details>
<summary>thegeeklab/git-sv (docker.io/thegeeklab/git-sv)</summary>

### [`v2.0.3`](https://github.com/thegeeklab/git-sv/releases/tag/v2.0.3)

[Compare Source](https://github.com/thegeeklab/git-sv/compare/v2.0.2...v2.0.3)

##### v2.0.3 (2025-07-16)

##### Bug Fixes

- **deps:** update module github.com/masterminds/semver/v3 to v3.4.0 ([#&#8203;213](https://github.com/thegeeklab/git-sv/issues/213)) ([`ef7b503`](https://github.com/thegeeklab/git-sv/commit/ef7b503))

##### Others

- **docker:** update docker.io/library/alpine:3.22 docker digest to [`4bcff63`](https://github.com/thegeeklab/git-sv/commit/4bcff63) ([#&#8203;219](https://github.com/thegeeklab/git-sv/issues/219)) ([`4ed486d`](https://github.com/thegeeklab/git-sv/commit/4ed486d))
- **deps:** update golang patch version ([#&#8203;218](https://github.com/thegeeklab/git-sv/issues/218)) ([`65bb3ce`](https://github.com/thegeeklab/git-sv/commit/65bb3ce))
- **deps:** update dependency golangci/golangci-lint to v2.2.2 ([#&#8203;217](https://github.com/thegeeklab/git-sv/issues/217)) ([`7fb6603`](https://github.com/thegeeklab/git-sv/commit/7fb6603))
- **docker:** update docker.io/library/golang:1.24.4 docker digest to [`20a022e`](https://github.com/thegeeklab/git-sv/commit/20a022e) ([#&#8203;216](https://github.com/thegeeklab/git-sv/issues/216)) ([`dc0e30a`](https://github.com/thegeeklab/git-sv/commit/dc0e30a))
- **docker:** update docker.io/library/golang:1.24.4 docker digest to [`764d7e0`](https://github.com/thegeeklab/git-sv/commit/764d7e0) ([#&#8203;215](https://github.com/thegeeklab/git-sv/issues/215)) ([`6576999`](https://github.com/thegeeklab/git-sv/commit/6576999))
- **deps:** update dependency golangci/golangci-lint to v2.2.1 ([#&#8203;214](https://github.com/thegeeklab/git-sv/issues/214)) ([`1ee648d`](https://github.com/thegeeklab/git-sv/commit/1ee648d))

##### CI Pipeline

- migrate to wsl\_v5 linter ([`ebec1bc`](https://github.com/thegeeklab/git-sv/commit/ebec1bc))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xOC4xIiwidXBkYXRlZEluVmVyIjoiNDEuMTguMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsia2luZC9kZXBlbmRlbmN5Il19-->

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/906
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-07-19 13:08:29 +00:00
09767c4494 docs(README): add workaround for rotating TLS certificates (#907)
The following patch extends the README of an additional chapter, how to handle
rotating TLS certificates mounted as secret into the container filesystem.

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/907
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: Markus Pesch <markus.pesch@cryptic.systems>
Co-committed-by: Markus Pesch <markus.pesch@cryptic.systems>
2025-07-19 13:08:03 +00:00
a45253abf9 docs: fix broken links (#904)
<!--
 Before you open the request please review the following guidelines and tips to help it be more easily integrated:

 - Describe the scope of your change - i.e. what the change does.
 - Describe any known limitations with your change.
 - Please run any tests or examples that can exercise your modified code.

 Thank you for contributing! We will try to review, test and integrate the change as soon as we can.
 -->

### Description of the change

<!-- Describe the scope of your change - i.e. what the change does. -->
Fix broken docs links. 😉

### Benefits

<!-- What benefits will be realized by the code change? -->

### Possible drawbacks

<!-- Describe any known limitations with your change -->

### Applicable issues

<!-- Enter any applicable Issues here (You can reference an issue using #). Please remove this section if there is no referenced issue. -->
- none

### Additional information

<!-- If there's anything else that's important and relevant to your pull request, mention that information here. Please remove this section if it remains empty. -->

regression of #775

### ⚠ BREAKING

<!-- If there's a breaking change, please shortly describe in which way users are affected and how they can mitigate it. If there are no breakings, please remove this section. -->

### Checklist

<!-- [Place an '[X]' (no spaces) in all applicable fields. Please remove unrelated fields.] -->

- [ ] Parameters are documented in the `values.yaml` and added to the `README.md` using [readme-generator-for-helm](https://github.com/bitnami-labs/readme-generator-for-helm)
- [ ] Breaking changes are documented in the `README.md`
- [ ] Helm templating unittests are added (required when changing anything in `templates` folder)
- [ ] Bash unittests are added (required when changing anything in `scripts` folder)
- [ ] All added template resources MUST render a namespace in metadata

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/904
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
Co-committed-by: Michael Kriese <michael.kriese@visualon.de>
2025-07-19 12:56:28 +00:00
f9efe98fe7 chore(deps): update dependency go-gitea/gitea to v1.24.3 (#902)
All checks were successful
changelog / changelog (push) Successful in 22s
check-and-test / check-and-test (push) Successful in 1m48s
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-07-17 00:04:20 +00:00
92c187f264 chore(deps): update subcharts (minor & patch) (#901)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-07-14 00:07:32 +00:00
4fbdf634a9 chore(deps): update subcharts (minor & patch) (#899)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-07-06 00:07:59 +00:00
f0dcbe88dd chore(deps): update subcharts (minor & patch) (#895)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-06-30 00:08:41 +00:00
aa7ccb47ba fix: add srCheckPassword param to support new postgresql-ha stream replication check requirements (#894)
### Add new 'srCheckPassword' postgresql-ha value to support new postgresql-ha stream replication check requirements

Per Bitnami's [documentation](https://github.com/bitnami/charts/tree/main/bitnami/postgresql-ha#to-1600), a new 'sr_check_user' now exists for the purpose of pgpool preforming stream replication checking.

### Benefits

This change allows customizing that role's password by overriding Bitnami's chart value.

### Possible drawbacks

None that I'm aware of.

### Applicable issues

- Fixes #888

### Additional information

Per #888, the Bitnami PR where customizable stream reapplication check credentials were introduced is https://github.com/bitnami/charts/pull/33552

### Checklist

<!-- [Place an '[X]' (no spaces) in all applicable fields. Please remove unrelated fields.] -->

- [x] Parameters are documented in the `values.yaml` and added to the `README.md` using [readme-generator-for-helm](https://github.com/bitnami-labs/readme-generator-for-helm)
- [x] Helm templating unittests are added (required when changing anything in `templates` folder)

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/894
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: Jade Deane <jade.deane@gmail.com>
Co-committed-by: Jade Deane <jade.deane@gmail.com>
2025-06-27 13:32:41 +00:00
0f1f329de4 chore(deps): update workflow dependencies (minor & patch) (#892)
This PR contains the following updates:

| Package | Change | Age | Confidence | Type | Update |
|---|---|---|---|---|---|
| [@bitnami/readme-generator-for-helm](https://github.com/bitnami/readme-generator-for-helm) | [`2.7.0` -> `2.7.1`](https://renovatebot.com/diffs/npm/@bitnami%2freadme-generator-for-helm/2.7.0/2.7.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@bitnami%2freadme-generator-for-helm/2.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@bitnami%2freadme-generator-for-helm/2.7.0/2.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [alpine/helm](https://github.com/alpine-docker/helm) ([changelog](https://github.com/helm/helm)) | `3.18.2` -> `3.18.3` | [![age](https://developer.mend.io/api/mc/badges/age/docker/alpine%2fhelm/3.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/docker/alpine%2fhelm/3.18.2/3.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | patch |
| [alpine/helm](https://github.com/alpine-docker/helm) ([changelog](https://github.com/helm/helm)) | `3.18.2` -> `3.18.3` | [![age](https://developer.mend.io/api/mc/badges/age/docker/alpine%2fhelm/3.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/docker/alpine%2fhelm/3.18.2/3.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | container | patch |
| [docker.io/thegeeklab/git-sv](https://github.com/thegeeklab/git-sv) | `2.0.1` -> `2.0.2` | [![age](https://developer.mend.io/api/mc/badges/age/docker/docker.io%2fthegeeklab%2fgit-sv/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/docker/docker.io%2fthegeeklab%2fgit-sv/2.0.1/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | container | patch |
| [markdownlint-cli](https://github.com/igorshubovych/markdownlint-cli) | [`^0.44.0` -> `^0.45.0`](https://renovatebot.com/diffs/npm/markdownlint-cli/0.44.0/0.45.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/markdownlint-cli/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/markdownlint-cli/0.44.0/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |

---

### Release Notes

<details>
<summary>bitnami/readme-generator-for-helm (@&#8203;bitnami/readme-generator-for-helm)</summary>

### [`v2.7.1`](https://github.com/bitnami/readme-generator-for-helm/releases/tag/2.7.1)

[Compare Source](https://github.com/bitnami/readme-generator-for-helm/compare/2.7.0...2.7.1)

#### What's Changed

- Fix MD059 warnings in Markdown files by [@&#8203;fmulero](https://github.com/fmulero) in https://github.com/bitnami/readme-generator-for-helm/pull/143
- Preserve whitespace in descriptions by [@&#8203;jnodorp-jaconi](https://github.com/jnodorp-jaconi) in https://github.com/bitnami/readme-generator-for-helm/pull/141
- Bump brace-expansion from 1.1.11 to 1.1.12 in the npm\_and\_yarn group across 1 directory by [@&#8203;dependabot](https://github.com/dependabot) in https://github.com/bitnami/readme-generator-for-helm/pull/144
- fix([#&#8203;60](https://github.com/bitnami/readme-generator-for-helm/issues/60)): build right path for complex objects by [@&#8203;fmulero](https://github.com/fmulero) in https://github.com/bitnami/readme-generator-for-helm/pull/145

#### New Contributors

- [@&#8203;jnodorp-jaconi](https://github.com/jnodorp-jaconi) made their first contribution in https://github.com/bitnami/readme-generator-for-helm/pull/141

**Full Changelog**: https://github.com/bitnami/readme-generator-for-helm/compare/2.7.0...2.7.1

</details>

<details>
<summary>thegeeklab/git-sv (docker.io/thegeeklab/git-sv)</summary>

### [`v2.0.2`](https://github.com/thegeeklab/git-sv/releases/tag/v2.0.2)

[Compare Source](https://github.com/thegeeklab/git-sv/compare/v2.0.1...v2.0.2)

##### v2.0.2 (2025-06-18)

##### Bug Fixes

- fix key mismatch regression in go-git ([#&#8203;211](https://github.com/thegeeklab/git-sv/issues/211)) ([`0fc807c`](https://github.com/thegeeklab/git-sv/commit/0fc807c))
- **deps:** update module github.com/urfave/cli/v3 to v3.3.8 ([#&#8203;210](https://github.com/thegeeklab/git-sv/issues/210)) ([`60d42b3`](https://github.com/thegeeklab/git-sv/commit/60d42b3))
- **deps:** update module github.com/go-git/go-git/v5 to v5.16.2 ([#&#8203;206](https://github.com/thegeeklab/git-sv/issues/206)) ([`a1c7cb5`](https://github.com/thegeeklab/git-sv/commit/a1c7cb5))
- **deps:** update module github.com/go-git/go-git/v5 to v5.16.1 ([#&#8203;204](https://github.com/thegeeklab/git-sv/issues/204)) ([`90d574b`](https://github.com/thegeeklab/git-sv/commit/90d574b))
- **deps:** update module github.com/goccy/go-yaml to v1.18.0 ([#&#8203;201](https://github.com/thegeeklab/git-sv/issues/201)) ([`45a5374`](https://github.com/thegeeklab/git-sv/commit/45a5374))
- **deps:** update module github.com/urfave/cli/v3 to v3.3.3 ([#&#8203;200](https://github.com/thegeeklab/git-sv/issues/200)) ([`8e9809e`](https://github.com/thegeeklab/git-sv/commit/8e9809e))

##### Others

- **deps:** update docker.io/library/alpine docker tag to v3.22 ([#&#8203;202](https://github.com/thegeeklab/git-sv/issues/202)) ([`dcc839c`](https://github.com/thegeeklab/git-sv/commit/dcc839c))
- **docker:** update docker.io/library/golang:1.24.4 docker digest to [`10c1318`](https://github.com/thegeeklab/git-sv/commit/10c1318) ([#&#8203;209](https://github.com/thegeeklab/git-sv/issues/209)) ([`bcd32f0`](https://github.com/thegeeklab/git-sv/commit/bcd32f0))
- **docker:** update docker.io/library/golang:1.24.4 docker digest to [`3178db8`](https://github.com/thegeeklab/git-sv/commit/3178db8) ([#&#8203;208](https://github.com/thegeeklab/git-sv/issues/208)) ([`8b6a5f5`](https://github.com/thegeeklab/git-sv/commit/8b6a5f5))
- **docker:** update docker.io/library/golang:1.24.4 docker digest to [`d1db785`](https://github.com/thegeeklab/git-sv/commit/d1db785) ([#&#8203;207](https://github.com/thegeeklab/git-sv/issues/207)) ([`8e5df40`](https://github.com/thegeeklab/git-sv/commit/8e5df40))
- **deps:** update golang patch version ([#&#8203;205](https://github.com/thegeeklab/git-sv/issues/205)) ([`ea35ff9`](https://github.com/thegeeklab/git-sv/commit/ea35ff9))
- **docker:** update docker.io/library/golang:1.24.3 docker digest to [`81bf592`](https://github.com/thegeeklab/git-sv/commit/81bf592) ([#&#8203;203](https://github.com/thegeeklab/git-sv/issues/203)) ([`2ace1de`](https://github.com/thegeeklab/git-sv/commit/2ace1de))
- **deps:** update golang patch version ([#&#8203;199](https://github.com/thegeeklab/git-sv/issues/199)) ([`f7383bd`](https://github.com/thegeeklab/git-sv/commit/f7383bd))

</details>

<details>
<summary>igorshubovych/markdownlint-cli (markdownlint-cli)</summary>

### [`v0.45.0`](https://github.com/igorshubovych/markdownlint-cli/releases/tag/v0.45.0)

[Compare Source](https://github.com/igorshubovych/markdownlint-cli/compare/v0.44.0...v0.45.0)

- Update `markdownlint` dependency to `0.38.0`
  - Add `MD059`/`descriptive-link-text`
  - Improve `MD025`/`MD027`/`MD036`/`MD038`/`MD041`/`MD043`/`MD045`/`MD051`/`MD052`
  - Remove support for end-of-life Node version 18
- Update all dependencies via `Dependabot`

</details>

---

### Configuration

📅 **Schedule**: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xLjMiLCJ1cGRhdGVkSW5WZXIiOiI0MS42LjQiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImtpbmQvZGVwZW5kZW5jeSJdfQ==-->

Co-authored-by: pat-s <patrick.schratz@gmail.com>
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/892
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-06-27 13:29:35 +00:00
cb28148dc8 chore(deps): update subcharts (minor & patch) (#891)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-06-23 00:08:57 +00:00
ee84a1750b chore(deps): update dependency go-gitea/gitea to v1.24.2 (#890)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-06-22 00:05:29 +00:00
6e1d516bb2 chore(deps): update bats testing framework (#889)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-06-21 00:12:27 +00:00
08143654a5 chore(deps): update dependency go-gitea/gitea to v1.24.1 (#887)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-06-20 00:13:06 +00:00
e134835662 ci: remove comment 2025-06-16 16:25:10 +02:00
e7db8cddd9 refactor: clarify SSH behavior for rootful images (#876)
For rootful Gitea images, the built-in OpenSSH server is reused, and Gitea itself does not listen on any SSH port. Therefore, the `SSH_LISTEN_PORT` setting has no effect. Explicitly setting `START_SSH_SERVER` helps avoid confusion and makes the behavior clearer.

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/876
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-committed-by: Lunny Xiao <xiaolunwen@gmail.com>
2025-06-16 14:21:00 +00:00
ec7a659535 feat: add Artifacthub annotation 'artifacthub.io/changes' (#881)
The following PR add the annotation 'artifacthub.io/changes'. For each semantic
commit will be the annotation extended. Further information can be found in the
documentation of
[Artifacthub.io](https://artifacthub.io/docs/topics/annotations/helm/#supported-annotations).

The CI has been adapted. The binary jq as well as yq in >= v4.0 is required.
Otherwise will not be concatenated the YAML file correctly via the yq expression,
because the `loadstr()` expression is not available in lower versions.

Additionally the relation between the semantic commit and the Artifacthub.io
change log type should be clarified. The current relationshiop can be adapted if
needed.

Furthermore, yq will be installed as part of the CI steps. It would be great if
yq is also available as deb package in >=v4.0. This would reduce the boiler
plate to install yq and maintain the version via renovate.

Regarding the renovate expression. In my environment works this expression, but
I don't know if it also works in this gitea/renovate instance.

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/881
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: Markus Pesch <markus.pesch@cryptic.systems>
Co-committed-by: Markus Pesch <markus.pesch@cryptic.systems>
2025-06-16 14:20:39 +00:00
db177a356f ci: bump helm version for tests 2025-06-15 14:45:19 +02:00
d29a7e84a4 fix: correct replicaCount comparison (#884)
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/884
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-committed-by: Lunny Xiao <xiaolunwen@gmail.com>
2025-06-15 12:41:20 +00:00
31fa278145 chore(deps): update subcharts (minor & patch) (#885)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [postgresql](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/postgresql)) | patch | `16.7.4` -> `16.7.11` |
| [postgresql-ha](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/postgresql-ha)) | patch | `16.0.6` -> `16.0.14` |
| [valkey](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/valkey)) | patch | `3.0.9` -> `3.0.13` |
| [valkey-cluster](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/valkey-cluster)) | patch | `3.0.10` -> `3.0.14` |

---

### Release Notes

<details>
<summary>bitnami/charts (postgresql)</summary>

### [`v16.7.11`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql/CHANGELOG.md#16711-2025-06-11)

-   \[bitnami/postgresql]  ⬆️ Update dependency references ([#&#8203;34353](https://github.com/bitnami/charts/pull/34353))

### [`v16.7.10`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql/CHANGELOG.md#small16710-2025-06-06-small)

-   \[bitnami/postgresql]  ⬆️ Update dependency references ([#&#8203;34210](https://github.com/bitnami/charts/issues/34210)) ([5880187](5880187fcb)), closes [#&#8203;34210](https://github.com/bitnami/charts/issues/34210)

### [`v16.7.9`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql/CHANGELOG.md#small1679-2025-06-03-small)

-   \[bitnami/postgresql]  ⬆️ Update dependency references ([#&#8203;34076](https://github.com/bitnami/charts/issues/34076)) ([1063457](10634578d5)), closes [#&#8203;34076](https://github.com/bitnami/charts/issues/34076)

### [`v16.7.8`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql/CHANGELOG.md#small1678-2025-05-30-small)

-   \[bitnami/postgresql]  ⬆️ Update dependency references ([#&#8203;34009](https://github.com/bitnami/charts/issues/34009)) ([41b1852](41b1852d4b)), closes [#&#8203;34009](https://github.com/bitnami/charts/issues/34009)

### [`v16.7.6`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql/CHANGELOG.md#small1676-2025-05-30-small)

-   \[bitnami/postgresql] Update dependencies ([#&#8203;33986](https://github.com/bitnami/charts/issues/33986)) ([400a5e5](400a5e5dc0)), closes [#&#8203;33986](https://github.com/bitnami/charts/issues/33986)

### [`v16.7.5`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql/CHANGELOG.md#small1675-2025-05-27-small)

-   \[bitnami/\*] Add CNAB link for charts on Azure MP ([#&#8203;33695](https://github.com/bitnami/charts/issues/33695)) ([6312371](63123718de)), closes [#&#8203;33695](https://github.com/bitnami/charts/issues/33695)
-   \[bitnami/\*] Update CNAB tip ([#&#8203;33741](https://github.com/bitnami/charts/issues/33741)) ([2bc74f3](2bc74f3f53)), closes [#&#8203;33741](https://github.com/bitnami/charts/issues/33741)
-   \[bitnami/postgresql]  ⬆️ Update dependency references ([#&#8203;33916](https://github.com/bitnami/charts/issues/33916)) ([96adefd](96adefd64d)), closes [#&#8203;33916](https://github.com/bitnami/charts/issues/33916)

</details>

<details>
<summary>bitnami/charts (postgresql-ha)</summary>

### [`v16.0.14`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#16014-2025-06-13)

-   \[bitnami/postgresql-ha]  ⬆️ Update dependency references ([#&#8203;34486](https://github.com/bitnami/charts/pull/34486))

### [`v16.0.13`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#small16013-2025-06-12-small)

-   \[bitnami/postgresql-ha]  ⬆️ Update dependency references ([#&#8203;34375](https://github.com/bitnami/charts/issues/34375)) ([3ac12a1](3ac12a1032)), closes [#&#8203;34375](https://github.com/bitnami/charts/issues/34375)

### [`v16.0.12`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#small16012-2025-06-11-small)

-   \[bitnami/postgresql-ha]  ⬆️ Update dependency references ([#&#8203;34354](https://github.com/bitnami/charts/issues/34354)) ([0f9c1d4](0f9c1d4529)), closes [#&#8203;34354](https://github.com/bitnami/charts/issues/34354)

### [`v16.0.11`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#small16011-2025-06-06-small)

-   \[bitnami/postgresql-ha]  ⬆️ Update dependency references ([#&#8203;34211](https://github.com/bitnami/charts/issues/34211)) ([068660d](068660d0ba)), closes [#&#8203;34211](https://github.com/bitnami/charts/issues/34211)

### [`v16.0.10`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#small16010-2025-06-03-small)

-   \[bitnami/postgresql-ha]  ⬆️ Update dependency references ([#&#8203;34072](https://github.com/bitnami/charts/issues/34072)) ([ae2e653](ae2e653858)), closes [#&#8203;34072](https://github.com/bitnami/charts/issues/34072)

### [`v16.0.9`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#small1609-2025-05-30-small)

-   \[bitnami/postgresql-ha]  ⬆️ Update dependency references ([#&#8203;33983](https://github.com/bitnami/charts/issues/33983)) ([2a92873](2a9287306a)), closes [#&#8203;33983](https://github.com/bitnami/charts/issues/33983)

### [`v16.0.8`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#small1608-2025-05-27-small)

-   \[bitnami/postgresql-ha]  ⬆️ Update dependency references ([#&#8203;33915](https://github.com/bitnami/charts/issues/33915)) ([adcb803](adcb803342)), closes [#&#8203;33915](https://github.com/bitnami/charts/issues/33915)

### [`v16.0.7`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#small1607-2025-05-26-small)

-   \[bitnami/postgresql-ha] Update domain name value for PGPOOL_BACKEND_NODES ([#&#8203;33607](https://github.com/bitnami/charts/issues/33607)) ([286eab6](286eab651e)), closes [#&#8203;33607](https://github.com/bitnami/charts/issues/33607)

</details>

<details>
<summary>bitnami/charts (valkey)</summary>

### [`v3.0.13`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey/CHANGELOG.md#3013-2025-06-11)

-   \[bitnami/valkey]  ⬆️ Update dependency references ([#&#8203;34361](https://github.com/bitnami/charts/pull/34361))

### [`v3.0.12`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey/CHANGELOG.md#small3012-2025-06-10-small)

-   \[bitnami/valkey]  ⬆️ Update dependency references ([#&#8203;34322](https://github.com/bitnami/charts/issues/34322)) ([4ea6675](4ea66757c8)), closes [#&#8203;34322](https://github.com/bitnami/charts/issues/34322)

### [`v3.0.11`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey/CHANGELOG.md#small3011-2025-06-08-small)

-   \[bitnami/valkey]  ⬆️ Update dependency references ([#&#8203;34248](https://github.com/bitnami/charts/issues/34248)) ([e945325](e9453256b0)), closes [#&#8203;34248](https://github.com/bitnami/charts/issues/34248)

### [`v3.0.10`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey/CHANGELOG.md#small3010-2025-06-06-small)

-   \[bitnami/valkey]  ⬆️ Update dependency references ([#&#8203;34189](https://github.com/bitnami/charts/issues/34189)) ([6fa7396](6fa7396b58)), closes [#&#8203;34189](https://github.com/bitnami/charts/issues/34189)
-   \[bitnami/valkey] Fix info about Sentinel StatefulSet in README ([#&#8203;33881](https://github.com/bitnami/charts/issues/33881)) ([ddc76cc](ddc76cc1f4)), closes [#&#8203;33881](https://github.com/bitnami/charts/issues/33881)

</details>

<details>
<summary>bitnami/charts (valkey-cluster)</summary>

### [`v3.0.14`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey-cluster/CHANGELOG.md#3014-2025-06-13)

-   \[bitnami/valkey-cluster]  ⬆️ Update dependency references ([#&#8203;34488](https://github.com/bitnami/charts/pull/34488))

### [`v3.0.13`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey-cluster/CHANGELOG.md#small3013-2025-06-11-small)

-   \[bitnami/valkey-cluster]  ⬆️ Update dependency references ([#&#8203;34362](https://github.com/bitnami/charts/issues/34362)) ([df7362e](df7362ef25)), closes [#&#8203;34362](https://github.com/bitnami/charts/issues/34362)

### [`v3.0.12`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey-cluster/CHANGELOG.md#small3012-2025-06-08-small)

-   \[bitnami/valkey-cluster]  ⬆️ Update dependency references ([#&#8203;34252](https://github.com/bitnami/charts/issues/34252)) ([6592a44](6592a44115)), closes [#&#8203;34252](https://github.com/bitnami/charts/issues/34252)

### [`v3.0.11`](https://github.com/bitnami/charts/blob/HEAD/bitnami/valkey-cluster/CHANGELOG.md#small3011-2025-06-06-small)

-   \[bitnami/valkey-cluster]  ⬆️ Update dependency references ([#&#8203;34216](https://github.com/bitnami/charts/issues/34216)) ([c4d9bfb](c4d9bfb0df)), closes [#&#8203;34216](https://github.com/bitnami/charts/issues/34216)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC41NC4xIiwidXBkYXRlZEluVmVyIjoiNDAuNTQuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsia2luZC9kZXBlbmRlbmN5Il19-->

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/885
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-06-15 12:40:56 +00:00
52c249eb08 chore(deps): update dependency go-gitea/gitea to v1.24.0 (#886)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [go-gitea/gitea](https://github.com/go-gitea/gitea) | minor | `1.23.8` -> `1.24.0` |

---

### Release Notes

<details>
<summary>go-gitea/gitea (go-gitea/gitea)</summary>

### [`v1.24.0`](https://github.com/go-gitea/gitea/blob/HEAD/CHANGELOG.md#1240---2025-05-26)

[Compare Source](https://github.com/go-gitea/gitea/compare/v1.23.8...v1.24.0)

-   BREAKING
    -   Make Gitea always use its internal config, ignore `/etc/gitconfig` ([#&#8203;33076](https://github.com/go-gitea/gitea/issues/33076))
    -   Improve log format ([#&#8203;33814](https://github.com/go-gitea/gitea/issues/33814))
    -   Fix markdown render behaviors ([#&#8203;34122](https://github.com/go-gitea/gitea/issues/34122))
    -   Add package version api endpoints ([#&#8203;34173](https://github.com/go-gitea/gitea/issues/34173))

-   FEATURES
    -   Enforce two-factor auth (2FA: TOTP or WebAuthn) ([#&#8203;34187](https://github.com/go-gitea/gitea/issues/34187))
    -   Add fullscreen mode as a more efficient operation way to view projects ([#&#8203;34081](https://github.com/go-gitea/gitea/issues/34081))
    -   Add anonymous access support for private/unlisted repositories ([#&#8203;34051](https://github.com/go-gitea/gitea/issues/34051))
    -   Support public code/issue access for private repositories ([#&#8203;33127](https://github.com/go-gitea/gitea/issues/33127))
    -   Add middleware for request prioritization ([#&#8203;33951](https://github.com/go-gitea/gitea/issues/33951))
    -   Add cli flags LDAP group configuration ([#&#8203;33933](https://github.com/go-gitea/gitea/issues/33933))
    -   Add file tree to file view page ([#&#8203;32721](https://github.com/go-gitea/gitea/issues/32721))
    -   Add material icons for file list ([#&#8203;33837](https://github.com/go-gitea/gitea/issues/33837))
    -   Artifacts download api for artifact actions v4 ([#&#8203;33510](https://github.com/go-gitea/gitea/issues/33510))
    -   Support choose email when creating a commit via web UI ([#&#8203;33432](https://github.com/go-gitea/gitea/issues/33432))
    -   Add basic auth support to rss/atom feeds ([#&#8203;33371](https://github.com/go-gitea/gitea/issues/33371))
    -   Add sorting by exclusive labels (issue priority) ([#&#8203;33206](https://github.com/go-gitea/gitea/issues/33206))
    -   Add sub issue list support ([#&#8203;32940](https://github.com/go-gitea/gitea/issues/32940))
    -   Private README.md for organization ([#&#8203;32872](https://github.com/go-gitea/gitea/issues/32872))
    -   Email option to embed images as base64 instead of link ([#&#8203;32061](https://github.com/go-gitea/gitea/issues/32061))
    -   Option to delay conflict checking of old pull requests until page view ([#&#8203;27779](https://github.com/go-gitea/gitea/issues/27779))
    -   Worktime tracking for the organization level ([#&#8203;19808](https://github.com/go-gitea/gitea/issues/19808))

-   PERFORMANCE
    -   Add cache for common package queries ([#&#8203;22491](https://github.com/go-gitea/gitea/issues/22491))
    -   Move issue pin to an standalone table for querying performance ([#&#8203;33452](https://github.com/go-gitea/gitea/issues/33452))
    -   Improve commits list performance to reduce unnecessary database queries ([#&#8203;33528](https://github.com/go-gitea/gitea/issues/33528))
    -   Optimize total count of feed when loading activities in user dashboard. ([#&#8203;33841](https://github.com/go-gitea/gitea/issues/33841))
    -   Optimize heatmap query ([#&#8203;33853](https://github.com/go-gitea/gitea/issues/33853))
    -   Only use prev and next buttons for pagination on user dashboard ([#&#8203;33981](https://github.com/go-gitea/gitea/issues/33981))
    -   Improve pull request list API performance ([#&#8203;34052](https://github.com/go-gitea/gitea/issues/34052))
    -   Cache GPG keys, emails and users when list commits ([#&#8203;34086](https://github.com/go-gitea/gitea/issues/34086))
    -   Refactor Git Attribute & performance optimization ([#&#8203;34154](https://github.com/go-gitea/gitea/issues/34154))
    -   Performance optimization for tags synchronization ([#&#8203;34355](https://github.com/go-gitea/gitea/issues/34355)) [#&#8203;34522](https://github.com/go-gitea/gitea/issues/34522)

-   ENHANCEMENTS
    -   Code
        -   Display when a release attachment was uploaded ([#&#8203;34261](https://github.com/go-gitea/gitea/issues/34261))
        -   Support creating relative link to raw path in markdown ([#&#8203;34105](https://github.com/go-gitea/gitea/issues/34105))
        -   Improve code block readability and isolate copy button ([#&#8203;34009](https://github.com/go-gitea/gitea/issues/34009))
        -   Improve repository commit view ([#&#8203;33877](https://github.com/go-gitea/gitea/issues/33877))
        -   Full-file syntax highlighting for diff pages ([#&#8203;33766](https://github.com/go-gitea/gitea/issues/33766))
        -   Clone repository with Tea CLI ([#&#8203;33725](https://github.com/go-gitea/gitea/issues/33725))
        -   Improve sync fork behavior ([#&#8203;33319](https://github.com/go-gitea/gitea/issues/33319))
        -   Make git clone URL could use current signed-in user ([#&#8203;33091](https://github.com/go-gitea/gitea/issues/33091))
        -   Add submodule diff links ([#&#8203;33097](https://github.com/go-gitea/gitea/issues/33097))
        -   Link to tree views of submodules if possible ([#&#8203;33424](https://github.com/go-gitea/gitea/issues/33424))
        -   Only keep popular licenses ([#&#8203;33832](https://github.com/go-gitea/gitea/issues/33832))
        -   De-emphasize signed commits ([#&#8203;31160](https://github.com/go-gitea/gitea/issues/31160))

    -   Actions
        -   Add flat-square action badge style ([#&#8203;34062](https://github.com/go-gitea/gitea/issues/34062))
        -   Update action status badge layout ([#&#8203;34018](https://github.com/go-gitea/gitea/issues/34018))
        -   Download actions job logs from API ([#&#8203;33858](https://github.com/go-gitea/gitea/issues/33858))
        -   Always show the "rerun" button for action jobs ([#&#8203;33692](https://github.com/go-gitea/gitea/issues/33692))
        -   Add auto-expanding running actions step ([#&#8203;30058](https://github.com/go-gitea/gitea/issues/30058))
        -   Update status check for all supported on.pull_request.types in Gitea ([#&#8203;33117](https://github.com/go-gitea/gitea/issues/33117))
        -   Workflow_dispatch use workflow from trigger branch ([#&#8203;33098](https://github.com/go-gitea/gitea/issues/33098))
        -   Add action auto-scroll ([#&#8203;30057](https://github.com/go-gitea/gitea/issues/30057))
        -   Add workflow_job webhook ([#&#8203;33694](https://github.com/go-gitea/gitea/issues/33694))
        -   Add a button editing action secret ([#&#8203;34462](https://github.com/go-gitea/gitea/issues/34462))

    -   Pull Request
        -   Auto expand "New PR" form ([#&#8203;33971](https://github.com/go-gitea/gitea/issues/33971))
        -   Mark parent directory as viewed when all files are viewed ([#&#8203;33958](https://github.com/go-gitea/gitea/issues/33958))
        -   Show info about maintainers are allowed to edit a PR ([#&#8203;33738](https://github.com/go-gitea/gitea/issues/33738))
        -   Automerge supports deleting branch automatically after merging ([#&#8203;32343](https://github.com/go-gitea/gitea/issues/32343))
        -   Add additional command hints for PowerShell & CMD ([#&#8203;33548](https://github.com/go-gitea/gitea/issues/33548))

    -   Issues
        -   Allow filtering issues by any assignee ([#&#8203;33343](https://github.com/go-gitea/gitea/issues/33343))
        -   Show warning on navigation if currently editing comment or title ([#&#8203;32920](https://github.com/go-gitea/gitea/issues/32920))
        -   Make tracked time representation display as hours ([#&#8203;33315](https://github.com/go-gitea/gitea/issues/33315))
        -   Add No Results Prompt Message on Issue List Page ([#&#8203;33699](https://github.com/go-gitea/gitea/issues/33699))
        -   Add sort option recentclose for issues and pulls ([#&#8203;34525](https://github.com/go-gitea/gitea/issues/34525)) [#&#8203;34539](https://github.com/go-gitea/gitea/issues/34539)

    -   Packages
        -   Link to nuget dependencies ([#&#8203;26554](https://github.com/go-gitea/gitea/issues/26554))
        -   Add composor source field ([#&#8203;33502](https://github.com/go-gitea/gitea/issues/33502))

    -   Administration
        -   Improve navbar: add "admin" tip, add "active" style ([#&#8203;32927](https://github.com/go-gitea/gitea/issues/32927))
        -   Add a option "--user-type bot" to admin user create, improve role display ([#&#8203;27885](https://github.com/go-gitea/gitea/issues/27885))
        -   Improve admin user view page ([#&#8203;33735](https://github.com/go-gitea/gitea/issues/33735))
        -   Support performance trace ([#&#8203;32973](https://github.com/go-gitea/gitea/issues/32973))
        -   Change pprof labels to be prometheus compatible ([#&#8203;32865](https://github.com/go-gitea/gitea/issues/32865))
        -   Allow admins and org owners to change org member public status ([#&#8203;28294](https://github.com/go-gitea/gitea/issues/28294))
        -   Optimize the installation page ([#&#8203;32994](https://github.com/go-gitea/gitea/issues/32994))
        -   Make public URL generation configurable ([#&#8203;34250](https://github.com/go-gitea/gitea/issues/34250))
        -   Add a --fullname arg to gitea admin user create. ([#&#8203;34241](https://github.com/go-gitea/gitea/issues/34241))

    -   Others
        -   Improve oauth2 error handling ([#&#8203;33969](https://github.com/go-gitea/gitea/issues/33969))
        -   Fail mirroring more gracefully ([#&#8203;34002](https://github.com/go-gitea/gitea/issues/34002))
        -   Align User Details Page Header Layout with Design Specifications ([#&#8203;34192](https://github.com/go-gitea/gitea/issues/34192))
        -   Webhook add X-Gitea-Hook-Installation-Target-Type Header ([#&#8203;33752](https://github.com/go-gitea/gitea/issues/33752))
        -   Optimize the dashboard ([#&#8203;32990](https://github.com/go-gitea/gitea/issues/32990))
        -   Improve button layout on small screens ([#&#8203;33633](https://github.com/go-gitea/gitea/issues/33633))
        -   Add cropping support when modifying the user/org/repo avatar ([#&#8203;33498](https://github.com/go-gitea/gitea/issues/33498))
        -   Make ROOT_URL support using request Host header ([#&#8203;32564](https://github.com/go-gitea/gitea/issues/32564))
        -   Add `show more` organizations icon in user's profile ([#&#8203;32986](https://github.com/go-gitea/gitea/issues/32986))
        -   Introduce `--page-space-bottom` at 64px ([#&#8203;30692](https://github.com/go-gitea/gitea/issues/30692))
        -   Improve theme display ([#&#8203;30671](https://github.com/go-gitea/gitea/issues/30671))
        -   Add alphabetical project sorting ([#&#8203;33504](https://github.com/go-gitea/gitea/issues/33504))
        -   Add global lock for migrations to make upgrade more safe with multiple replications ([#&#8203;33706](https://github.com/go-gitea/gitea/issues/33706))
        -   Add descriptions for private repo public access settings and improve the UI ([#&#8203;34057](https://github.com/go-gitea/gitea/issues/34057))

-   API
    -   Actions Runner rest api ([#&#8203;33873](https://github.com/go-gitea/gitea/issues/33873))
    -   Inclusion of rename organization api ([#&#8203;33303](https://github.com/go-gitea/gitea/issues/33303))
    -   Add API to support link package to repository and unlink it ([#&#8203;33481](https://github.com/go-gitea/gitea/issues/33481))
    -   Add API endpoint to request contents of multiple files simultaniously ([#&#8203;34139](https://github.com/go-gitea/gitea/issues/34139))
    -   Actions artifacts API list/download check status upload confirmed ([#&#8203;34273](https://github.com/go-gitea/gitea/issues/34273))
    -   Add API routes to lock and unlock issues ([#&#8203;34165](https://github.com/go-gitea/gitea/issues/34165))
    -   Fix some user name usages ([#&#8203;33689](https://github.com/go-gitea/gitea/issues/33689))
    -   Allow filtering /repos/{owner}/{repo}/pulls by target base branch queryparam ([#&#8203;33684](https://github.com/go-gitea/gitea/issues/33684))
    -   Improve swagger generation ([#&#8203;33664](https://github.com/go-gitea/gitea/issues/33664))
    -   Support Ephemeral action runners ([#&#8203;33570](https://github.com/go-gitea/gitea/issues/33570))
    -   Support workflow event dispatch via API ([#&#8203;33545](https://github.com/go-gitea/gitea/issues/33545))
    -   Support workflow event dispatch via API ([#&#8203;32059](https://github.com/go-gitea/gitea/issues/32059))
    -   Added Description Field for Secrets and Variables  ([#&#8203;33526](https://github.com/go-gitea/gitea/issues/33526))
    -   Reject star-related requests if stars are disabled ([#&#8203;33208](https://github.com/go-gitea/gitea/issues/33208))
    -   Let API create and edit system webhooks, attempt 2 ([#&#8203;33180](https://github.com/go-gitea/gitea/issues/33180))
    -   Use `Project-URL` metadata field to get a PyPI package's homepage URL ([#&#8203;33089](https://github.com/go-gitea/gitea/issues/33089))
    -   Add `last_committer_date` and `last_author_date` for file contents API ([#&#8203;32921](https://github.com/go-gitea/gitea/issues/32921))

-   REFACTORS
    -   Remove context from git struct ([#&#8203;33793](https://github.com/go-gitea/gitea/issues/33793))
    -   Refactor admin/common.ts ([#&#8203;33788](https://github.com/go-gitea/gitea/issues/33788))
    -   Refactor repo-settings.ts ([#&#8203;33785](https://github.com/go-gitea/gitea/issues/33785))
    -   Refactor repo-issue.ts ([#&#8203;33784](https://github.com/go-gitea/gitea/issues/33784))
    -   Small refactor to reduce unnecessary database queries and remove duplicated functions ([#&#8203;33779](https://github.com/go-gitea/gitea/issues/33779))
    -   Refactor initRepoBranchTagSelector to use new init framework ([#&#8203;33776](https://github.com/go-gitea/gitea/issues/33776))
    -   Refactor buttons to use new init framework ([#&#8203;33774](https://github.com/go-gitea/gitea/issues/33774))
    -   Refactor markup and pdf-viewer to use new init framework ([#&#8203;33772](https://github.com/go-gitea/gitea/issues/33772))
    -   Refactor error system ([#&#8203;33771](https://github.com/go-gitea/gitea/issues/33771))
    -   Refactor mail code ([#&#8203;33768](https://github.com/go-gitea/gitea/issues/33768))
    -   Update TypeScript types ([#&#8203;33799](https://github.com/go-gitea/gitea/issues/33799))
    -   Refactor older tests to use testify ([#&#8203;33140](https://github.com/go-gitea/gitea/issues/33140))
    -   Move notifywatch to service layer ([#&#8203;33825](https://github.com/go-gitea/gitea/issues/33825))
    -   Decouple context from repository related structs ([#&#8203;33823](https://github.com/go-gitea/gitea/issues/33823))
    -   Remove context from mail struct ([#&#8203;33811](https://github.com/go-gitea/gitea/issues/33811))
    -   Refactor dropdown ellipsis ([#&#8203;34123](https://github.com/go-gitea/gitea/issues/34123))
    -   Refactor functions to reduce repopath expose ([#&#8203;33892](https://github.com/go-gitea/gitea/issues/33892))
    -   Refactor repo-diff.ts ([#&#8203;33746](https://github.com/go-gitea/gitea/issues/33746))
    -   Refactor web route handler ([#&#8203;33488](https://github.com/go-gitea/gitea/issues/33488))
    -   Refactor user & avatar ([#&#8203;33433](https://github.com/go-gitea/gitea/issues/33433))
    -   Refactor user package ([#&#8203;33423](https://github.com/go-gitea/gitea/issues/33423))
    -   Refactor decouple context from migration structs ([#&#8203;33399](https://github.com/go-gitea/gitea/issues/33399))
    -   Refactor context flash msg and global variables ([#&#8203;33375](https://github.com/go-gitea/gitea/issues/33375))
    -   Refactor response writer & access logger ([#&#8203;33323](https://github.com/go-gitea/gitea/issues/33323))
    -   Refactor ref type ([#&#8203;33242](https://github.com/go-gitea/gitea/issues/33242))
    -   Refactor context repository ([#&#8203;33202](https://github.com/go-gitea/gitea/issues/33202))
    -   Refactor legacy JS ([#&#8203;33115](https://github.com/go-gitea/gitea/issues/33115))
    -   Refactor legacy line-number and scroll code ([#&#8203;33094](https://github.com/go-gitea/gitea/issues/33094))
    -   Refactor env var related code ([#&#8203;33075](https://github.com/go-gitea/gitea/issues/33075))
    -   Move SetMerged to service layer ([#&#8203;33045](https://github.com/go-gitea/gitea/issues/33045))
    -   Merge updatecommentattachment functions ([#&#8203;33044](https://github.com/go-gitea/gitea/issues/33044))
    -   Refactor pull-request compare\&create page ([#&#8203;33071](https://github.com/go-gitea/gitea/issues/33071))
    -   Refactor repo-new.ts ([#&#8203;33070](https://github.com/go-gitea/gitea/issues/33070))
    -   Refactor pagination ([#&#8203;33037](https://github.com/go-gitea/gitea/issues/33037))
    -   Refactor tests ([#&#8203;33021](https://github.com/go-gitea/gitea/issues/33021))
    -   Refactor markup render to fix various path problems ([#&#8203;34114](https://github.com/go-gitea/gitea/issues/34114))
    -   Refactor Branch struct in package modules/git ([#&#8203;33980](https://github.com/go-gitea/gitea/issues/33980))
    -   Don't create duplicated functions for code repositories and wiki repositories ([#&#8203;33924](https://github.com/go-gitea/gitea/issues/33924))
    -   Move git references checking to gitrepo packages to reduce expose of repository path ([#&#8203;33891](https://github.com/go-gitea/gitea/issues/33891))
    -   Refactor cache-control ([#&#8203;33861](https://github.com/go-gitea/gitea/issues/33861))
    -   Decouple diff stats query from actual diffing ([#&#8203;33810](https://github.com/go-gitea/gitea/issues/33810))
    -   Move part of updating protected branch logic to service layer ([#&#8203;33742](https://github.com/go-gitea/gitea/issues/33742))
    -   Decouple Batch from git.Repository to simplify usage without requiring the creation of a Repository struct. ([#&#8203;34001](https://github.com/go-gitea/gitea/issues/34001))
    -   Refactor tmpl and blob_excerpt ([#&#8203;32967](https://github.com/go-gitea/gitea/issues/32967))
    -   Refactor template & test related code ([#&#8203;32938](https://github.com/go-gitea/gitea/issues/32938))
    -   Refactor db package and remove unnecessary `DumpTables` ([#&#8203;32930](https://github.com/go-gitea/gitea/issues/32930))
    -   Refactor pprof labels and process desc ([#&#8203;32909](https://github.com/go-gitea/gitea/issues/32909))
    -   Refactor repo-projects.ts ([#&#8203;32892](https://github.com/go-gitea/gitea/issues/32892))
    -   Refactor getpatch/getdiff functions and remove unnecessary fallback ([#&#8203;32817](https://github.com/go-gitea/gitea/issues/32817))
    -   Uniform all temporary directories and allow customizing temp path ([#&#8203;32352](https://github.com/go-gitea/gitea/issues/32352))
    -   Remove context from retry downloader ([#&#8203;33871](https://github.com/go-gitea/gitea/issues/33871))
    -   Refactor global init code and add more comments ([#&#8203;33755](https://github.com/go-gitea/gitea/issues/33755))
    -   Remove some unnecessary template helpers ([#&#8203;33069](https://github.com/go-gitea/gitea/issues/33069))
    -   Move and rename UpdateRepository ([#&#8203;34136](https://github.com/go-gitea/gitea/issues/34136))
    -   Move hooks function to gitrepo and reduce expose repopath ([#&#8203;33890](https://github.com/go-gitea/gitea/issues/33890))
    -   Add abstraction layer to delete repository from disk ([#&#8203;33879](https://github.com/go-gitea/gitea/issues/33879))
    -   Add abstraction layer to check if the repository exists on disk ([#&#8203;33874](https://github.com/go-gitea/gitea/issues/33874))
    -   Move ParseCommitWithSSHSignature to service layer ([#&#8203;34087](https://github.com/go-gitea/gitea/issues/34087))
    -   Move duplicated functions ([#&#8203;33977](https://github.com/go-gitea/gitea/issues/33977))
    -   Extract code to their own functions for push update ([#&#8203;33944](https://github.com/go-gitea/gitea/issues/33944))
    -   Move gitgraph from modules to services layer ([#&#8203;33527](https://github.com/go-gitea/gitea/issues/33527))
    -   Move commits signature and verify functions to service layers ([#&#8203;33605](https://github.com/go-gitea/gitea/issues/33605))
    -   Use `CloseIssue` and `ReopenIssue` instead of `ChangeStatus` ([#&#8203;32467](https://github.com/go-gitea/gitea/issues/32467))
    -   Refactor arch route handlers ([#&#8203;32993](https://github.com/go-gitea/gitea/issues/32993))
    -   Refactor "string truncate" ([#&#8203;32984](https://github.com/go-gitea/gitea/issues/32984))
    -   Refactor arch route handlers ([#&#8203;32972](https://github.com/go-gitea/gitea/issues/32972))
    -   Clarify path param naming ([#&#8203;32969](https://github.com/go-gitea/gitea/issues/32969))
    -   Refactor request context ([#&#8203;32956](https://github.com/go-gitea/gitea/issues/32956))
    -   Move some errors to their own sub packages ([#&#8203;32880](https://github.com/go-gitea/gitea/issues/32880))
    -   Move RepoTransfer from models to models/repo sub package ([#&#8203;32506](https://github.com/go-gitea/gitea/issues/32506))
    -   Move delete deploy keys into service layer ([#&#8203;32201](https://github.com/go-gitea/gitea/issues/32201))
    -   Refactor webhook events ([#&#8203;33337](https://github.com/go-gitea/gitea/issues/33337))
    -   Move some Actions related functions from `routers` to `services` ([#&#8203;33280](https://github.com/go-gitea/gitea/issues/33280))
    -   Refactor RefName ([#&#8203;33234](https://github.com/go-gitea/gitea/issues/33234))
    -   Refactor context RefName and RepoAssignment ([#&#8203;33226](https://github.com/go-gitea/gitea/issues/33226))
    -   Refactor repository transfer ([#&#8203;33211](https://github.com/go-gitea/gitea/issues/33211))
    -   Refactor error system ([#&#8203;33626](https://github.com/go-gitea/gitea/issues/33626))
    -   Refactor error system ([#&#8203;33610](https://github.com/go-gitea/gitea/issues/33610))
    -   Refactor package (routes and error handling, npm peer dependency) ([#&#8203;33111](https://github.com/go-gitea/gitea/issues/33111))
    -   Use test context in tests and new loop system in benchmarks ([#&#8203;33648](https://github.com/go-gitea/gitea/issues/33648))
    -   Some small refactors ([#&#8203;33144](https://github.com/go-gitea/gitea/issues/33144))
    -   Simplify context ref name ([#&#8203;33267](https://github.com/go-gitea/gitea/issues/33267))

-   BUGFIXES
    -   Fix some dropdown problems on the issue sidebar ([#&#8203;34308](https://github.com/go-gitea/gitea/issues/34308)) [#&#8203;34327](https://github.com/go-gitea/gitea/issues/34327)
    -   Do not return archive download URLs in API if downloads are disabled ([#&#8203;34324](https://github.com/go-gitea/gitea/issues/34324)) [#&#8203;34338](https://github.com/go-gitea/gitea/issues/34338)
    -   Fix LFS files being editable in web UI ([#&#8203;34356](https://github.com/go-gitea/gitea/issues/34356)) [#&#8203;34362](https://github.com/go-gitea/gitea/issues/34362)
    -   Fix only text/\* being viewable in web UI ([#&#8203;34374](https://github.com/go-gitea/gitea/issues/34374)) [#&#8203;34378](https://github.com/go-gitea/gitea/issues/34378)
    -   Fix LFS file not stored in LFS when uploaded/edited via API or web UI ([#&#8203;34367](https://github.com/go-gitea/gitea/issues/34367))
    -   Grey out expired artifact on Artifacts list ([#&#8203;34314](https://github.com/go-gitea/gitea/issues/34314)) [#&#8203;34404](https://github.com/go-gitea/gitea/issues/34404)
    -   Fix incorrect divergence cache after switching default branch ([#&#8203;34370](https://github.com/go-gitea/gitea/issues/34370)) [#&#8203;34406](https://github.com/go-gitea/gitea/issues/34406)
    -   Refactor commit message rendering and fix bugs ([#&#8203;34412](https://github.com/go-gitea/gitea/issues/34412)) [#&#8203;34414](https://github.com/go-gitea/gitea/issues/34414)
    -   Merge and tweak markup editor expander CSS ([#&#8203;34409](https://github.com/go-gitea/gitea/issues/34409)) [#&#8203;34415](https://github.com/go-gitea/gitea/issues/34415)
    -   Fix GetUsersByEmails ([#&#8203;34423](https://github.com/go-gitea/gitea/issues/34423)) [#&#8203;34425](https://github.com/go-gitea/gitea/issues/34425)
    -   Only git operations should update last changed of a repository ([#&#8203;34388](https://github.com/go-gitea/gitea/issues/34388)) [#&#8203;34427](https://github.com/go-gitea/gitea/issues/34427)
    -   Fix comment textarea scroll issue in Firefox ([#&#8203;34438](https://github.com/go-gitea/gitea/issues/34438)) [#&#8203;34446](https://github.com/go-gitea/gitea/issues/34446)
    -   Fix repo broken check ([#&#8203;34444](https://github.com/go-gitea/gitea/issues/34444)) [#&#8203;34452](https://github.com/go-gitea/gitea/issues/34452)
    -   Fix remove org user failure on mssql ([#&#8203;34449](https://github.com/go-gitea/gitea/issues/34449)) [#&#8203;34453](https://github.com/go-gitea/gitea/issues/34453)
    -   Fix Workflow run Not Found page ([#&#8203;34459](https://github.com/go-gitea/gitea/issues/34459)) [#&#8203;34466](https://github.com/go-gitea/gitea/issues/34466)
    -   When updating comment, if the content is the same, just return and not update the database ([#&#8203;34422](https://github.com/go-gitea/gitea/issues/34422)) [#&#8203;34464](https://github.com/go-gitea/gitea/issues/34464)
    -   Fix project board view ([#&#8203;34470](https://github.com/go-gitea/gitea/issues/34470)) [#&#8203;34475](https://github.com/go-gitea/gitea/issues/34475)
    -   Fix get / delete runner to use consistent http 404 and 500 status ([#&#8203;34480](https://github.com/go-gitea/gitea/issues/34480)) [#&#8203;34488](https://github.com/go-gitea/gitea/issues/34488)
    -   Fix url validation in webhook add/edit API ([#&#8203;34492](https://github.com/go-gitea/gitea/issues/34492)) [#&#8203;34496](https://github.com/go-gitea/gitea/issues/34496)
    -   Fix edithook api can not update package, status and workflow_job events ([#&#8203;34495](https://github.com/go-gitea/gitea/issues/34495)) [#&#8203;34499](https://github.com/go-gitea/gitea/issues/34499)
    -   Fix ephemeral runner deletion ([#&#8203;34447](https://github.com/go-gitea/gitea/issues/34447)) [#&#8203;34513](https://github.com/go-gitea/gitea/issues/34513)
    -   Don't display error log when .git-blame-ignore-revs doesn't exist ([#&#8203;34457](https://github.com/go-gitea/gitea/issues/34457))
    -   Only allow admins to rename default/protected branches ([#&#8203;33276](https://github.com/go-gitea/gitea/issues/33276))
    -   Improve "lock conversation" UI ([#&#8203;34207](https://github.com/go-gitea/gitea/issues/34207))
    -   Fix incorrect file links ([#&#8203;34189](https://github.com/go-gitea/gitea/issues/34189))
    -   Optimize Overflow Menu ([#&#8203;34183](https://github.com/go-gitea/gitea/issues/34183))
    -   Check user/org repo limit instead of doer ([#&#8203;34147](https://github.com/go-gitea/gitea/issues/34147))
    -   Make markdown render match GitHub's behavior ([#&#8203;34129](https://github.com/go-gitea/gitea/issues/34129))
    -   Fix team permission ([#&#8203;34128](https://github.com/go-gitea/gitea/issues/34128))
    -   Correctly handle submodule view and avoid throwing 500 error ([#&#8203;34121](https://github.com/go-gitea/gitea/issues/34121))
    -   Fix users being able bypass limits with repo transfers ([#&#8203;34031](https://github.com/go-gitea/gitea/issues/34031))
    -   Avoid creating unnecessary temporary cat file sub process ([#&#8203;33942](https://github.com/go-gitea/gitea/issues/33942))
    -   Refactor organization menu ([#&#8203;33928](https://github.com/go-gitea/gitea/issues/33928))
    -   Fix various Fomantic UI and htmx problems ([#&#8203;33851](https://github.com/go-gitea/gitea/issues/33851))
    -   Fix 500 error when error occurred in migration page ([#&#8203;33256](https://github.com/go-gitea/gitea/issues/33256))
    -   Validate that the tag doesn't exist when creating a tag via the web ([#&#8203;33241](https://github.com/go-gitea/gitea/issues/33241))
    -   Add missed transaction on setmerged ([#&#8203;33079](https://github.com/go-gitea/gitea/issues/33079))
    -   Rework create/fork/adopt/generate repository to make sure resources will be cleanup once failed ([#&#8203;31035](https://github.com/go-gitea/gitea/issues/31035))
    -   Valid email address should only start with alphanumeric ([#&#8203;28174](https://github.com/go-gitea/gitea/issues/28174))
    -   Fix webhook url ([#&#8203;34186](https://github.com/go-gitea/gitea/issues/34186))
    -   Fix "toAbsoluteLocaleDate" test when system locale is not en-US ([#&#8203;33939](https://github.com/go-gitea/gitea/issues/33939))
    -   Fix file name could not be searched if the file was not a text file when using the Bleve indexer ([#&#8203;33959](https://github.com/go-gitea/gitea/issues/33959))
    -   Fix cannot delete runners via the modal dialog ([#&#8203;33895](https://github.com/go-gitea/gitea/issues/33895))
    -   Fix unpin hint on the pinned pull requests ([#&#8203;33207](https://github.com/go-gitea/gitea/issues/33207))
    -   Fix parentCommit invalid memory address or nil pointer dereference. ([#&#8203;33204](https://github.com/go-gitea/gitea/issues/33204))
    -   Fix comment header padding ([#&#8203;33377](https://github.com/go-gitea/gitea/issues/33377))
    -   Fix some migration and repo name problems ([#&#8203;33986](https://github.com/go-gitea/gitea/issues/33986))
    -   Fix various trivial frontend problems ([#&#8203;34263](https://github.com/go-gitea/gitea/issues/34263))
    -   Fix Set Email Preference dropdown and button placement ([#&#8203;34255](https://github.com/go-gitea/gitea/issues/34255))
    -   Fix quoted replies incorrectly render user input as part of the quote ([#&#8203;34216](https://github.com/go-gitea/gitea/issues/34216))
    -   Fix button alignments and remove unnecessary styles ([#&#8203;34206](https://github.com/go-gitea/gitea/issues/34206))
    -   Restore form inputs on organization create error ([#&#8203;34201](https://github.com/go-gitea/gitea/issues/34201))
    -   Try to fix ACME (3rd) ([#&#8203;33807](https://github.com/go-gitea/gitea/issues/33807))
    -   Fix incorrect ref "blob" ([#&#8203;33240](https://github.com/go-gitea/gitea/issues/33240))
    -   Fix dynamic content loading init problem ([#&#8203;33748](https://github.com/go-gitea/gitea/issues/33748))
    -   Fix git empty check and HEAD request ([#&#8203;33690](https://github.com/go-gitea/gitea/issues/33690))
    -   Fix Untranslated Text on Actions Page ([#&#8203;33635](https://github.com/go-gitea/gitea/issues/33635))
    -   Fix issue label delete incorrect labels webhook payload ([#&#8203;34575](https://github.com/go-gitea/gitea/issues/34575))
    -   Fix incorrect page navigation with up and down arrow on last item of dashboard repos ([#&#8203;34570](https://github.com/go-gitea/gitea/issues/34570))
    -   Fix/improve avatar sync from LDAP ([#&#8203;34573](https://github.com/go-gitea/gitea/issues/34573))
    -   Fix some trivial problems ([#&#8203;34579](https://github.com/go-gitea/gitea/issues/34579))
    -   Retain issue sort type when a keyword search is introduced ([#&#8203;34559](https://github.com/go-gitea/gitea/issues/34559))
    -   Always use an empty line to separate the commit message and trailer ([#&#8203;34512](https://github.com/go-gitea/gitea/issues/34512))
    -   Fix line-button issue after file selection in file tree ([#&#8203;34574](https://github.com/go-gitea/gitea/issues/34574))
    -   Fix doctor deleting orphaned issues attachments ([#&#8203;34142](https://github.com/go-gitea/gitea/issues/34142))
    -   Add webhook assigning test and fix possible bug ([#&#8203;34420](https://github.com/go-gitea/gitea/issues/34420))
    -   Fix possible nil description of pull request when migrating from CodeCommit ([#&#8203;34541](https://github.com/go-gitea/gitea/issues/34541))
    -   Refactor commit reader ([#&#8203;34542](https://github.com/go-gitea/gitea/issues/34542))
    -   Fix possible pull request broken when leave the page immediately after clicking the update button [#&#8203;34509](https://github.com/go-gitea/gitea/issues/34509)
    -   Ignore "Close" error when uploading container blob ([#&#8203;34620](https://github.com/go-gitea/gitea/issues/34620))
    -   Fix missed merge commit sha and time when migrating from codecommit ([#&#8203;34645](https://github.com/go-gitea/gitea/issues/34645))
    -   Fix GetUsersByEmails ([#&#8203;34643](https://github.com/go-gitea/gitea/issues/34643))
    -   Misc CSS fixes ([#&#8203;34638](https://github.com/go-gitea/gitea/issues/34638))
    -   Add codecommit to supported services in api docs ([#&#8203;34626](https://github.com/go-gitea/gitea/issues/34626))
    -   Validate hex colors when creating/editing labels ([#&#8203;34623](https://github.com/go-gitea/gitea/issues/34623))
    -   Fix possible pull request broken when leave the page immediately after clicking the update button ([#&#8203;34509](https://github.com/go-gitea/gitea/issues/34509))
    -   Fix margin issue in markup paragraph rendering ([#&#8203;34599](https://github.com/go-gitea/gitea/issues/34599))
    -   Fix migration pull request title too long ([#&#8203;34577](https://github.com/go-gitea/gitea/issues/34577))
    -   Fix footnote jump behavior on the issue page. ([#&#8203;34621](https://github.com/go-gitea/gitea/issues/34621))
    -   Fix "oras" OCI client compatibility ([#&#8203;34666](https://github.com/go-gitea/gitea/issues/34666))
    -   Fix last admin check when syncing users ([#&#8203;34649](https://github.com/go-gitea/gitea/issues/34649))
    -   Fix skip paths check on tag push events in workflows ([#&#8203;34602](https://github.com/go-gitea/gitea/issues/34602)) [#&#8203;34670](https://github.com/go-gitea/gitea/issues/34670)

-   MISC

    -   Bump to alpine 3.22 ([#&#8203;34613](https://github.com/go-gitea/gitea/issues/34613))
    -   Make pull request and issue history more compact ([#&#8203;34588](https://github.com/go-gitea/gitea/issues/34588))
    -   Run integration tests against postgres 14 ([#&#8203;34514](https://github.com/go-gitea/gitea/issues/34514)) [#&#8203;34536](https://github.com/go-gitea/gitea/issues/34536)
    -   Enable addtional linters ([#&#8203;34085](https://github.com/go-gitea/gitea/issues/34085))
    -   Enable testifylint rules ([#&#8203;34075](https://github.com/go-gitea/gitea/issues/34075))
    -   Enable staticcheck QFxxxx rules ([#&#8203;34064](https://github.com/go-gitea/gitea/issues/34064))
    -   Improve Actions test ([#&#8203;32883](https://github.com/go-gitea/gitea/issues/32883))
    -   Drop fomantic build ([#&#8203;33845](https://github.com/go-gitea/gitea/issues/33845))
    -   Go1.24 ([#&#8203;33562](https://github.com/go-gitea/gitea/issues/33562))
    -   Run yamllint with strict mode, fix issue ([#&#8203;33551](https://github.com/go-gitea/gitea/issues/33551))
    -   Disable cron task to update license ([#&#8203;33486](https://github.com/go-gitea/gitea/issues/33486))
    -   Optimize makefile help information generation ([#&#8203;33390](https://github.com/go-gitea/gitea/issues/33390))
    -   Convert github.com/xanzy/go-gitlab into gitlab.com/gitlab-org/api/client-go ([#&#8203;33126](https://github.com/go-gitea/gitea/issues/33126))
    -   Add missed changelogs ([#&#8203;33649](https://github.com/go-gitea/gitea/issues/33649))
    -   Update .changelog file to add performance label group ([#&#8203;33472](https://github.com/go-gitea/gitea/issues/33472))
    -   Add missing POPULATE_SQUASH_COMMENT_WITH_COMMIT_MESSAGES in app.example.ini ([#&#8203;33363](https://github.com/go-gitea/gitea/issues/33363))
    -   Update README screenshots ([#&#8203;33347](https://github.com/go-gitea/gitea/issues/33347))
    -   Update unrs-resolver ([#&#8203;34279](https://github.com/go-gitea/gitea/issues/34279))
    -   Update go\&js dependencies ([#&#8203;34262](https://github.com/go-gitea/gitea/issues/34262))
    -   Optimize the calling code of queryElems ([#&#8203;34235](https://github.com/go-gitea/gitea/issues/34235))
    -   Update protected_branch.tmpl ([#&#8203;34193](https://github.com/go-gitea/gitea/issues/34193))
    -   Feat/optimize span svg layout ([#&#8203;34185](https://github.com/go-gitea/gitea/issues/34185))
    -   Set MERMAID_MAX_SOURCE_CHARACTERS to 50000 ([#&#8203;34152](https://github.com/go-gitea/gitea/issues/34152))
    -   Update JS and PY deps ([#&#8203;34143](https://github.com/go-gitea/gitea/issues/34143))
    -   Add Chinese translations for README files ([#&#8203;34132](https://github.com/go-gitea/gitea/issues/34132))
    -   Use `overflow-wrap: anywhere` to replace `word-break: break-all` ([#&#8203;34126](https://github.com/go-gitea/gitea/issues/34126))
    -   Clarify ownership in password change error messages ([#&#8203;34092](https://github.com/go-gitea/gitea/issues/34092))
    -   Add toggleClass function in dom.ts ([#&#8203;34063](https://github.com/go-gitea/gitea/issues/34063))
    -   Update to golangci-lint v2 ([#&#8203;34054](https://github.com/go-gitea/gitea/issues/34054))
    -   Update Makefile test comments ([#&#8203;34013](https://github.com/go-gitea/gitea/issues/34013))
    -   Update go mod dependencies ([#&#8203;33988](https://github.com/go-gitea/gitea/issues/33988))
    -   Use filepath.Join instead of path.Join for file system file operations ([#&#8203;33978](https://github.com/go-gitea/gitea/issues/33978))
    -   Prepare common tmpl functions in a middleware ([#&#8203;33957](https://github.com/go-gitea/gitea/issues/33957))
    -   Remove unused or abused styles ([#&#8203;33918](https://github.com/go-gitea/gitea/issues/33918))
    -   Update JS and PY deps, misc tweaks ([#&#8203;33903](https://github.com/go-gitea/gitea/issues/33903))
    -   Try to figure out attribute checker problem ([#&#8203;33901](https://github.com/go-gitea/gitea/issues/33901))
    -   Add lock for a repository pull mirror ([#&#8203;33876](https://github.com/go-gitea/gitea/issues/33876))
    -   Fine tune push mirror UI ([#&#8203;33866](https://github.com/go-gitea/gitea/issues/33866))
    -   Improve issue & code search ([#&#8203;33860](https://github.com/go-gitea/gitea/issues/33860))
    -   Use pullrequestlist instead of \[]\*pullrequest ([#&#8203;33765](https://github.com/go-gitea/gitea/issues/33765))
    -   Upgrade act to 0.261.4 and actions-proto-go to v0.4.1 ([#&#8203;33760](https://github.com/go-gitea/gitea/issues/33760))
    -   Align sidebar gears to the right ([#&#8203;33721](https://github.com/go-gitea/gitea/issues/33721))
    -   Update Go dependencies (skip blevesearch, meilisearch) ([#&#8203;33655](https://github.com/go-gitea/gitea/issues/33655))
    -   Add migrations and doctor fixes ([#&#8203;33556](https://github.com/go-gitea/gitea/issues/33556))
    -   Remove "class-name" from svg icon ([#&#8203;33540](https://github.com/go-gitea/gitea/issues/33540))
    -   Update MAINTAINERS ([#&#8203;33529](https://github.com/go-gitea/gitea/issues/33529))
    -   Add "No data available" display when list is empty ([#&#8203;33517](https://github.com/go-gitea/gitea/issues/33517))
    -   Use `git diff-tree` for `DiffFileTree` on diff pages ([#&#8203;33514](https://github.com/go-gitea/gitea/issues/33514))
    -   Give organisation members access to organisation feeds ([#&#8203;33508](https://github.com/go-gitea/gitea/issues/33508))
    -   Update feishu icon ([#&#8203;33470](https://github.com/go-gitea/gitea/issues/33470))
    -   Hide/disable unusable UI elements when a repository is archived ([#&#8203;33459](https://github.com/go-gitea/gitea/issues/33459))
    -   Update `@github/text-expander-element` to 2.9.0 ([#&#8203;33435](https://github.com/go-gitea/gitea/issues/33435))
    -   Do not access GitRepo when a repo is being created ([#&#8203;33380](https://github.com/go-gitea/gitea/issues/33380))
    -   Fix incorrect ref usages ([#&#8203;33301](https://github.com/go-gitea/gitea/issues/33301))
    -   Prepare for support performance trace ([#&#8203;33286](https://github.com/go-gitea/gitea/issues/33286))
    -   Enable Typescript `noImplicitThis` ([#&#8203;33250](https://github.com/go-gitea/gitea/issues/33250))
    -   Remove unused CSS styles and move some styles to proper files ([#&#8203;33217](https://github.com/go-gitea/gitea/issues/33217))
    -   Add .run to gitignore ([#&#8203;33175](https://github.com/go-gitea/gitea/issues/33175))
    -   Fix typo in gitea downloader test and add missing codebase in `ToGitServiceType` ([#&#8203;33146](https://github.com/go-gitea/gitea/issues/33146))
    -   Remove extended glob pattern from branch protection UI ([#&#8203;33125](https://github.com/go-gitea/gitea/issues/33125))
    -   Clean up legacy form CSS styles ([#&#8203;33081](https://github.com/go-gitea/gitea/issues/33081))
    -   Unset XDG_HOME_CONFIG as gitea manages configuration locations ([#&#8203;33067](https://github.com/go-gitea/gitea/issues/33067))
    -   Add IntelliJ Gateway's .uuid to gitignore ([#&#8203;33052](https://github.com/go-gitea/gitea/issues/33052))
    -   User facing messages for AGit errors ([#&#8203;33012](https://github.com/go-gitea/gitea/issues/33012))
    -   Always show assignees on right ([#&#8203;33006](https://github.com/go-gitea/gitea/issues/33006))
    -   Fix eslint ([#&#8203;33002](https://github.com/go-gitea/gitea/issues/33002))
    -   Update JS dependencies ([#&#8203;32914](https://github.com/go-gitea/gitea/issues/32914))
    -   Bump x/net ([#&#8203;32896](https://github.com/go-gitea/gitea/issues/32896)) ([#&#8203;32900](https://github.com/go-gitea/gitea/issues/32900))
    -   Only activity tab needs heatmap data loading ([#&#8203;34652](https://github.com/go-gitea/gitea/issues/34652))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC41NC4xIiwidXBkYXRlZEluVmVyIjoiNDAuNTQuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsia2luZC9kZXBlbmRlbmN5Il19-->

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/886
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-06-15 12:40:44 +00:00
0d532363eb chore(deps): update subcharts (minor & patch) (#879)
All checks were successful
changelog / changelog (push) Successful in 20s
check-and-test / check-and-test (push) Successful in 1m47s
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-26 00:09:45 +00:00
8f0f44a864 chore(deps): update unittests/bash/bats digest to 5ec2d81 (#878)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-25 00:22:08 +00:00
cf86118976 chore(deps): update subcharts (minor & patch) (#874)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-19 00:20:49 +00:00
7f96084a30 ci: fully re-enable release-workflow 2025-05-16 17:10:37 +02:00
5292684a4a ci: fix release workflow
Some checks failed
generate-chart / release-gitea (push) Has been cancelled
2025-05-16 17:07:16 +02:00
edc42f69a9 fix: ingress unittests 2025-05-16 15:40:13 +02:00
9c607f8a4b docs: refine v12 update notes 2025-05-16 15:28:47 +02:00
6d89d0a1b7 fix: remove ingressClassName (not in use yet) 2025-05-16 15:28:20 +02:00
8f35f45e31 chore: execute releases via git-sv (#865)
Following the creation of the changelog via `git-sv`, the release process can also be simplified.

The new approach only requires to call `git sv tag` from a Maintainer with write access to the repo.
This will create and push the tag.
The release notes and subsequent Gitea release will then be created by the new workflow job.

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/865
Co-authored-by: pat-s <patrick.schratz@gmail.com>
Co-committed-by: pat-s <patrick.schratz@gmail.com>
2025-05-16 13:11:07 +00:00
a94eec4238 refactor: migrate ingress definition out of beta (#679)
### Description of the change

Redesigned ingress configuration to align better with implicit best practices.

### Benefits

- Smarter defaults
- More tests
- Remove [deprecated API Versions](extensions/v1beta1) (e.g. `extensions/v1beta1`) and always use `networking.k8s.io/v1`

### Possible drawbacks

Hopefully 🙃 none

### Applicable issues

fix #674

### Additional information

- Define `ingress.annotations` via helpers
- Move tests from `tests/deployment` to `tests/ingress`
- Use own tests file for ingress tpl tests
- Ensure defaults of `path` and `pathType` are always rendered
- Set top-level default value for `ingress. pathType`
- Change default of `ingress.hosts[0].paths` to `[]` to ensure proper rendering via template

### ⚠ BREAKING

I think all of these changes should be backward comp with existing ingress definitions, but surely worth highlighting in the changelog of the release.

### Checklist

<!-- [Place an '[X]' (no spaces) in all applicable fields. Please remove unrelated fields.] -->

- [x] Parameters are documented in the `values.yaml` and added to the `README.md` using [readme-generator-for-helm](https://github.com/bitnami-labs/readme-generator-for-helm)
- [x] Breaking changes are documented in the `README.md`
- [x] Templating unittests are added

Co-authored-by: justusbunsi <justusbunsi@noreply.gitea.com>
Co-authored-by: justusbunsi <sk.bunsenbrenner@gmail.com>
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/679
Co-authored-by: pat-s <patrick.schratz@gmail.com>
Co-committed-by: pat-s <patrick.schratz@gmail.com>
2025-05-16 13:08:27 +00:00
87272a1244 chore(deps): update dependency go-gitea/gitea to v1.23.8 (#867)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-13 00:15:59 +00:00
ed06694adf chore(deps): update dependency helm-unittest/helm-unittest to v0.8.2 (#866)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-11 00:15:46 +00:00
443a6d0cd7 chore(deps): update postgresql-ha docker tag to v16 (#864)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [postgresql-ha](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/postgresql-ha)) | major | `15.3.17` -> `16.0.3` |

---

### Release Notes

<details>
<summary>bitnami/charts (postgresql-ha)</summary>

### [`v16.0.3`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#1603-2025-05-09)

-   \[bitnami/postgresql-ha]  ⬆️ Update dependency references ([#&#8203;33599](https://github.com/bitnami/charts/pull/33599))

### [`v16.0.2`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#small1602-2025-05-08-small)

-   \[bitnami/postgresql-ha]  ⬆️ Update dependency references ([#&#8203;33576](https://github.com/bitnami/charts/issues/33576)) ([42b31bd](42b31bd7a2)), closes [#&#8203;33576](https://github.com/bitnami/charts/issues/33576)

### [`v16.0.0`](https://github.com/bitnami/charts/blob/HEAD/bitnami/postgresql-ha/CHANGELOG.md#1600-2025-05-08)

-   \[bitnami/postgresql-ha] feat: Customizable Stream Replication Check credentials ([#&#8203;33552](https://github.com/bitnami/charts/issues/33552)) ([cff2e93](cff2e93f9d)), closes [#&#8203;33552](https://github.com/bitnami/charts/issues/33552)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC44LjEiLCJ1cGRhdGVkSW5WZXIiOiI0MC4xMS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJraW5kL2RlcGVuZGVuY3kiXX0=-->

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/864
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-10 13:56:46 +00:00
8854e62572 chore(deps): update workflow dependencies (minor & patch) (#862)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [alpine/helm](https://github.com/alpine-docker/helm) ([changelog](https://github.com/helm/helm)) |  | patch | `3.17.2` -> `3.17.3` |
| [alpine/helm](https://github.com/alpine-docker/helm) ([changelog](https://github.com/helm/helm)) | container | patch | `3.17.2` -> `3.17.3` |
| [commitlint/commitlint](https://github.com/conventional-changelog/commitlint) | container | patch | `19.8.0` -> `19.8.1` |
| [docker.io/thegeeklab/git-sv](https://github.com/thegeeklab/git-sv) | container | patch | `2.0.0` -> `2.0.1` |

---

### Release Notes

<details>
<summary>conventional-changelog/commitlint (commitlint/commitlint)</summary>

### [`v19.8.1`](https://github.com/conventional-changelog/commitlint/blob/HEAD/CHANGELOG.md#1981-2025-05-08)

[Compare Source](https://github.com/conventional-changelog/commitlint/compare/v19.8.0...v19.8.1)

##### Bug Fixes

-   update dependency tinyexec to v1 ([#&#8203;4332](https://github.com/conventional-changelog/commitlint/issues/4332)) ([e49449f](e49449fa94))
-   update dependency tinyexec to v1.0.1 ([#&#8203;4347](https://github.com/conventional-changelog/commitlint/issues/4347)) ([c1b26d1](c1b26d1579))

##### Performance Improvements

-   **rules:** optimize header-trim ([#&#8203;4363](https://github.com/conventional-changelog/commitlint/issues/4363)) ([b7e404b](b7e404bc03))

</details>

<details>
<summary>thegeeklab/git-sv (docker.io/thegeeklab/git-sv)</summary>

### [`v2.0.1`](https://github.com/thegeeklab/git-sv/releases/tag/v2.0.1)

[Compare Source](https://github.com/thegeeklab/git-sv/compare/v2.0.0...v2.0.1)

#### v2.0.1 (2025-05-09)

##### Bug Fixes

-   **deps:** update module dario.cat/mergo to v1.0.2 ([#&#8203;195](https://github.com/thegeeklab/git-sv/issues/195)) ([`3cac8ab`](https://github.com/thegeeklab/git-sv/commit/3cac8ab))
-   **deps:** update module github.com/urfave/cli/v3 to v3.3.2 ([#&#8203;194](https://github.com/thegeeklab/git-sv/issues/194)) ([`6278830`](https://github.com/thegeeklab/git-sv/commit/6278830))

##### Others

-   **deps:** update dependency golangci/golangci-lint to v2.1.6 ([#&#8203;193](https://github.com/thegeeklab/git-sv/issues/193)) ([`d63bf99`](https://github.com/thegeeklab/git-sv/commit/d63bf99))

##### CI Pipeline

-   use github token for link check ([`780f384`](https://github.com/thegeeklab/git-sv/commit/780f384))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC44LjEiLCJ1cGRhdGVkSW5WZXIiOiI0MC44LjEiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImtpbmQvZGVwZW5kZW5jeSJdfQ==-->

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/862
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-10 13:56:13 +00:00
da2d169d65 chore: refine CODEOWNERS to skip request triggers for CI yaml changes 2025-05-10 15:55:55 +02:00
ebb4b1ee49 chore(deps): update subcharts (minor & patch) (#863)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-10 03:22:58 +00:00
e64afe393e chore(deps): update subcharts (minor & patch) (#853)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-06 00:18:49 +00:00
6e4e414771 chore(deps)!: Migrate to Valkey from Redis (#775)
<!--
 Before you open the request please review the following guidelines and tips to help it be more easily integrated:

 - Describe the scope of your change - i.e. what the change does.
 - Describe any known limitations with your change.
 - Please run any tests or examples that can exercise your modified code.

 Thank you for contributing! We will try to review, test and integrate the change as soon as we can.
 -->

### Description of the change

Migrates from Redis to Valkey.

### Benefits

The Redis License is changing from BSD-3-Clause to RSALv2 and SSPLv1 which are not open source under the OSI definition. We should consider open-source alternatives as a default replacement for Redis.

### Possible drawbacks

Large scale change, potentially breaking.

### Applicable issues

https://github.com/go-gitea/gitea/issues/32056

### ⚠ BREAKING

Major version change, redis provider changed to valkey.

### Checklist

<!-- [Place an '[X]' (no spaces) in all applicable fields. Please remove unrelated fields.] -->

- [X] Parameters are documented in the `values.yaml` and added to the `README.md` using [readme-generator-for-helm](https://github.com/bitnami-labs/readme-generator-for-helm)
- [X] Breaking changes are documented in the `README.md`
- [X] Helm templating unittests are added (required when changing anything in `templates` folder)

Co-authored-by: pat-s <patrick.schratz@gmail.com>
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/775
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: Sean Teo <sawntoe@gmail.com>
Co-committed-by: Sean Teo <sawntoe@gmail.com>
2025-05-05 08:12:41 +00:00
037eca0c91 chore(config): migrate renovate config (#861)
The Renovate config in this repository needs migrating. Typically this is because one or more configuration options you are using have been renamed.

  You don't need to merge this PR right away, because Renovate will continue to migrate these fields internally each time it runs. But later some of these fields may be fully deprecated and the migrations removed. So it's a good idea to merge this migration PR soon.

#### [PLEASE NOTE](https://docs.renovatebot.com/configuration-options#configmigration): JSON5 config file migrated! All comments & trailing commas were removed.

🔕 **Ignore**: Close this PR and you won't be reminded about config migration again, but one day your current config may no longer be valid.

 Got questions? Does something look wrong to you? Please don't hesitate to [request help here](https://github.com/renovatebot/renovate/discussions).

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/861
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-05 07:01:15 +00:00
d10adfd064 chore(deps): update docker.io/thegeeklab/git-sv docker tag to v2 (#860)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [docker.io/thegeeklab/git-sv](https://github.com/thegeeklab/git-sv) | container | major | `1.0.14` -> `2.0.0` |

---

### Release Notes

<details>
<summary>thegeeklab/git-sv (docker.io/thegeeklab/git-sv)</summary>

### [`v2.0.0`](https://github.com/thegeeklab/git-sv/releases/tag/v2.0.0)

[Compare Source](https://github.com/thegeeklab/git-sv/compare/v1.0.14...v2.0.0)

#### v2.0.0 (2025-04-30)

##### Bug Fixes

-   **deps:** update module github.com/urfave/cli/v3 to v3.3.1 ([#&#8203;190](https://github.com/thegeeklab/git-sv/issues/190)) ([`6c0e0f8`](https://github.com/thegeeklab/git-sv/commit/6c0e0f8))

##### Code Refactoring

-   migrate git commands to go-git ([#&#8203;188](https://github.com/thegeeklab/git-sv/issues/188)) ([`accf3d1`](https://github.com/thegeeklab/git-sv/commit/accf3d1))

##### Others

-   **docker:** update docker.io/library/golang:1.24.2 docker digest to [`30baaea`](https://github.com/thegeeklab/git-sv/commit/30baaea) ([#&#8203;191](https://github.com/thegeeklab/git-sv/issues/191)) ([`9b411e2`](https://github.com/thegeeklab/git-sv/commit/9b411e2))
-   **deps:** update dependency golangci/golangci-lint to v2.1.5 ([#&#8203;189](https://github.com/thegeeklab/git-sv/issues/189)) ([`400bb96`](https://github.com/thegeeklab/git-sv/commit/400bb96))
-   add tests for git exec commands ([#&#8203;187](https://github.com/thegeeklab/git-sv/issues/187)) ([`70615ab`](https://github.com/thegeeklab/git-sv/commit/70615ab))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - Only on Sunday and Saturday ( * * * * 0,6 ) (UTC), Automerge - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC4xLjEiLCJ1cGRhdGVkSW5WZXIiOiI0MC4xLjEiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImtpbmQvZGVwZW5kZW5jeSJdfQ==-->

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/860
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-04 07:08:41 +00:00
a1fc670df5 chore(deps): update docker.io/thegeeklab/git-sv docker tag to v1.0.14 (#858)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-04 00:04:30 +00:00
0cfe38aec5 chore(deps): update unittests/bash/bats digest to fed179f (#857)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-05-03 00:15:16 +00:00
5410bb08c2 chore(deps): update dependency go-gitea/gitea to v1.23.7 (#852)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-04-09 00:04:40 +00:00
3b32a04b9c chore(actions): check actions is not configured (#849)
This is @ChristopherHX's PR

### Description of the change

Do not silently ignore actions.enabled set by user.

### Benefits

Everybody who has enabled actions act_runner do not silently end up without runners, but directly see an actionable error message.

### Possible drawbacks

You need to remove the actions section from your own values.yml to upgrade/install this chart.

The Migration Guide has not been written yet, I consider this issue as a community wiki where other maintainers are free to edit my initial post.

### Applicable issues

N/A

### Additional information

I couldn't add helm-gitea as a dependency, because of
- conflict with a7035ca4e5/templates/_helpers.tpl (L223-L230)
  with one difference helm-actions did not have the referenced values and failed to render
- after resolving the above by either renaming in the helm-actions chart or removal of this leftover code in helm-gitea
  - helm does not allow me to derive dynamic default values for the `actions` section for the subchart
  - using yaml anchors only provided default values into helm-actions, without respecting user changes
  - I only found a feature request
- It is not feasible for me in short term to add support of this section back using helm-actions
### Checklist

- [X] Helm templating unittests are added (required when changing anything in `templates` folder)

Co-authored-by: Christopher Homberger <christopher.homberger@web.de>
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/849
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: techknowlogick <techknowlogick@noreply.gitea.com>
Co-committed-by: techknowlogick <techknowlogick@noreply.gitea.com>
2025-04-07 09:16:22 +00:00
5b247ea860 chore(deps): update dependency helm-unittest/helm-unittest to v0.8.1 (#851)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [helm-unittest/helm-unittest](https://github.com/helm-unittest/helm-unittest) | minor | `v0.7.2` -> `v0.8.1` |

---

### Release Notes

<details>
<summary>helm-unittest/helm-unittest (helm-unittest/helm-unittest)</summary>

### [`v0.8.1`](https://github.com/helm-unittest/helm-unittest/releases/tag/v0.8.1)

[Compare Source](https://github.com/helm-unittest/helm-unittest/compare/v0.8.0...v0.8.1)

**Fixes**

-   Fix special characters in template filename (resolves [#&#8203;619](https://github.com/helm-unittest/helm-unittest/issues/619))
-   Fix tests with conditional sub-charts fail to find templates since 0.8.0 (resolves [#&#8203;588](https://github.com/helm-unittest/helm-unittest/issues/588), credits [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk))
-   Fix skipEmptyTemplate fails when no matching templates are found (resolves [#&#8203;609](https://github.com/helm-unittest/helm-unittest/issues/609), credits [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk))

**Improvements**

-   Improvement enable documentSelector for hasDocument asserts (resolves [#&#8203;590](https://github.com/helm-unittest/helm-unittest/issues/590))-
-   Improvement by supporting ppc64le (credits [@&#8203;Vaibhav-Nazare](https://github.com/Vaibhav-Nazare))
-   Improvement refactoring configs for jobs and assertions (credits credits [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk))

**Updates**

-   Update packages to latest patch versions
-   Update pipeline actions
-   Update documentation (credits [@&#8203;bogdan-deac](https://github.com/bogdan-deac))

### [`v0.8.0`](https://github.com/helm-unittest/helm-unittest/releases/tag/v0.8.0)

[Compare Source](https://github.com/helm-unittest/helm-unittest/compare/v0.7.2...v0.8.0)

**Features**

-   Add flag to exclude certain templates from testing (resolves [#&#8203;169](https://github.com/helm-unittest/helm-unittest/issues/169), credits [@&#8203;snorwin](https://github.com/snorwin))
-   Support for test packaged helmcharts (resolves [#&#8203;186](https://github.com/helm-unittest/helm-unittest/issues/186), resolves [#&#8203;250](https://github.com/helm-unittest/helm-unittest/issues/250))
-   Support to allow skipping tests (resolves [#&#8203;504](https://github.com/helm-unittest/helm-unittest/issues/504), credits [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk))
-   Add helm post-renderer option (resolves [#&#8203;574](https://github.com/helm-unittest/helm-unittest/issues/574), credits [@&#8203;jcogilvie](https://github.com/jcogilvie))

**Fixes**

-   Resolve multiline errormessages (resolves [#&#8203;559](https://github.com/helm-unittest/helm-unittest/issues/559), credits [@&#8203;ivankatliarchuk](https://github.com/ivankatliarchuk))

**Updates**

-   Update packages to latest patch versions
-   Update pipeline actions
-   Update documentation

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "* * * * 0,6" (UTC), Automerge - "* 0-3 * * *" (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMzMuMCIsInVwZGF0ZWRJblZlciI6IjM5LjIzMy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJraW5kL2RlcGVuZGVuY3kiXX0=-->

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/851
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-04-05 08:20:36 +00:00
3aea811f1f chore(actions): remove obsolete gitea.act_runner.local_root_url (#850)
Co-authored-by: Christopher Homberger <christopher.homberger@web.de>
Co-committed-by: Christopher Homberger <christopher.homberger@web.de>
2025-04-04 20:18:59 +00:00
a7035ca4e5 feat: make it configurable of the initContainers volume mount path for scripts (#848)
### Description of the change

Makes it configurable volume mount path for initContainers for init scripts

### Benefits

Configurable initContainers volumeMount path for init scripts

### Possible drawbacks

I don't think that there will be any drawbacks

### Applicable issues

- Fixes #847

Signed-off-by: Batuhan Apaydin <batuhan.apaydin@chainguard.dev>

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/848
Reviewed-by: justusbunsi <justusbunsi@noreply.gitea.com>
Co-authored-by: developerguy <developerguy@noreply.gitea.com>
Co-committed-by: developerguy <developerguy@noreply.gitea.com>
2025-04-03 18:03:13 +00:00
fa36d2beef fix: reverting use of TPL in "gitea.inline_configuration" (#846)
### Description of the change

Reverting TPL use in "gitea.inline_configuration" mistakenly committed under https://gitea.com/gitea/helm-gitea/pulls/840

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/846
Reviewed-by: justusbunsi <justusbunsi@noreply.gitea.com>
Co-authored-by: Ceddaerrix <ceddaerrix@noreply.gitea.com>
Co-committed-by: Ceddaerrix <ceddaerrix@noreply.gitea.com>
2025-03-31 10:46:51 +00:00
6c5b42c482 refactor!: remove actions related files (#825)
see #824

Co-authored-by: justusbunsi <justusbunsi@noreply.gitea.com>
Co-authored-by: justusbunsi <sk.bunsenbrenner@gmail.com>
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/825
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Reviewed-by: justusbunsi <justusbunsi@noreply.gitea.com>
Co-authored-by: pat-s <patrick.schratz@gmail.com>
Co-committed-by: pat-s <patrick.schratz@gmail.com>
2025-03-31 07:47:23 +00:00
356dd6e710 chore(renovate): group bats framework dependencies (#844)
Related to https://gitea.com/gitea/helm-gitea/pulls/724#issuecomment-995049

Groups following updates:

- unittests/bash/bats
- unittests/bash/test_helper/bats-assert
- unittests/bash/test_helper/bats-mock
- unittests/bash/test_helper/bats-support

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/844
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Co-authored-by: justusbunsi <sk.bunsenbrenner@gmail.com>
Co-committed-by: justusbunsi <sk.bunsenbrenner@gmail.com>
2025-03-31 07:41:02 +00:00
1f313ac70e feat: adding dry support to gitea additional config from envs parameter (#840)
### Description of the change

Based on the discussion under https://gitea.com/gitea/helm-gitea/issues/60, it is possible to use `gitea.additionalConfigFromEnvs` to provide variables in order to override configurations from `app.ini`.
Especially when using gitea as a dependency of an umbrella, some values may need to be repeated in multiple places (such has database configuration). Hence, introducing the `tpl` function on `gitea.additionalConfigFromEnvs` will simplify such repetition by having the value only set in one place...

### Benefits

With the same intentions as https://gitea.com/gitea/helm-gitea/pulls/759, https://gitea.com/gitea/helm-gitea/pulls/664, https://gitea.com/gitea/helm-gitea/pulls/529 or https://gitea.com/gitea/helm-gitea/pulls/498, this change will allow reusing the value from other value parameters to avoid duplicating the same value in multiple places.

### Possible drawbacks

N/A

### Applicable issues

N/A

### Additional information

N/A

### Checklist

- [X] Helm templating unittests are added (required when changing anything in `templates` folder)

Co-authored-by: 212597596 <cedric.henry@ge.com>
Co-authored-by: pat-s <pat-s@noreply.gitea.com>
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/840
Reviewed-by: pat-s <pat-s@noreply.gitea.com>
Reviewed-by: justusbunsi <justusbunsi@noreply.gitea.com>
Co-authored-by: Ceddaerrix <ceddaerrix@noreply.gitea.com>
Co-committed-by: Ceddaerrix <ceddaerrix@noreply.gitea.com>
2025-03-30 14:30:35 +00:00
d2d542e625 chore(deps): update workflow dependencies (minor & patch) (#827)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [alpine/helm](https://github.com/alpine-docker/helm) ([changelog](https://github.com/helm/helm)) |  | patch | `3.17.1` -> `3.17.2` |
| [alpine/helm](https://github.com/alpine-docker/helm) ([changelog](https://github.com/helm/helm)) | container | patch | `3.17.1` -> `3.17.2` |
| [commitlint/commitlint](https://github.com/conventional-changelog/commitlint) | container | minor | `19.7.1` -> `19.8.0` |
| [docker.io/thegeeklab/git-sv](https://github.com/thegeeklab/git-sv) | container | patch | `1.0.12` -> `1.0.13` |

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).

Co-authored-by: justusbunsi <sk.bunsenbrenner@gmail.com>
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/827
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-03-30 12:49:34 +00:00
75cd261b37 chore(deps): update subcharts (minor & patch) (#816)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [postgresql](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/postgresql)) | minor | `16.4.14` -> `16.6.0` |
| [postgresql-ha](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/postgresql-ha)) | minor | `15.2.3` -> `15.3.8` |
| [redis](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/redis)) | minor | `20.8.0` -> `20.11.4` |
| [redis-cluster](https://github.com/bitnami/charts) ([source](https://github.com/bitnami/charts/tree/HEAD/bitnami/redis-cluster)) | patch | `11.4.3` -> `11.4.6` |

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/816
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-03-30 12:14:51 +00:00
2c78da9c3e docs: set full path of values.yaml key in output to user (#832)
Some checks failed
generate-chart / generate-chart-publish (push) Has been cancelled
Currently, the reported path of the values to be changed is not always correct (especially `gitea.persistence` vs. `persistence`).

Co-authored-by: techknowlogick <techknowlogick@noreply.gitea.com>
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/832
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.com>
Co-authored-by: bachorp <bachorp@noreply.gitea.com>
Co-committed-by: bachorp <bachorp@noreply.gitea.com>
2025-03-26 17:16:17 +00:00
06f5179273 docs: fix typo in initialization script (#842)
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/842
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.com>
Co-authored-by: bachorp <gitea.revivable069@passmail.net>
Co-committed-by: bachorp <gitea.revivable069@passmail.net>
2025-03-26 17:12:56 +00:00
e7e2ae9610 chore(deps): update dependency go-gitea/gitea to v1.23.6 (#838)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-03-25 00:18:08 +00:00
62f5ed6d46 chore(deps): update unittests/bash/test_helper/bats-assert digest to b93143a (#837)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-03-24 00:16:56 +00:00
d2e9bcf4b8 chore(deps): update unittests/bash/bats digest to 3172a45 (#835)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-03-24 00:05:48 +00:00
b44d43d2b0 chore(deps): update unittests/bash/test_helper/bats-support digest to d007fc1 (#836)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-03-23 00:05:43 +00:00
03918a126b chore(deps): update unittests/bash/bats digest to 261b029 (#830)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-03-17 00:17:10 +00:00
8d3f4d2260 chore(deps): update unittests/bash/test_helper/bats-assert digest to 0ec504e (#826)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| unittests/bash/test_helper/bats-assert | digest | `e2d855b` -> `0ec504e` |

---

### Configuration

📅 **Schedule**: Branch creation - "* * * * 0,6" (UTC), Automerge - "* 0-3 * * *" (UTC).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOTAuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE5MC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJraW5kL2RlcGVuZGVuY3kiXX0=-->

Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/826
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-03-08 08:57:43 +00:00
74d550922b chore: chart renaming aftermath 2025-03-06 22:29:58 +01:00
7245b3b4cc chore: change repo name to helm-gitea (#823)
Co-authored-by: techknowlogick <techknowlogick@gitea.com>
Reviewed-on: https://gitea.com/gitea/helm-gitea/pulls/823
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.com>
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: pat-s <patrick.schratz@gmail.com>
Co-committed-by: pat-s <patrick.schratz@gmail.com>
2025-03-06 20:54:40 +00:00
c0cadb9056 chore(deps): update dependency go-gitea/gitea to v1.23.5 (#822)
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
2025-03-06 00:06:34 +00:00
66 changed files with 1288 additions and 1745 deletions

114
.gitea/scripts/add-annotations.sh Executable file
View File

@ -0,0 +1,114 @@
#!/bin/bash
set -e
CHART_FILE="Chart.yaml"
if [ ! -f "${CHART_FILE}" ]; then
echo "ERROR: ${CHART_FILE} not found!" 1>&2
exit 1
fi
DEFAULT_NEW_TAG="$(git tag --sort=-version:refname | head -n 1)"
DEFAULT_OLD_TAG="$(git tag --sort=-version:refname | head -n 2 | tail -n 1)"
if [ -z "${1}" ]; then
read -p "Enter start tag [${DEFAULT_OLD_TAG}]: " OLD_TAG
if [ -z "${OLD_TAG}" ]; then
OLD_TAG="${DEFAULT_OLD_TAG}"
fi
while [ -z "$(git tag --list "${OLD_TAG}")" ]; do
echo "ERROR: Tag '${OLD_TAG}' not found!" 1>&2
read -p "Enter start tag [${DEFAULT_OLD_TAG}]: " OLD_TAG
if [ -z "${OLD_TAG}" ]; then
OLD_TAG="${DEFAULT_OLD_TAG}"
fi
done
else
OLD_TAG=${1}
if [ -z "$(git tag --list "${OLD_TAG}")" ]; then
echo "ERROR: Tag '${OLD_TAG}' not found!" 1>&2
exit 1
fi
fi
if [ -z "${2}" ]; then
read -p "Enter end tag [${DEFAULT_NEW_TAG}]: " NEW_TAG
if [ -z "${NEW_TAG}" ]; then
NEW_TAG="${DEFAULT_NEW_TAG}"
fi
while [ -z "$(git tag --list "${NEW_TAG}")" ]; do
echo "ERROR: Tag '${NEW_TAG}' not found!" 1>&2
read -p "Enter end tag [${DEFAULT_NEW_TAG}]: " NEW_TAG
if [ -z "${NEW_TAG}" ]; then
NEW_TAG="${DEFAULT_NEW_TAG}"
fi
done
else
NEW_TAG=${2}
if [ -z "$(git tag --list "${NEW_TAG}")" ]; then
echo "ERROR: Tag '${NEW_TAG}' not found!" 1>&2
exit 1
fi
fi
CHANGE_LOG_YAML=$(mktemp)
echo "[]" > "${CHANGE_LOG_YAML}"
function map_type_to_kind() {
case "${1}" in
feat)
echo "added"
;;
fix)
echo "fixed"
;;
chore|style|test|ci|docs|refac)
echo "changed"
;;
revert)
echo "removed"
;;
sec)
echo "security"
;;
*)
echo "skip"
;;
esac
}
COMMIT_TITLES="$(git log --pretty=format:"%s" "${OLD_TAG}..${NEW_TAG}")"
echo "INFO: Generate change log entries from ${OLD_TAG} until ${NEW_TAG}"
while IFS= read -r line; do
if [[ "${line}" =~ ^([a-zA-Z]+)(\([^\)]+\))?\:\ (.+)$ ]]; then
TYPE="${BASH_REMATCH[1]}"
KIND=$(map_type_to_kind "${TYPE}")
if [ "${KIND}" == "skip" ]; then
continue
fi
DESC="${BASH_REMATCH[3]}"
echo "- ${KIND}: ${DESC}"
jq --arg kind "${KIND}" --arg description "${DESC}" '. += [ $ARGS.named ]' < "${CHANGE_LOG_YAML}" > "${CHANGE_LOG_YAML}.new"
mv "${CHANGE_LOG_YAML}.new" "${CHANGE_LOG_YAML}"
fi
done <<< "${COMMIT_TITLES}"
if [ -s "${CHANGE_LOG_YAML}" ]; then
yq --inplace --input-format json --output-format yml "${CHANGE_LOG_YAML}"
yq --no-colors --inplace ".annotations.\"artifacthub.io/changes\" |= loadstr(\"${CHANGE_LOG_YAML}\") | sort_keys(.)" "${CHART_FILE}"
else
echo "ERROR: Changelog file is empty: ${CHANGE_LOG_YAML}" 1>&2
exit 1
fi
rm "${CHANGE_LOG_YAML}"

View File

@ -8,7 +8,7 @@ on:
jobs:
changelog:
runs-on: ubuntu-latest
container: docker.io/thegeeklab/git-sv:1.0.12
container: docker.io/thegeeklab/git-sv:2.0.4
steps:
- name: install tools
run: |
@ -20,13 +20,13 @@ jobs:
run: |
git sv rn -o changelog.md
export RELEASE_NOTES=$(cat changelog.md)
export ISSUE_NUMBER=$(curl -s "https://gitea.com/api/v1/repos/gitea/helm-chart/issues?state=open&q=Changelog%20for%20upcoming%20version" | jq '.[].number')
export ISSUE_NUMBER=$(curl -s "https://gitea.com/api/v1/repos/gitea/helm-gitea/issues?state=open&q=Changelog%20for%20upcoming%20version" | jq '.[].number')
echo $RELEASE_NOTES
JSON_DATA=$(echo "" | jq -Rs --arg title 'Changelog for upcoming version' --arg body "$(cat changelog.md)" '{title: $title, body: $body}')
if [ -z "$ISSUE_NUMBER" ]; then
curl -s -X POST "https://gitea.com/api/v1/repos/gitea/helm-chart/issues" -H "Authorization: token ${{ secrets.ISSUE_RW_TOKEN }}" -H "Content-Type: application/json" -d "$JSON_DATA"
curl -s -X POST "https://gitea.com/api/v1/repos/gitea/helm-gitea/issues" -H "Authorization: token ${{ secrets.ISSUE_RW_TOKEN }}" -H "Content-Type: application/json" -d "$JSON_DATA"
else
curl -s -X PATCH "https://gitea.com/api/v1/repos/gitea/helm-chart/issues/$ISSUE_NUMBER" -H "Authorization: token ${{ secrets.ISSUE_RW_TOKEN }}" -H "Content-Type: application/json" -d "$JSON_DATA"
curl -s -X PATCH "https://gitea.com/api/v1/repos/gitea/helm-gitea/issues/$ISSUE_NUMBER" -H "Authorization: token ${{ secrets.ISSUE_RW_TOKEN }}" -H "Content-Type: application/json" -d "$JSON_DATA"
fi

View File

@ -11,7 +11,7 @@ on:
jobs:
check-and-test:
runs-on: ubuntu-latest
container: commitlint/commitlint:19.7.1
container: commitlint/commitlint:19.8.1
steps:
- uses: actions/checkout@v4
- name: check PR title

View File

@ -5,33 +5,51 @@ on:
tags:
- "*"
env:
# renovate: datasource=docker depName=alpine/helm
HELM_VERSION: "3.17.1"
jobs:
generate-chart-publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install tools
with:
fetch-depth: 0
- name: Install packages via apt
run: |
apt update -y
apt install -y curl ca-certificates curl gnupg
# helm
curl -O https://get.helm.sh/helm-v${{ env.HELM_VERSION }}-linux-amd64.tar.gz
tar -xzf helm-v${{ env.HELM_VERSION }}-linux-amd64.tar.gz
mv linux-amd64/helm /usr/local/bin/
rm -rf linux-amd64 helm-v${{ env.HELM_VERSION }}-linux-amd64.tar.gz
apt update --yes
apt install --yes curl ca-certificates curl gnupg jq
- name: Install helm
env:
# renovate: datasource=docker depName=alpine/helm
HELM_VERSION: "3.18.4"
run: |
curl --fail --location --output /dev/stdout --silent --show-error https://get.helm.sh/helm-v${HELM_VERSION}-linux-$(dpkg --print-architecture).tar.gz | tar --extract --gzip --file /dev/stdin
mv linux-$(dpkg --print-architecture)/helm /usr/local/bin/
rm --force --recursive linux-$(dpkg --print-architecture) helm-v${HELM_VERSION}-linux-$(dpkg --print-architecture).tar.gz
helm version
# docker
- name: Install yq
env:
YQ_VERSION: v4.45.4 # renovate: datasource=github-releases depName=mikefarah/yq
run: |
curl --fail --location --output /dev/stdout --silent --show-error https://github.com/mikefarah/yq/releases/download/${YQ_VERSION}/yq_linux_$(dpkg --print-architecture).tar.gz | tar --extract --gzip --file /dev/stdin
mv yq_linux_$(dpkg --print-architecture) /usr/local/bin
rm --force --recursive yq_linux_$(dpkg --print-architecture) yq_linux_$(dpkg --print-architecture).tar.gz
yq --version
- name: Install docker-ce via apt
run: |
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
curl --fail --location --silent --show-error https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
apt update -y
apt install -y python3 python3-pip apt-transport-https docker-ce-cli
apt update --yes
apt install --yes python3 python3-pip apt-transport-https docker-ce-cli
- name: Install awscli
run: |
pip install awscli --break-system-packages
aws --version
- name: Import GPG key
id: import_gpg
@ -41,6 +59,15 @@ jobs:
passphrase: ${{ secrets.GPGSIGN_PASSPHRASE }}
fingerprint: CC64B1DB67ABBEECAB24B6455FC346329753F4B0
- name: Add Artifacthub.io annotations
run: |
NEW_TAG="$(git tag --sort=-version:refname | head --lines 1)"
OLD_TAG="$(git tag --sort=-version:refname | head --lines 2 | tail --lines 1)"
.gitea/scripts/add-annotations.sh "${OLD_TAG}" "${NEW_TAG}"
- name: Print Chart.yaml
run: cat Chart.yaml
# Using helm gpg plugin as 'helm package --sign' has issues with gpg2: https://github.com/helm/helm/issues/2843
- name: package chart
run: |
@ -51,7 +78,7 @@ jobs:
helm package --version "${GITHUB_REF#refs/tags/v}" ./
mkdir gitea
mv gitea*.tgz gitea/
curl -s -L -o gitea/index.yaml https://dl.gitea.com/charts/index.yaml
curl --fail --location --output gitea/index.yaml --silent --show-error https://dl.gitea.com/charts/index.yaml
helm repo index gitea/ --url https://dl.gitea.com/charts --merge gitea/index.yaml
# push to dockerhub
echo ${{ secrets.DOCKER_CHARTS_PASSWORD }} | helm registry login -u ${{ secrets.DOCKER_CHARTS_USERNAME }} registry-1.docker.io --password-stdin
@ -68,3 +95,29 @@ jobs:
- name: Copy files to S3 and clear cache
run: |
aws s3 sync gitea/ s3://${{ secrets.AWS_S3_BUCKET}}/charts/
release-gitea:
needs: generate-chart-publish
runs-on: ubuntu-latest
container: docker.io/thegeeklab/git-sv:2.0.4
steps:
- name: install tools
run: |
apk add -q --update --no-cache nodejs
- uses: actions/checkout@v4
with:
fetch-tags: true
fetch-depth: 0
- name: Create changelog
run: |
git sv current-version
git sv release-notes -t ${GITHUB_REF#refs/tags/} -o CHANGELOG.md
sed -i '1,2d' CHANGELOG.md # remove version
cat CHANGELOG.md
- name: Release
uses: https://github.com/akkuman/gitea-release-action@v1
with:
body_path: CHANGELOG.md
token: "${{ secrets.RELEASE_TOKEN }}"

View File

@ -10,12 +10,12 @@ on:
env:
# renovate: datasource=github-releases depName=helm-unittest/helm-unittest
HELM_UNITTEST_VERSION: "v0.7.2"
HELM_UNITTEST_VERSION: "v1.0.0"
jobs:
check-and-test:
runs-on: ubuntu-latest
container: alpine/helm:3.17.1
container: alpine/helm:3.18.4
steps:
- name: install tools
run: |

View File

@ -1,6 +1,6 @@
{
"yaml.schemas": {
"https://raw.githubusercontent.com/helm-unittest/helm-unittest/v0.7.2/schema/helm-testsuite.json": [
"https://raw.githubusercontent.com/helm-unittest/helm-unittest/v1.0.0/schema/helm-testsuite.json": [
"/unittests/**/*.yaml"
]
},

View File

@ -1 +1 @@
* @justusbunsi @pat-s
charts/*

View File

@ -38,7 +38,7 @@ be used:
1. Install `minikube` and `helm`.
1. Start a `minikube` cluster via `minikube start`.
1. From the `gitea/helm-chart` directory execute the following command.
1. From the `gitea/helm-gitea` directory execute the following command.
This will install the dependencies listed in `Chart.yml` and deploy the current state of the helm chart found locally.
If you want to test a branch, make sure to switch to the respective branch first.
`helm install --dependency-update gitea . -f values.yaml`.
@ -75,6 +75,6 @@ See [bats documentation](https://bats-core.readthedocs.io/en/stable/) for usage
## Release process
1. Create a tag following the tagging schema
1. Push the tag
1. Ensure you have [`git-sv`](https://github.com/thegeeklab/git-sv) installed
1. Run `git sv tag` (this creates and pushes the tag following the respective next tag according to the semver commits issued since the last release)
1. Let CI do it's work

View File

@ -1,15 +1,15 @@
dependencies:
- name: postgresql
repository: oci://registry-1.docker.io/bitnamicharts
version: 16.4.14
version: 16.7.26
- name: postgresql-ha
repository: oci://registry-1.docker.io/bitnamicharts
version: 15.2.3
- name: redis-cluster
version: 16.2.2
- name: valkey-cluster
repository: oci://registry-1.docker.io/bitnamicharts
version: 11.4.3
- name: redis
version: 3.0.23
- name: valkey
repository: oci://registry-1.docker.io/bitnamicharts
version: 20.8.0
digest: sha256:ce1a2a02c3e1adb764cae42ccce1efd2d41adb5024576e6d8a92b30b8dfe67db
generated: "2025-02-23T00:12:41.541107288Z"
version: 3.0.30
digest: sha256:efbb4d491704539d74879b7679bdd39bd727b6dead920c50a7126866e9c1c2fa
generated: "2025-08-14T21:44:28.086112741Z"

View File

@ -4,7 +4,7 @@ description: Gitea Helm chart for Kubernetes
type: application
version: 0.0.0
# renovate datasource=github-releases depName=go-gitea/gitea extractVersion=^v(?<version>.*)$
appVersion: 1.23.4
appVersion: 1.24.5
icon: https://gitea.com/assets/img/logo.svg
keywords:
@ -15,9 +15,9 @@ keywords:
- gitea
- gogs
sources:
- https://gitea.com/gitea/helm-chart
- https://gitea.com/gitea/helm-gitea
- https://github.com/go-gitea/gitea
- https://hub.docker.com/r/gitea/gitea/
- https://docker.gitea.com/gitea
maintainers:
- name: Charlie Drage
email: charlie@charliedrage.com
@ -27,29 +27,25 @@ maintainers:
email: konrad.lother@novum-rgi.de
- name: Lucas Hahn
email: lucas.hahn@novum-rgi.de
- name: Steven Kriegler
email: sk.bunsenbrenner@gmail.com
- name: Patrick Schratz
email: patrick.schratz@gmail.com
dependencies:
# https://github.com/bitnami/charts/blob/main/bitnami/postgresql
- name: postgresql
repository: oci://registry-1.docker.io/bitnamicharts
version: 16.4.14
version: 16.7.26
condition: postgresql.enabled
# https://github.com/bitnami/charts/blob/main/bitnami/postgresql-ha/Chart.yaml
- name: postgresql-ha
repository: oci://registry-1.docker.io/bitnamicharts
version: 15.2.3
version: 16.2.2
condition: postgresql-ha.enabled
# https://github.com/bitnami/charts/blob/main/bitnami/redis-cluster/Chart.yaml
- name: redis-cluster
# https://github.com/bitnami/charts/blob/main/bitnami/valkey-cluster/Chart.yaml
- name: valkey-cluster
repository: oci://registry-1.docker.io/bitnamicharts
version: 11.4.3
condition: redis-cluster.enabled
# https://github.com/bitnami/charts/blob/main/bitnami/redis/Chart.yaml
- name: redis
version: 3.0.23
condition: valkey-cluster.enabled
# https://github.com/bitnami/charts/blob/main/bitnami/valkey/Chart.yaml
- name: valkey
repository: oci://registry-1.docker.io/bitnamicharts
version: 20.8.0
condition: redis.enabled
version: 3.0.30
condition: valkey.enabled

237
README.md
View File

@ -33,6 +33,7 @@
- [Metrics and profiling](#metrics-and-profiling)
- [Secure Metrics Endpoint](#secure-metrics-endpoint)
- [Pod annotations](#pod-annotations)
- [TLS certificate rotation](#tls-certificate-rotation)
- [Themes](#themes)
- [Renovate](#renovate)
- [Parameters](#parameters)
@ -47,13 +48,12 @@
- [Persistence](#persistence-1)
- [Init](#init)
- [Signing](#signing)
- [Gitea Actions](#gitea-actions)
- [Gitea](#gitea)
- [LivenessProbe](#livenessprobe)
- [ReadinessProbe](#readinessprobe)
- [StartupProbe](#startupprobe)
- [redis-cluster](#redis-cluster)
- [redis](#redis)
- [valkey-cluster](#valkey-cluster)
- [valkey](#valkey)
- [PostgreSQL HA](#postgresql-ha)
- [PostgreSQL](#postgresql)
- [Advanced](#advanced)
@ -63,6 +63,8 @@
[Gitea](https://gitea.com) is a community managed lightweight code hosting solution written in Go.
It is published under the MIT license.
> :warning: This chart is currently unmaintained and in desperate need of a new maintainer. If you want to apply as a maintainer, please comment on [#916](https://gitea.com/gitea/helm-gitea/issues/916)
## Introduction
This helm chart has taken some inspiration from [jfelten's helm chart](https://github.com/jfelten/gitea-helm-chart).
@ -72,7 +74,7 @@ Additionally, this chart allows to provide LDAP and admin user configuration wit
## Update and versioning policy
The Gitea helm chart versioning does not follow Gitea's versioning.
The latest chart version can be looked up in [https://dl.gitea.com/charts](https://dl.gitea.com/charts) or in the [repository releases](https://gitea.com/gitea/helm-chart/releases).
The latest chart version can be looked up in [https://dl.gitea.com/charts](https://dl.gitea.com/charts) or in the [repository releases](https://gitea.com/gitea/helm-gitea/releases).
The chart aims to follow Gitea's releases closely.
There might be times when the chart is behind the latest Gitea release.
@ -96,14 +98,14 @@ Users can also configure their own external providers via the configuration.
These dependencies are enabled by default:
- PostgreSQL HA ([Bitnami PostgreSQL-HA](https://github.com/bitnami/charts/blob/main/bitnami/postgresql-ha/Chart.yaml))
- Redis-Cluster ([Bitnami Redis-Cluster](https://github.com/bitnami/charts/blob/main/bitnami/redis-cluster/Chart.yaml))
- Valkey-Cluster ([Bitnami Valkey-Cluster](https://github.com/bitnami/charts/blob/main/bitnami/valkey-cluster/Chart.yaml))
### Non-HA Dependencies
Alternatively, the following non-HA replacements are available:
- PostgreSQL ([Bitnami PostgreSQL](<Postgresql](https://github.com/bitnami/charts/blob/main/bitnami/postgresql/Chart.yaml)>))
- Redis ([Bitnami Redis](<Redis](https://github.com/bitnami/charts/blob/main/bitnami/redis/Chart.yaml)>))
- PostgreSQL ([Bitnami PostgreSQL](https://github.com/bitnami/charts/blob/main/bitnami/postgresql/Chart.yaml))
- Valkey ([Bitnami Valkey](https://github.com/bitnami/charts/blob/main/bitnami/valkey/Chart.yaml))
### Dependency Versioning
@ -121,8 +123,8 @@ Please double-check the image repository and available tags in the sub-chart:
- [PostgreSQL-HA](https://hub.docker.com/r/bitnami/postgresql-repmgr/tags)
- [PostgreSQL](https://hub.docker.com/r/bitnami/postgresql/tags)
- [Redis Cluster](https://hub.docker.com/r/bitnami/redis-cluster/tags)
- [Redis](https://hub.docker.com/r/bitnami/redis/tags)
- [Valkey Cluster](https://hub.docker.com/r/bitnami/valkey-cluster/tags)
- [Valkey](https://hub.docker.com/r/bitnami/valkey/tags)
and look up the image tag which fits your needs on Dockerhub.
@ -167,7 +169,7 @@ available. As this is a Golang application, this can be implemented using `GOMAX
of defining `GOMAXPROCS` automatically based on the defined CPU limit like `1000m`. Please keep in mind, that the CFS
rate of `100ms` - default on each kubernetes node, is also very important to avoid CPU throttling.
Further information about this topic can be found [here](https://kanishk.io/posts/cpu-throttling-in-containerized-go-apps/).
Further information about this topic can be found [under this link](https://kanishk.io/posts/cpu-throttling-in-containerized-go-apps/).
> [!NOTE]
> The environment variable `GOMAXPROCS` is set automatically, when a CPU limit is defined. An explicit configuration is
@ -178,12 +180,12 @@ Further information about this topic can be found [here](https://kanishk.io/post
```yaml
deployment:
env:
# Will be automatically defined!
- name: GOMAXPROCS
valueFrom:
resourceFieldRef:
divisor: "1" # Is required for GitDevOps systems like ArgoCD/Flux. Otherwise throw the system a diff error. (k8s-default=1)
resource: limits.cpu
# Will be automatically defined!
- name: GOMAXPROCS
valueFrom:
resourceFieldRef:
divisor: "1" # Is required for GitDevOps systems like ArgoCD/Flux. Otherwise throw the system a diff error. (k8s-default=1)
resource: limits.cpu
resources:
limits:
@ -282,28 +284,28 @@ If `.Values.image.rootless: true`, then the following will occur. In case you us
#### Session, Cache and Queue
The session, cache and queue settings are set to use the built-in Redis Cluster sub-chart dependency.
If Redis Cluster is disabled, the chart will fall back to the Gitea defaults which use "memory" for `session` and `cache` and "level" for `queue`.
The session, cache and queue settings are set to use the built-in Valkey Cluster sub-chart dependency.
If Valkey Cluster is disabled, the chart will fall back to the Gitea defaults which use "memory" for `session` and `cache` and "level" for `queue`.
While these will work and even not cause immediate issues after startup, **they are not recommended for production use**.
Reasons being that a single pod will take on all the work for `session` and `cache` tasks in its available memory.
It is likely that the pod will run out of memory or will face substantial memory spikes, depending on the workload.
External tools such as `redis-cluster` or `memcached` handle these workloads much better.
External tools such as `valkey-cluster` or `memcached` handle these workloads much better.
### Single-Pod Configurations
If HA is not needed/desired, the following configurations can be used to deploy a single-pod Gitea instance.
1. For a production-ready single-pod Gitea instance without external dependencies (using the chart dependency `postgresql` and `redis`):
1. For a production-ready single-pod Gitea instance without external dependencies (using the chart dependency `postgresql` and `valkey`):
<details>
<summary>values.yml</summary>
```yaml
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: true
postgresql:
enabled: true
@ -334,9 +336,9 @@ If HA is not needed/desired, the following configurations can be used to deploy
<summary>values.yml</summary>
```yaml
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: false
postgresql:
enabled: false
@ -534,21 +536,21 @@ and the repository exists.
```
To solve this problem add the capability `SYS_CHROOT` to the `securityContext`.
More about this issue [here](https://gitea.com/gitea/helm-chart/issues/161).
More about this issue [under this link](https://gitea.com/gitea/helm-gitea/issues/161).
### Cache
The cache handling is done via `redis-cluster` (via the `bitnami` chart) by default.
The cache handling is done via `valkey-cluster` (via the `bitnami` chart) by default.
This deployment is HA-ready but can also be used for single-pod deployments.
By default, 6 replicas are deployed for a working `redis-cluster` deployment.
Many cloud providers offer a managed redis service, which can be used instead of the built-in `redis-cluster`.
By default, 6 replicas are deployed for a working `valkey-cluster` deployment.
Many cloud providers offer a managed valkey service, which can be used instead of the built-in `valkey-cluster`.
```yaml
redis-cluster:
valkey-cluster:
enabled: true
```
⚠️ The redis charts [do not work well with special characters in the password](https://gitea.com/gitea/helm-chart/issues/690).
⚠️ The valkey charts [do not work well with special characters in the password](https://gitea.com/gitea/helm-chart/issues/690).
Consider omitting such or open an issue in the Bitnami repo and let us know once this got fixed.
### Persistence
@ -694,7 +696,7 @@ Affected options:
Like the admin user, OAuth2 settings can be updated and disabled but not deleted.
Deleting OAuth2 settings has to be done in the ui.
All OAuth2 values, which are documented [here](https://docs.gitea.com/administration/command-line#admin), are
All OAuth2 values, which are documented [under this link](https://docs.gitea.com/administration/command-line#admin), are
available.
Multiple OAuth2 sources can be configured with additional OAuth list items.
@ -739,7 +741,7 @@ gitea:
When using the rootless image the gpg key folder is not persistent by default.
If you consider using signed commits for internal Gitea activities (e.g. initial commit), you'd need to provide a signing key.
Prior to [PR186](https://gitea.com/gitea/helm-chart/pulls/186), imported keys had to be re-imported once the container got replaced by another.
Prior to [PR186](https://gitea.com/gitea/helm-gitea/pulls/186), imported keys had to be re-imported once the container got replaced by another.
The mentioned PR introduced a new configuration object `signing` allowing you to configure prerequisites for commit signing.
By default this section is disabled to maintain backwards compatibility.
@ -817,6 +819,31 @@ gitea:
podAnnotations: {}
```
## TLS certificate rotation
If Gitea uses TLS certificates that are mounted as a secret in the container file system, Gitea will not automatically apply them when the TLS certificates are rotated.
Such a rotation can be for example triggered, when the cert-manager issues new TLS certificates before expiring. Further information is described as GitHub
[issue](https://github.com/go-gitea/gitea/issues/27962).
Until the issue is present, a workaround can be applied.
For example stakater's [reloader](https://github.com/stakater/Reloader) controller can be used to trigger a rolling update.
The following annotation must be added to instruct the reloader controller to trigger a rolling update, when the mounted `configMaps` and `secrets` have been changed.
```yaml
deployment:
annotations:
reloader.stakater.com/auto: "true"
```
Instead of triggering a rolling update for configMap and secret resources, this action can also be defined for individual items.
For example, when the secret named `gitea-tls` is mounted and the reloader controller should only listen for changes of this secret:
```yaml
deployment:
annotations:
secret.reloader.stakater.com/reload: "gitea-tls"
```
## Themes
Custom themes can be added via k8s secrets and referencing them in `values.yaml`.
@ -991,16 +1018,15 @@ To comply with the Gitea helm chart definition of the digest parameter, a "custo
### Ingress
| Name | Description | Value |
| ------------------------------------ | --------------------------------------------------------------------------- | ----------------- |
| `ingress.enabled` | Enable ingress | `false` |
| `ingress.className` | Ingress class name | `nil` |
| `ingress.annotations` | Ingress annotations | `{}` |
| `ingress.hosts[0].host` | Default Ingress host | `git.example.com` |
| `ingress.hosts[0].paths[0].path` | Default Ingress path | `/` |
| `ingress.hosts[0].paths[0].pathType` | Ingress path type | `Prefix` |
| `ingress.tls` | Ingress tls settings | `[]` |
| `ingress.apiVersion` | Specify APIVersion of ingress object. Mostly would only be used for argocd. | |
| Name | Description | Value |
| -------------------------------- | ------------------------------- | ----------------- |
| `ingress.enabled` | Enable ingress | `false` |
| `ingress.className` | DEPRECATED: Ingress class name. | `""` |
| `ingress.pathType` | Ingress Path Type | `Prefix` |
| `ingress.annotations` | Ingress annotations | `{}` |
| `ingress.hosts[0].host` | Default Ingress host | `git.example.com` |
| `ingress.hosts[0].paths[0].path` | Default Ingress path | `/` |
| `ingress.tls` | Ingress tls settings | `[]` |
### deployment
@ -1053,12 +1079,13 @@ To comply with the Gitea helm chart definition of the digest parameter, a "custo
### Init
| Name | Description | Value |
| ------------------------------------------ | ------------------------------------------------------------------------------------ | ------- |
| `initPreScript` | Bash shell script copied verbatim to the start of the init-container. | `""` |
| `initContainers.resources.limits` | initContainers.limits Kubernetes resource limits for init containers | `{}` |
| `initContainers.resources.requests.cpu` | initContainers.requests.cpu Kubernetes cpu resource limits for init containers | `100m` |
| `initContainers.resources.requests.memory` | initContainers.requests.memory Kubernetes memory resource limits for init containers | `128Mi` |
| Name | Description | Value |
| ------------------------------------------ | ------------------------------------------------------------------------------------ | ------------ |
| `initPreScript` | Bash shell script copied verbatim to the start of the init-container. | `""` |
| `initContainersScriptsVolumeMountPath` | Path to mount the scripts consumed from the Secrets | `/usr/sbinx` |
| `initContainers.resources.limits` | initContainers.limits Kubernetes resource limits for init containers | `{}` |
| `initContainers.resources.requests.cpu` | initContainers.requests.cpu Kubernetes cpu resource limits for init containers | `100m` |
| `initContainers.resources.requests.memory` | initContainers.requests.memory Kubernetes memory resource limits for init containers | `128Mi` |
### Signing
@ -1069,44 +1096,6 @@ To comply with the Gitea helm chart definition of the digest parameter, a "custo
| `signing.privateKey` | Inline private gpg key for signed internal Git activity | `""` |
| `signing.existingSecret` | Use an existing secret to store the value of `signing.privateKey` | `""` |
### Gitea Actions
| Name | Description | Value |
| ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
| `actions.enabled` | Create an act runner StatefulSet. | `false` |
| `actions.init.image.repository` | The image used for the init containers | `busybox` |
| `actions.init.image.tag` | The image tag used for the init containers | `1.37.0` |
| `actions.statefulset.annotations` | Act runner annotations | `{}` |
| `actions.statefulset.labels` | Act runner labels | `{}` |
| `actions.statefulset.resources` | Act runner resources | `{}` |
| `actions.statefulset.nodeSelector` | NodeSelector for the statefulset | `{}` |
| `actions.statefulset.tolerations` | Tolerations for the statefulset | `[]` |
| `actions.statefulset.affinity` | Affinity for the statefulset | `{}` |
| `actions.statefulset.extraVolumes` | Extra volumes for the statefulset | `[]` |
| `actions.statefulset.actRunner.repository` | The Gitea act runner image | `gitea/act_runner` |
| `actions.statefulset.actRunner.tag` | The Gitea act runner tag | `0.2.11` |
| `actions.statefulset.actRunner.pullPolicy` | The Gitea act runner pullPolicy | `IfNotPresent` |
| `actions.statefulset.actRunner.extraVolumeMounts` | Allows mounting extra volumes in the act runner container | `[]` |
| `actions.statefulset.actRunner.config` | Act runner custom configuration. See [Act Runner documentation](https://docs.gitea.com/usage/actions/act-runner#configuration) for details. | `Too complex. See values.yaml` |
| `actions.statefulset.dind.repository` | The Docker-in-Docker image | `docker` |
| `actions.statefulset.dind.tag` | The Docker-in-Docker image tag | `25.0.2-dind` |
| `actions.statefulset.dind.pullPolicy` | The Docker-in-Docker pullPolicy | `IfNotPresent` |
| `actions.statefulset.dind.extraVolumeMounts` | Allows mounting extra volumes in the Docker-in-Docker container | `[]` |
| `actions.statefulset.dind.extraEnvs` | Allows adding custom environment variables, such as `DOCKER_IPTABLES_LEGACY` | `[]` |
| `actions.provisioning.enabled` | Create a job that will create and save the token in a Kubernetes Secret | `false` |
| `actions.provisioning.annotations` | Job's annotations | `{}` |
| `actions.provisioning.labels` | Job's labels | `{}` |
| `actions.provisioning.resources` | Job's resources | `{}` |
| `actions.provisioning.nodeSelector` | NodeSelector for the job | `{}` |
| `actions.provisioning.tolerations` | Tolerations for the job | `[]` |
| `actions.provisioning.affinity` | Affinity for the job | `{}` |
| `actions.provisioning.ttlSecondsAfterFinished` | ttl for the job after finished in order to allow helm to properly recognize that the job completed | `300` |
| `actions.provisioning.publish.repository` | The image that can create the secret via kubectl | `bitnami/kubectl` |
| `actions.provisioning.publish.tag` | The publish image tag that can create the secret | `1.29.0` |
| `actions.provisioning.publish.pullPolicy` | The publish image pullPolicy that can create the secret | `IfNotPresent` |
| `actions.existingSecret` | Secret that contains the token | `""` |
| `actions.existingSecretKey` | Secret key | `""` |
### Gitea
| Name | Description | Value |
@ -1169,27 +1158,30 @@ To comply with the Gitea helm chart definition of the digest parameter, a "custo
| `gitea.startupProbe.successThreshold` | Success threshold for startup probe | `1` |
| `gitea.startupProbe.failureThreshold` | Failure threshold for startup probe | `10` |
### redis-cluster
### valkey-cluster
Redis cluster and [Redis](#redis) cannot be enabled at the same time.
Valkey cluster and [Valkey](#valkey) cannot be enabled at the same time.
| Name | Description | Value |
| -------------------------------- | -------------------------------------------- | ------- |
| `redis-cluster.enabled` | Enable redis cluster | `true` |
| `redis-cluster.usePassword` | Whether to use password authentication | `false` |
| `redis-cluster.cluster.nodes` | Number of redis cluster master nodes | `3` |
| `redis-cluster.cluster.replicas` | Number of redis cluster master node replicas | `0` |
| Name | Description | Value |
| ------------------------------------- | -------------------------------------------------------------------- | ------- |
| `valkey-cluster.enabled` | Enable valkey cluster | `true` |
| `valkey-cluster.usePassword` | Whether to use password authentication | `false` |
| `valkey-cluster.usePasswordFiles` | Whether to mount passwords as files instead of environment variables | `false` |
| `valkey-cluster.cluster.nodes` | Number of valkey cluster master nodes | `3` |
| `valkey-cluster.cluster.replicas` | Number of valkey cluster master node replicas | `0` |
| `valkey-cluster.service.ports.valkey` | Port of Valkey service | `6379` |
### redis
### valkey
Redis and [Redis cluster](#redis-cluster) cannot be enabled at the same time.
Valkey and [Valkey cluster](#valkey-cluster) cannot be enabled at the same time.
| Name | Description | Value |
| ----------------------------- | ------------------------------------------ | ------------ |
| `redis.enabled` | Enable redis standalone or replicated | `false` |
| `redis.architecture` | Whether to use standalone or replication | `standalone` |
| `redis.global.redis.password` | Required password | `changeme` |
| `redis.master.count` | Number of Redis master instances to deploy | `1` |
| Name | Description | Value |
| ------------------------------------ | ------------------------------------------- | ------------ |
| `valkey.enabled` | Enable valkey standalone or replicated | `false` |
| `valkey.architecture` | Whether to use standalone or replication | `standalone` |
| `valkey.global.valkey.password` | Required password | `changeme` |
| `valkey.master.count` | Number of Valkey master instances to deploy | `1` |
| `valkey.master.service.ports.valkey` | Port of Valkey service | `6379` |
### PostgreSQL HA
@ -1203,6 +1195,7 @@ Redis and [Redis cluster](#redis-cluster) cannot be enabled at the same time.
| `postgresql-ha.postgresql.repmgrPassword` | Repmgr Password | `changeme2` |
| `postgresql-ha.postgresql.postgresPassword` | postgres Password | `changeme1` |
| `postgresql-ha.pgpool.adminPassword` | pgpool adminPassword | `changeme3` |
| `postgresql-ha.pgpool.srCheckPassword` | pgpool srCheckPassword | `changeme4` |
| `postgresql-ha.service.ports.postgresql` | PostgreSQL service port (overrides `service.ports.postgresql`) | `5432` |
| `postgresql-ha.persistence.size` | PVC Storage Request for PostgreSQL HA volume | `10Gi` |
@ -1241,6 +1234,31 @@ If you miss this, blindly upgrading may delete your Postgres instance and you ma
<details>
<summary>To 12.0.0</summary>
<!-- prettier-ignore-start -->
<!-- markdownlint-disable-next-line -->
**Breaking changes**
<!-- prettier-ignore-end -->
- Outsourced "Actions" related configuration.
To deploy and use "Actions", please see the new dedicated chart at <https://gitea.com/gitea/helm-actions>.
It is maintained by a seperate maintainer group and hasn't seen a release yet (at the time of the 12.0 release).
Feel encouraged to contribute if "Actions" is important to you!
This change was made to avoid overloading the existing helm chart, which is already quite large in size and configuration options.
In addition, the existing maintainers team was not actively using "Actions" which slowed down development and community contributions.
While the new chart is still young (and waiting for contributions! and maintainers), we believe that it is the best way moving forward for both parts.
- Migrated from Redis/Redis-cluster to Valkey/Valkey-cluster charts (#775).
While marked as breaking, there is no need to migrate data.
The cache will start to refill automatically.
- Migrated ingress from `networking.k8s.io/v1beta` to `networking.k8s.io/v1`.
We didn't make any changes to the syntax, so the upgrade should be seamless.
</details>
<details>
<summary>To 11.0.0</summary>
<!-- prettier-ignore-start -->
@ -1258,8 +1276,7 @@ If you miss this, blindly upgrading may delete your Postgres instance and you ma
Although there are no breaking changes in the Redis Chart itself, it updates Redis from `7.2` to `7.4`. We recommend checking the release notes:
- [Redis Chart release notes (starting with v11.0.0)](https://github.com/bitnami/charts/blob/HEAD/bitnami/redis-cluster/CHANGELOG.md#1100-2024-08-09).
- [Redis 7.4 release notes](https://raw.githubusercontent.com/redis/redis/7.4/00-RELEASENOTES).
</details>
</details>
<details>
@ -1329,23 +1346,23 @@ The first item here (`<memcache service name>`) will be different compared to th
The above changes are motivated by the idea to tidy dependencies but also have HA-ready ones at the same time.
The previous `memcache` default was not HA-ready, hence we decided to switch to `redis-cluster` by default.
If you are coming from an existing deployment and [#356](https://gitea.com/gitea/helm-chart/issues/356) is still open, you need to set the config sections for `cache`, `session` and `queue` explicitly:
If you are coming from an existing deployment and [#356](https://gitea.com/gitea/helm-gitea/issues/356) is still open, you need to set the config sections for `cache`, `session` and `queue` explicitly:
```yaml
gitea:
config:
session:
PROVIDER: redis-cluster
PROVIDER_CONFIG: redis+cluster://:gitea@gitea-redis-cluster-headless.<namespace>.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
PROVIDER_CONFIG: redis+cluster://:gitea@gitea-valkey-cluster-headless.<namespace>.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
cache:
ENABLED: true
ADAPTER: redis-cluster
HOST: redis+cluster://:gitea@gitea-redis-cluster-headless.<namespace>.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
HOST: redis+cluster://:gitea@gitea-valkey-cluster-headless.<namespace>.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
queue:
TYPE: redis
CONN_STR: redis+cluster://:gitea@gitea-redis-cluster-headless.<namespace>.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
CONN_STR: redis+cluster://:gitea@gitea-valkey-cluster-headless.<namespace>.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
```
<!-- prettier-ignore-start -->
@ -1354,7 +1371,7 @@ gitea:
<!-- prettier-ignore-end -->
If you are facing errors like `WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED` due to this automatic transition:
Have a look at [this discussion](https://gitea.com/gitea/helm-chart/issues/487#issue-220660) and either set `image.rootless: false` or manually update your `~/.ssh/known_hosts` file(s).
Have a look at [this discussion](https://gitea.com/gitea/helm-gitea/issues/487#issue-220660) and either set `image.rootless: false` or manually update your `~/.ssh/known_hosts` file(s).
<!-- prettier-ignore-start -->
<!-- markdownlint-disable-next-line -->
@ -1410,7 +1427,7 @@ With respect to `values.yaml`, parameters `username`, `database` and `password`
Please adjust your `values.yaml` accordingly.
**Attention**: The Postgres upgrade is not automatically handled by the chart and must be done by yourself.
See [this comment](https://gitea.com/gitea/helm-chart/issues/452#issuecomment-740885) for an extensive walkthrough.
See [this comment](https://gitea.com/gitea/helm-gitea/issues/452#issuecomment-740885) for an extensive walkthrough.
We again highly encourage users to use an external (managed) database for production instances.
</details>

View File

@ -1,34 +0,0 @@
# Gitea Actions
In order to use the Gitea Actions act-runner you must either:
- enable persistence (used for automatic deployment to be able to store the token in a place accessible for the Job)
- create a secret containing the act runner token and reference it as a `existingSecret`
In order to use Gitea Actions, you must log on the server that's running Gitea and run the command:
`gitea actions generate-runner-token`
This command will out a token that is needed by the act-runner to register with the Gitea backend.
Because this is a manual operation, we automated this using a Kubernetes Job using the following containers:
1) `actions-token-create`: it uses the current `gitea-rootless` image, mounts the persistent directory to `/data/` then it saves the output from `gitea actions generate-runner-token` to `/data/actions/token`
2) `actions-token-upload`: it uses a `bitnami/kubectl` image, mounts the scripts directory (`/scripts`) and
the persistent directory (`/data/`), and using the script from `/scripts/token.sh` stores the token in a Kubernetes secret
After the token is stored in a Kubernetes secret we can create the statefulset that contains the following containers:
1) `act-runner`: authenticates with Gitea using the token that was stored in the secret
2) `dind`: DockerInDocker image that is used to run the actions
If you are not using persistent volumes, you cannot use the Job to automatically generate the token.
In this case, you can use either the Web UI to generate the token or run a shell into a Gitea pod and invoke
the command `gitea actions generate-runner-token`. After generating the token, you must create a secret and use it via:
```yaml
actions:
provisioning:
enabled: false
existingSecret: "secret-name"
existingSecretKey: "secret-key"
```

View File

@ -25,7 +25,7 @@ In addition, the following components are required for full HA-readiness:
- A HA-ready issue (and optionally code) indexer: `elasticsearch` or `meilisearch`
- A HA-ready external object/asset storage (`minio`) (optional, assets can also be stored on the RWX file-system)
- A HA-ready cache (`redis-cluster`)
- A HA-ready cache (`valkey-cluster`)
- A HA-ready DB
`postgres.enabled`, which default to `true`, must be set to `false` for a HA setup.
@ -72,33 +72,33 @@ persistence:
## Cache, session and queue
A `redis` instance is required for the in-memory cache.
A `valkey` instance is required for the in-memory cache.
Two options exist:
- `redis`
- `redis-cluster`
- `valkey`
- `valkey-cluster`
The chart provides `redis-cluster` as a dependency as this one can be used for both HA and non-HA setups.
You're also welcome to go with `redis` if you prefer or already have a running instance.
The chart provides `valkey-cluster` as a dependency as this one can be used for both HA and non-HA setups.
You're also welcome to go with `valkey` if you prefer or already have a running instance.
It should be noted that `redis-cluster` support is only available starting with Gitea 1.19.2.
You can also configure an external (managed) `redis` instance to be used.
It should be noted that `valkey-cluster` support is only available starting with Gitea 1.19.2.
You can also configure an external (managed) `valkey` instance to be used.
To do so, you need to set the following configuration values yourself:
- `gitea.config.queue.TYPE`: redis`
- `gitea.config.queue.CONN_STR`: `<your redis connection string>`
- `gitea.config.queue.TYPE`: valkey`
- `gitea.config.queue.CONN_STR`: `<your valkey connection string>`
- `gitea.config.session.PROVIDER`: `redis`
- `gitea.config.session.PROVIDER_CONFIG`: `<your redis connection string>`
- `gitea.config.session.PROVIDER`: `valkey`
- `gitea.config.session.PROVIDER_CONFIG`: `<your valkey connection string>`
- `gitea.config.cache.ENABLED`: `true`
- `gitea.config.cache.ADAPTER`: `redis`
- `gitea.config.cache.HOST`: `<your redis connection string>`
- `gitea.config.cache.ADAPTER`: `valkey`
- `gitea.config.cache.HOST`: `<your valkey connection string>`
By default, the `redis-cluster` chart provisions three standalone master nodes of which each has a single replica.
By default, the `valkey-cluster` chart provisions three standalone master nodes of which each has a single replica.
To reduce the number of pods for a default Gitea deployment, we opted to omit the replicas (`replicas: 0`) by default.
Only the minimum required number of master pods for a functional `redis-cluster` deployment are provisioned.
For a "proper" `redis-cluster` setup however, we recommend to set `replicas: 1` and `nodes: 6`.
Only the minimum required number of master pods for a functional `valkey-cluster` deployment are provisioned.
For a "proper" `valkey-cluster` setup however, we recommend to set `replicas: 1` and `nodes: 6`.
## Object and asset storage

411
package-lock.json generated
View File

@ -1,14 +1,14 @@
{
"name": "gitea-helm-chart",
"name": "gitea-helm",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "gitea-helm-chart",
"name": "gitea-helm",
"license": "MIT",
"devDependencies": {
"@bitnami/readme-generator-for-helm": "^2.5.0",
"markdownlint-cli": "^0.44.0"
"markdownlint-cli": "^0.45.0"
},
"engines": {
"node": ">=16.0.0",
@ -16,9 +16,9 @@
}
},
"node_modules/@bitnami/readme-generator-for-helm": {
"version": "2.7.0",
"resolved": "https://registry.npmjs.org/@bitnami/readme-generator-for-helm/-/readme-generator-for-helm-2.7.0.tgz",
"integrity": "sha512-fVxExmcuJ9NZb9ZE9OW3+lG8pUlXJAJdaO8UukV3A7WzYu4qOTr03MXPH9Gt5e/6mo3x4WYI/cXBksKfS0qn3w==",
"version": "2.7.2",
"resolved": "https://registry.npmjs.org/@bitnami/readme-generator-for-helm/-/readme-generator-for-helm-2.7.2.tgz",
"integrity": "sha512-7eXyJzxQTQj2ajpHlIhadciCCYWOqN8ieaweU25bStHOZowQ2c2CQyjO/bX4gxIf73LoRKxHhEYgLTllJY9SIw==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@ -32,11 +32,35 @@
"readme-generator": "bin/index.js"
}
},
"node_modules/@isaacs/balanced-match": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz",
"integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": "20 || >=22"
}
},
"node_modules/@isaacs/brace-expansion": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz",
"integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@isaacs/balanced-match": "^4.0.1"
},
"engines": {
"node": "20 || >=22"
}
},
"node_modules/@isaacs/cliui": {
"version": "8.0.2",
"resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
"integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
"dev": true,
"license": "ISC",
"dependencies": {
"string-width": "^5.1.2",
"string-width-cjs": "npm:string-width@^4.2.0",
@ -49,17 +73,6 @@
"node": ">=12"
}
},
"node_modules/@pkgjs/parseargs": {
"version": "0.11.0",
"resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
"integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
"dev": true,
"license": "MIT",
"optional": true,
"engines": {
"node": ">=14"
}
},
"node_modules/@types/debug": {
"version": "4.1.12",
"resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz",
@ -92,10 +105,11 @@
"license": "MIT"
},
"node_modules/ansi-regex": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
"integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
"version": "6.2.0",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.0.tgz",
"integrity": "sha512-TKY5pyBkHyADOPYlRT9Lx6F544mPl0vS5Ew7BJ45hA08Q+t3GjbueLliBWN3sMICk6+y7HdyxSzC4bWS8baBdg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12"
},
@ -108,6 +122,7 @@
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
"integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12"
},
@ -119,19 +134,22 @@
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true
"dev": true,
"license": "Python-2.0"
},
"node_modules/balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"version": "1.1.12",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz",
"integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==",
"dev": true,
"license": "MIT",
"dependencies": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@ -175,6 +193,7 @@
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"color-name": "~1.1.4"
},
@ -186,7 +205,8 @@
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/commander": {
"version": "13.1.0",
@ -202,13 +222,15 @@
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
"integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
"integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
"version": "7.0.6",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
"integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
"dev": true,
"license": "MIT",
"dependencies": {
"path-key": "^3.1.0",
"shebang-command": "^2.0.0",
@ -219,9 +241,9 @@
}
},
"node_modules/debug": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz",
"integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==",
"version": "4.4.1",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz",
"integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@ -237,9 +259,9 @@
}
},
"node_modules/decode-named-character-reference": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz",
"integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==",
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.2.0.tgz",
"integrity": "sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==",
"dev": true,
"license": "MIT",
"dependencies": {
@ -255,6 +277,7 @@
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
"integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=4.0.0"
}
@ -311,19 +334,22 @@
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
"integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/emoji-regex": {
"version": "9.2.2",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
"integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/entities": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
"integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
"dev": true,
"license": "BSD-2-Clause",
"engines": {
"node": ">=0.12"
},
@ -332,12 +358,13 @@
}
},
"node_modules/foreground-child": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
"integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
"version": "3.3.1",
"resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz",
"integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==",
"dev": true,
"license": "ISC",
"dependencies": {
"cross-spawn": "^7.0.0",
"cross-spawn": "^7.0.6",
"signal-exit": "^4.0.1"
},
"engines": {
@ -351,13 +378,16 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
"dev": true
"dev": true,
"license": "ISC"
},
"node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
"deprecated": "Glob versions prior to v9 are no longer supported",
"dev": true,
"license": "ISC",
"dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
@ -374,9 +404,9 @@
}
},
"node_modules/ignore": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.3.tgz",
"integrity": "sha512-bAH5jbK/F3T3Jls4I0SO1hmPR0dKU0a7+SY6n1yzRtG54FLO8d6w/nxLFX2Nb7dBu6cCWXPaAME6cYqFUMmuCA==",
"version": "7.0.5",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
"integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==",
"dev": true,
"license": "MIT",
"engines": {
@ -387,7 +417,9 @@
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
"deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
"dev": true,
"license": "ISC",
"dependencies": {
"once": "^1.3.0",
"wrappy": "1"
@ -397,13 +429,15 @@
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
"dev": true
"dev": true,
"license": "ISC"
},
"node_modules/ini": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz",
"integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==",
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz",
"integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==",
"dev": true,
"license": "ISC",
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
@ -450,6 +484,7 @@
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
}
@ -469,13 +504,31 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
"dev": true
"dev": true,
"license": "ISC"
},
"node_modules/jackspeak": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.1.1.tgz",
"integrity": "sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==",
"dev": true,
"license": "BlueOak-1.0.0",
"dependencies": {
"@isaacs/cliui": "^8.0.2"
},
"engines": {
"node": "20 || >=22"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/js-yaml": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
"integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
"dev": true,
"license": "MIT",
"dependencies": {
"argparse": "^2.0.1"
},
@ -495,14 +548,15 @@
"resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz",
"integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/katex": {
"version": "0.16.21",
"resolved": "https://registry.npmjs.org/katex/-/katex-0.16.21.tgz",
"integrity": "sha512-XvqR7FgOHtWupfMiigNzmh+MgUVmDGU2kXZm899ZkPfcuoPuFxyHmXsgATDpFZDAXCI8tvinaVcDo8PIIJSo4A==",
"version": "0.16.22",
"resolved": "https://registry.npmjs.org/katex/-/katex-0.16.22.tgz",
"integrity": "sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==",
"dev": true,
"funding": [
"https://opencollective.com/katex",
@ -531,6 +585,7 @@
"resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz",
"integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"uc.micro": "^2.0.0"
}
@ -539,13 +594,25 @@
"version": "4.17.21",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/lru-cache": {
"version": "11.1.0",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.1.0.tgz",
"integrity": "sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==",
"dev": true,
"license": "ISC",
"engines": {
"node": "20 || >=22"
}
},
"node_modules/markdown-it": {
"version": "14.1.0",
"resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz",
"integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==",
"dev": true,
"license": "MIT",
"dependencies": {
"argparse": "^2.0.1",
"entities": "^4.4.0",
@ -563,6 +630,7 @@
"resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-2.0.0.tgz",
"integrity": "sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==",
"dev": true,
"license": "MIT",
"dependencies": {
"repeat-string": "^1.0.0"
},
@ -572,136 +640,89 @@
}
},
"node_modules/markdownlint": {
"version": "0.37.4",
"resolved": "https://registry.npmjs.org/markdownlint/-/markdownlint-0.37.4.tgz",
"integrity": "sha512-u00joA/syf3VhWh6/ybVFkib5Zpj2e5KB/cfCei8fkSRuums6nyisTWGqjTWIOFoFwuXoTBQQiqlB4qFKp8ncQ==",
"version": "0.38.0",
"resolved": "https://registry.npmjs.org/markdownlint/-/markdownlint-0.38.0.tgz",
"integrity": "sha512-xaSxkaU7wY/0852zGApM8LdlIfGCW8ETZ0Rr62IQtAnUMlMuifsg09vWJcNYeL4f0anvr8Vo4ZQar8jGpV0btQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"markdown-it": "14.1.0",
"micromark": "4.0.1",
"micromark-core-commonmark": "2.0.2",
"micromark-extension-directive": "3.0.2",
"micromark": "4.0.2",
"micromark-core-commonmark": "2.0.3",
"micromark-extension-directive": "4.0.0",
"micromark-extension-gfm-autolink-literal": "2.1.0",
"micromark-extension-gfm-footnote": "2.1.0",
"micromark-extension-gfm-table": "2.1.0",
"micromark-extension-gfm-table": "2.1.1",
"micromark-extension-math": "3.1.0",
"micromark-util-types": "2.0.1"
"micromark-util-types": "2.0.2"
},
"engines": {
"node": ">=18"
"node": ">=20"
},
"funding": {
"url": "https://github.com/sponsors/DavidAnson"
}
},
"node_modules/markdownlint-cli": {
"version": "0.44.0",
"resolved": "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.44.0.tgz",
"integrity": "sha512-ZJTAONlvF9NkrIBltCdW15DxN9UTbPiKMEqAh2EU2gwIFlrCMavyCEPPO121cqfYOrLUJWW8/XKWongstmmTeQ==",
"version": "0.45.0",
"resolved": "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.45.0.tgz",
"integrity": "sha512-GiWr7GfJLVfcopL3t3pLumXCYs8sgWppjIA1F/Cc3zIMgD3tmkpyZ1xkm1Tej8mw53B93JsDjgA3KOftuYcfOw==",
"dev": true,
"license": "MIT",
"dependencies": {
"commander": "~13.1.0",
"glob": "~10.4.5",
"ignore": "~7.0.3",
"glob": "~11.0.2",
"ignore": "~7.0.4",
"js-yaml": "~4.1.0",
"jsonc-parser": "~3.3.1",
"jsonpointer": "~5.0.1",
"markdownlint": "~0.37.4",
"minimatch": "~9.0.5",
"markdown-it": "~14.1.0",
"markdownlint": "~0.38.0",
"minimatch": "~10.0.1",
"run-con": "~1.3.2",
"smol-toml": "~1.3.1"
"smol-toml": "~1.3.4"
},
"bin": {
"markdownlint": "markdownlint.js"
},
"engines": {
"node": ">=18"
}
},
"node_modules/markdownlint-cli/node_modules/brace-expansion": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"dev": true,
"license": "MIT",
"dependencies": {
"balanced-match": "^1.0.0"
"node": ">=20"
}
},
"node_modules/markdownlint-cli/node_modules/glob": {
"version": "10.4.5",
"resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
"integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
"version": "11.0.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-11.0.3.tgz",
"integrity": "sha512-2Nim7dha1KVkaiF4q6Dj+ngPPMdfvLJEOpZk/jKiUAkqKebpGAWQXAq9z1xu9HKu5lWfqw/FASuccEjyznjPaA==",
"dev": true,
"license": "ISC",
"dependencies": {
"foreground-child": "^3.1.0",
"jackspeak": "^3.1.2",
"minimatch": "^9.0.4",
"foreground-child": "^3.3.1",
"jackspeak": "^4.1.1",
"minimatch": "^10.0.3",
"minipass": "^7.1.2",
"package-json-from-dist": "^1.0.0",
"path-scurry": "^1.11.1"
"path-scurry": "^2.0.0"
},
"bin": {
"glob": "dist/esm/bin.mjs"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/markdownlint-cli/node_modules/jackspeak": {
"version": "3.4.3",
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
"integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
"dev": true,
"license": "BlueOak-1.0.0",
"dependencies": {
"@isaacs/cliui": "^8.0.2"
"engines": {
"node": "20 || >=22"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
},
"optionalDependencies": {
"@pkgjs/parseargs": "^0.11.0"
}
},
"node_modules/markdownlint-cli/node_modules/lru-cache": {
"version": "10.4.3",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
"integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==",
"dev": true,
"license": "ISC"
},
"node_modules/markdownlint-cli/node_modules/minimatch": {
"version": "9.0.5",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
"integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
"version": "10.0.3",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz",
"integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==",
"dev": true,
"license": "ISC",
"dependencies": {
"brace-expansion": "^2.0.1"
"@isaacs/brace-expansion": "^5.0.0"
},
"engines": {
"node": ">=16 || 14 >=14.17"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/markdownlint-cli/node_modules/path-scurry": {
"version": "1.11.1",
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
"integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
"dev": true,
"license": "BlueOak-1.0.0",
"dependencies": {
"lru-cache": "^10.2.0",
"minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
},
"engines": {
"node": ">=16 || 14 >=14.18"
"node": "20 || >=22"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
@ -711,12 +732,13 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz",
"integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/micromark": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.1.tgz",
"integrity": "sha512-eBPdkcoCNvYcxQOAKAlceo5SNdzZWfF+FcSupREAzdAh9rRmE239CEQAiTwIgblwnoM8zzj35sZ5ZwvSEOF6Kw==",
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.2.tgz",
"integrity": "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==",
"dev": true,
"funding": [
{
@ -750,9 +772,9 @@
}
},
"node_modules/micromark-core-commonmark": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.2.tgz",
"integrity": "sha512-FKjQKbxd1cibWMM1P9N+H8TwlgGgSkWZMmfuVucLCHaYqeSvJ0hFeHsIa65pA2nYbes0f8LDHPMrd9X7Ujxg9w==",
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz",
"integrity": "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==",
"dev": true,
"funding": [
{
@ -785,9 +807,9 @@
}
},
"node_modules/micromark-extension-directive": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/micromark-extension-directive/-/micromark-extension-directive-3.0.2.tgz",
"integrity": "sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA==",
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/micromark-extension-directive/-/micromark-extension-directive-4.0.0.tgz",
"integrity": "sha512-/C2nqVmXXmiseSSuCdItCMho7ybwwop6RrrRPk0KbOHW21JKoCldC+8rFOaundDoRBUWBnJJcxeA/Kvi34WQXg==",
"dev": true,
"license": "MIT",
"dependencies": {
@ -843,9 +865,9 @@
}
},
"node_modules/micromark-extension-gfm-table": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.0.tgz",
"integrity": "sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==",
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz",
"integrity": "sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==",
"dev": true,
"license": "MIT",
"dependencies": {
@ -1193,9 +1215,9 @@
}
},
"node_modules/micromark-util-subtokenize": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.4.tgz",
"integrity": "sha512-N6hXjrin2GTJDe3MVjf5FuXpm12PGm80BrUAeub9XFXca8JZbP+oIwY4LJSVwFUCL1IPm/WwSVUN7goFHmSGGQ==",
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz",
"integrity": "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==",
"dev": true,
"funding": [
{
@ -1233,9 +1255,9 @@
"license": "MIT"
},
"node_modules/micromark-util-types": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.1.tgz",
"integrity": "sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ==",
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.2.tgz",
"integrity": "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==",
"dev": true,
"funding": [
{
@ -1254,6 +1276,7 @@
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
"license": "ISC",
"dependencies": {
"brace-expansion": "^1.1.7"
},
@ -1266,6 +1289,7 @@
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
"integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
"dev": true,
"license": "MIT",
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
@ -1292,6 +1316,7 @@
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
"dev": true,
"license": "ISC",
"dependencies": {
"wrappy": "1"
}
@ -1328,6 +1353,7 @@
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10.0"
}
@ -1337,15 +1363,34 @@
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
"integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
}
},
"node_modules/path-scurry": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz",
"integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==",
"dev": true,
"license": "BlueOak-1.0.0",
"dependencies": {
"lru-cache": "^11.0.0",
"minipass": "^7.1.2"
},
"engines": {
"node": "20 || >=22"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/punycode.js": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz",
"integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=6"
}
@ -1355,6 +1400,7 @@
"resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
"integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10"
}
@ -1364,6 +1410,7 @@
"resolved": "https://registry.npmjs.org/run-con/-/run-con-1.3.2.tgz",
"integrity": "sha512-CcfE+mYiTcKEzg0IqS08+efdnH0oJ3zV0wSUFBNrMHMuxCtXvBCLzCJHatwuXDcu/RlhjTziTo/a1ruQik6/Yg==",
"dev": true,
"license": "(BSD-2-Clause OR MIT OR Apache-2.0)",
"dependencies": {
"deep-extend": "^0.6.0",
"ini": "~4.1.0",
@ -1379,6 +1426,7 @@
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
"dev": true,
"license": "MIT",
"dependencies": {
"shebang-regex": "^3.0.0"
},
@ -1391,15 +1439,17 @@
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
}
},
"node_modules/signal-exit": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz",
"integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==",
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
"integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
"dev": true,
"license": "ISC",
"engines": {
"node": ">=14"
},
@ -1408,9 +1458,9 @@
}
},
"node_modules/smol-toml": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.3.1.tgz",
"integrity": "sha512-tEYNll18pPKHroYSmLLrksq233j021G0giwW7P3D24jC54pQ5W5BXMsQ/Mvw1OJCmEYDgY+lrzT+3nNUtoNfXQ==",
"version": "1.3.4",
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.3.4.tgz",
"integrity": "sha512-UOPtVuYkzYGee0Bd2Szz8d2G3RfMfJ2t3qVdZUAozZyAk+a0Sxa+QKix0YCwjL/A1RR0ar44nCxaoN9FxdJGwA==",
"dev": true,
"license": "BSD-3-Clause",
"engines": {
@ -1425,6 +1475,7 @@
"resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
"integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
"dev": true,
"license": "MIT",
"dependencies": {
"eastasianwidth": "^0.2.0",
"emoji-regex": "^9.2.2",
@ -1443,6 +1494,7 @@
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dev": true,
"license": "MIT",
"dependencies": {
"emoji-regex": "^8.0.0",
"is-fullwidth-code-point": "^3.0.0",
@ -1457,6 +1509,7 @@
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
}
@ -1465,13 +1518,15 @@
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/string-width-cjs/node_modules/strip-ansi": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true,
"license": "MIT",
"dependencies": {
"ansi-regex": "^5.0.1"
},
@ -1480,10 +1535,11 @@
}
},
"node_modules/strip-ansi": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz",
"integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==",
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
"integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"ansi-regex": "^6.0.1"
},
@ -1500,6 +1556,7 @@
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true,
"license": "MIT",
"dependencies": {
"ansi-regex": "^5.0.1"
},
@ -1512,6 +1569,7 @@
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
}
@ -1521,6 +1579,7 @@
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
"integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
},
@ -1532,13 +1591,15 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz",
"integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
"dev": true,
"license": "ISC",
"dependencies": {
"isexe": "^2.0.0"
},
@ -1554,6 +1615,7 @@
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
"integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"ansi-styles": "^6.1.0",
"string-width": "^5.0.1",
@ -1572,6 +1634,7 @@
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
"integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
"dev": true,
"license": "MIT",
"dependencies": {
"ansi-styles": "^4.0.0",
"string-width": "^4.1.0",
@ -1589,6 +1652,7 @@
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
}
@ -1598,6 +1662,7 @@
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"license": "MIT",
"dependencies": {
"color-convert": "^2.0.1"
},
@ -1612,13 +1677,15 @@
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
"dev": true
"dev": true,
"license": "MIT"
},
"node_modules/wrap-ansi-cjs/node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
"integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dev": true,
"license": "MIT",
"dependencies": {
"emoji-regex": "^8.0.0",
"is-fullwidth-code-point": "^3.0.0",
@ -1633,6 +1700,7 @@
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true,
"license": "MIT",
"dependencies": {
"ansi-regex": "^5.0.1"
},
@ -1644,19 +1712,20 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
"dev": true
"dev": true,
"license": "ISC"
},
"node_modules/yaml": {
"version": "2.7.0",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz",
"integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==",
"version": "2.8.1",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.1.tgz",
"integrity": "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==",
"dev": true,
"license": "ISC",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
"node": ">= 14"
"node": ">= 14.6"
}
}
}

View File

@ -1,6 +1,6 @@
{
"name": "gitea-helm-chart",
"homepage": "https://gitea.com/gitea/helm-chart.git",
"name": "gitea-helm",
"homepage": "https://gitea.com/gitea/helm-gitea.git",
"license": "MIT",
"private": true,
"engineStrict": true,
@ -14,6 +14,6 @@
},
"devDependencies": {
"@bitnami/readme-generator-for-helm": "^2.5.0",
"markdownlint-cli": "^0.44.0"
"markdownlint-cli": "^0.45.0"
}
}
}

View File

@ -9,19 +9,19 @@
labels: [
'kind/dependency',
],
"digest": {
"automerge": true
digest: {
automerge: true,
},
automergeStrategy: 'squash',
'git-submodules': {
'enabled': true
enabled: true,
},
customManagers: [
{
description: 'Gitea-version of https://docs.renovatebot.com/presets-regexManagers/#regexmanagersgithubactionsversions',
customType: 'regex',
fileMatch: [
'.gitea/workflows/.+\\.ya?ml$',
managerFilePatterns: [
'/.gitea/workflows/.+\\.ya?ml$/',
],
matchStrings: [
'# renovate: datasource=(?<datasource>[a-z-.]+?) depName=(?<depName>[^\\s]+?)(?: (?:lookupName|packageName)=(?<packageName>[^\\s]+?))?(?: versioning=(?<versioning>[a-z-0-9]+?))?\\s+[A-Za-z0-9_]+?_VERSION\\s*:\\s*["\']?(?<currentValue>.+?)["\']?\\s',
@ -30,21 +30,33 @@
{
description: 'Detect helm-unittest yaml schema file',
customType: 'regex',
fileMatch: ['.vscode/settings\\.json$'],
managerFilePatterns: [
'/.vscode/settings\\.json$/',
],
matchStrings: [
'https:\\/\\/raw\\.githubusercontent\\.com\\/(?<depName>[^\\s]+?)\\/(?<currentValue>v[0-9.]+?)\\/schema\\/helm-testsuite\\.json',
],
datasourceTemplate: 'github-releases',
},
{
'description': 'Automatically detect new Gitea releases',
'customType': 'regex',
'fileMatch': ['(^|/)Chart\\.yaml$'],
'matchStrings': [
description: 'Automatically detect new Gitea releases',
customType: 'regex',
managerFilePatterns: [
'/(^|/)Chart\\.yaml$/',
],
matchStrings: [
'# renovate datasource=(?<datasource>\\S+) depName=(?<depName>\\S+) extractVersion=(?<extractVersion>\\S+)\\nappVersion:\\s?(?<currentValue>\\S+)\\n',
],
},
],
lockFileMaintenance: {
"enabled": true,
"commitMessageAction": "update",
"commitMessageTopic": "lockfiles",
schedule: [
'at any time',
]
},
packageRules: [
{
groupName: 'subcharts (minor & patch)',
@ -57,6 +69,17 @@
'digest',
],
},
{
groupName: 'bats testing framework',
matchManagers: [
'git-submodules',
],
matchUpdateTypes: [
'minor',
'patch',
'digest',
],
},
{
groupName: 'workflow dependencies (minor & patch)',
matchManagers: [
@ -101,7 +124,9 @@
matchDepNames: [
'go-gitea/gitea',
],
schedule: ['at any time'],
schedule: [
'at any time',
],
},
],
}

View File

@ -133,29 +133,29 @@ app.kubernetes.io/instance: {{ .Release.Name }}
{{- end -}}
{{- end -}}
{{- define "redis.dns" -}}
{{- if and ((index .Values "redis-cluster").enabled) ((index .Values "redis").enabled) -}}
{{- fail "redis and redis-cluster cannot be enabled at the same time. Please only choose one." -}}
{{- else if (index .Values "redis-cluster").enabled -}}
{{- printf "redis+cluster://:%s@%s-redis-cluster-headless.%s.svc.%s:%g/0?pool_size=100&idle_timeout=180s&" (index .Values "redis-cluster").global.redis.password .Release.Name .Release.Namespace .Values.clusterDomain (index .Values "redis-cluster").service.ports.redis -}}
{{- else if (index .Values "redis").enabled -}}
{{- printf "redis://:%s@%s-redis-headless.%s.svc.%s:%g/0?pool_size=100&idle_timeout=180s&" (index .Values "redis").global.redis.password .Release.Name .Release.Namespace .Values.clusterDomain (index .Values "redis").master.service.ports.redis -}}
{{- define "valkey.dns" -}}
{{- if and ((index .Values "valkey-cluster").enabled) ((index .Values "valkey").enabled) -}}
{{- fail "valkey and valkey-cluster cannot be enabled at the same time. Please only choose one." -}}
{{- else if (index .Values "valkey-cluster").enabled -}}
{{- printf "redis+cluster://:%s@%s-valkey-cluster-headless.%s.svc.%s:%g/0?pool_size=100&idle_timeout=180s&" (index .Values "valkey-cluster").global.valkey.password .Release.Name .Release.Namespace .Values.clusterDomain (index .Values "valkey-cluster").service.ports.valkey -}}
{{- else if (index .Values "valkey").enabled -}}
{{- printf "redis://:%s@%s-valkey-headless.%s.svc.%s:%g/0?pool_size=100&idle_timeout=180s&" (index .Values "valkey").global.valkey.password .Release.Name .Release.Namespace .Values.clusterDomain (index .Values "valkey").master.service.ports.valkey -}}
{{- end -}}
{{- end -}}
{{- define "redis.port" -}}
{{- if (index .Values "redis-cluster").enabled -}}
{{ (index .Values "redis-cluster").service.ports.redis }}
{{- else if (index .Values "redis").enabled -}}
{{ (index .Values "redis").master.service.ports.redis }}
{{- define "valkey.port" -}}
{{- if (index .Values "valkey-cluster").enabled -}}
{{ (index .Values "valkey-cluster").service.ports.valkey }}
{{- else if (index .Values "valkey").enabled -}}
{{ (index .Values "valkey").master.service.ports.valkey }}
{{- end -}}
{{- end -}}
{{- define "redis.servicename" -}}
{{- if (index .Values "redis-cluster").enabled -}}
{{- printf "%s-redis-cluster-headless.%s.svc.%s" .Release.Name .Release.Namespace .Values.clusterDomain -}}
{{- else if (index .Values "redis").enabled -}}
{{- printf "%s-redis-headless.%s.svc.%s" .Release.Name .Release.Namespace .Values.clusterDomain -}}
{{- define "valkey.servicename" -}}
{{- if (index .Values "valkey-cluster").enabled -}}
{{- printf "%s-valkey-cluster-headless.%s.svc.%s" .Release.Name .Release.Namespace .Values.clusterDomain -}}
{{- else if (index .Values "valkey").enabled -}}
{{- printf "%s-valkey-headless.%s.svc.%s" .Release.Name .Release.Namespace .Values.clusterDomain -}}
{{- end -}}
{{- end -}}
@ -220,15 +220,6 @@ https
{{- end -}}
{{- end -}}
{{- define "gitea.act_runner.local_root_url" -}}
{{- if not .Values.gitea.config.server.LOCAL_ROOT_URL -}}
{{- printf "http://%s-http:%.0f" (include "gitea.fullname" .) .Values.service.http.port -}}
{{- else -}}
{{/* fallback for allowing to overwrite this value via inline config */}}
{{- .Values.gitea.config.server.LOCAL_ROOT_URL -}}
{{- end -}}
{{- end -}}
{{- define "gitea.inline_configuration" -}}
{{- include "gitea.inline_configuration.init" . -}}
{{- include "gitea.inline_configuration.defaults" . -}}
@ -314,14 +305,14 @@ https
{{- if and (not (hasKey .Values.gitea.config.metrics "TOKEN")) (.Values.gitea.metrics.token) (.Values.gitea.metrics.enabled) -}}
{{- $_ := set .Values.gitea.config.metrics "TOKEN" .Values.gitea.metrics.token -}}
{{- end -}}
{{- /* redis queue */ -}}
{{- if or ((index .Values "redis-cluster").enabled) ((index .Values "redis").enabled) -}}
{{- /* valkey queue */ -}}
{{- if or ((index .Values "valkey-cluster").enabled) ((index .Values "valkey").enabled) -}}
{{- $_ := set .Values.gitea.config.queue "TYPE" "redis" -}}
{{- $_ := set .Values.gitea.config.queue "CONN_STR" (include "redis.dns" .) -}}
{{- $_ := set .Values.gitea.config.queue "CONN_STR" (include "valkey.dns" .) -}}
{{- $_ := set .Values.gitea.config.session "PROVIDER" "redis" -}}
{{- $_ := set .Values.gitea.config.session "PROVIDER_CONFIG" (include "redis.dns" .) -}}
{{- $_ := set .Values.gitea.config.session "PROVIDER_CONFIG" (include "valkey.dns" .) -}}
{{- $_ := set .Values.gitea.config.cache "ADAPTER" "redis" -}}
{{- $_ := set .Values.gitea.config.cache "HOST" (include "redis.dns" .) -}}
{{- $_ := set .Values.gitea.config.cache "HOST" (include "valkey.dns" .) -}}
{{- else -}}
{{- if not (get .Values.gitea.config.session "PROVIDER") -}}
{{- $_ := set .Values.gitea.config.session "PROVIDER" "memory" -}}
@ -345,9 +336,6 @@ https
{{- if not .Values.gitea.config.indexer.ISSUE_INDEXER_TYPE -}}
{{- $_ := set .Values.gitea.config.indexer "ISSUE_INDEXER_TYPE" "db" -}}
{{- end -}}
{{- if not .Values.gitea.config.actions.ENABLED -}}
{{- $_ := set .Values.gitea.config.actions "ENABLED" (ternary "true" "false" .Values.actions.enabled) -}}
{{- end -}}
{{- end -}}
{{- define "gitea.inline_configuration.defaults.server" -}}
@ -367,25 +355,24 @@ https
{{- if not .Values.gitea.config.server.ROOT_URL -}}
{{- $_ := set .Values.gitea.config.server "ROOT_URL" (printf "%s://%s" (include "gitea.public_protocol" .) .Values.gitea.config.server.DOMAIN) -}}
{{- end -}}
{{- if .Values.actions.enabled -}}
{{- $_ := set .Values.gitea.config.server "LOCAL_ROOT_URL" (include "gitea.act_runner.local_root_url" .) -}}
{{- end -}}
{{- if not .Values.gitea.config.server.SSH_DOMAIN -}}
{{- $_ := set .Values.gitea.config.server "SSH_DOMAIN" .Values.gitea.config.server.DOMAIN -}}
{{- end -}}
{{- if not .Values.gitea.config.server.SSH_PORT -}}
{{- $_ := set .Values.gitea.config.server "SSH_PORT" .Values.service.ssh.port -}}
{{- end -}}
{{- if not (hasKey .Values.gitea.config.server "SSH_LISTEN_PORT") -}}
{{- if not .Values.image.rootless -}}
{{- $_ := set .Values.gitea.config.server "SSH_LISTEN_PORT" .Values.gitea.config.server.SSH_PORT -}}
{{- else -}}
{{- $_ := set .Values.gitea.config.server "SSH_LISTEN_PORT" "2222" -}}
{{- end -}}
{{- end -}}
{{- if not (hasKey .Values.gitea.config.server "START_SSH_SERVER") -}}
{{- if .Values.image.rootless -}}
{{- $_ := set .Values.gitea.config.server "START_SSH_SERVER" "true" -}}
{{- if not (hasKey .Values.gitea.config.server "SSH_LISTEN_PORT") -}}
{{- if not .Values.gitea.config.server.SSH_LISTEN_PORT -}}
{{- $_ := set .Values.gitea.config.server "SSH_LISTEN_PORT" .Values.gitea.config.server.SSH_PORT -}}
{{- else -}}
{{- $_ := set .Values.gitea.config.server "SSH_LISTEN_PORT" .Values.gitea.config.server.SSH_LISTEN_PORT -}}
{{- end -}}
{{- end -}}
{{- else -}}
{{- $_ := set .Values.gitea.config.server "START_SSH_SERVER" "false" -}}
{{- end -}}
{{- end -}}
{{- if not (hasKey .Values.gitea.config.server "APP_DATA_PATH") -}}
@ -443,6 +430,18 @@ https
{{ .Values.serviceAccount.name | default (include "gitea.fullname" .) }}
{{- end -}}
{{- define "ingress.annotations" -}}
{{- if .Values.ingress.annotations }}
annotations:
{{- $tp := typeOf .Values.ingress.annotations }}
{{- if eq $tp "string" }}
{{- tpl .Values.ingress.annotations . | nindent 4 }}
{{- else }}
{{- toYaml .Values.ingress.annotations | nindent 4 }}
{{- end }}
{{- end }}
{{- end -}}
{{- define "gitea.admin.passwordMode" -}}
{{- if has .Values.gitea.admin.passwordMode (tuple "keepUpdated" "initialOnlyNoReset" "initialOnlyRequireReset") -}}
{{ .Values.gitea.admin.passwordMode }}
@ -471,4 +470,4 @@ https
{{- define "gitea.metrics-secret-name" -}}
{{ default (printf "%s-metrics-secret" (include "gitea.fullname" .)) }}
{{- end -}}
{{- end -}}

View File

@ -1,15 +0,0 @@
{{- if .Values.actions.enabled -}}
{{- if .Values.actions.provisioning.enabled -}}
{{- if not (and .Values.persistence.enabled .Values.persistence.mount) -}}
{{- fail "persistence.enabled and persistence.mount are required when provisioning is enabled" -}}
{{- end -}}
{{- if and .Values.persistence.enabled .Values.persistence.mount -}}
{{- if .Values.actions.existingSecret -}}
{{- fail "Can't specify both actions.provisioning.enabled and actions.existingSecret" -}}
{{- end -}}
{{- end -}}
{{- end -}}
{{- if and (not .Values.actions.provisioning.enabled) (or (empty .Values.actions.existingSecret) (empty .Values.actions.existingSecretKey)) -}}
{{- fail "actions.existingSecret and actions.existingSecretKey are required when provisioning is disabled" -}}
{{- end -}}
{{- end -}}

View File

@ -1,15 +0,0 @@
{{- if .Values.actions.enabled }}
---
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "gitea.fullname" . }}-act-runner-config
namespace: {{ .Values.namespace | default .Release.Namespace }}
labels:
{{- include "gitea.labels" . | nindent 4 }}
data:
config.yaml: |
{{- with .Values.actions.statefulset.actRunner.config -}}
{{ . | nindent 4}}
{{- end -}}
{{- end }}

View File

@ -1,14 +0,0 @@
{{- if .Values.actions.enabled }}
{{- if and (and .Values.actions.provisioning.enabled .Values.persistence.enabled) .Values.persistence.mount }}
---
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ include "gitea.fullname" . }}-scripts
namespace: {{ .Values.namespace | default .Release.Namespace }}
labels:
{{- include "gitea.labels" . | nindent 4 }}
data:
{{ (.Files.Glob "scripts/act_runner/*.sh").AsConfig | indent 2 }}
{{- end }}
{{- end }}

View File

@ -1,115 +0,0 @@
{{- if .Values.actions.enabled }}
{{- if and (and .Values.actions.provisioning.enabled .Values.persistence.enabled) .Values.persistence.mount }}
{{- $name := include "gitea.workername" (dict "global" . "worker" "actions-token-job") }}
{{- $secretName := include "gitea.workername" (dict "global" . "worker" "actions-token") }}
---
apiVersion: batch/v1
kind: Job
metadata:
name: {{ $name }}
namespace: {{ .Values.namespace | default .Release.Namespace }}
labels:
{{- include "gitea.labels" . | nindent 4 }}
{{- with .Values.actions.provisioning.labels }}
{{- toYaml . | nindent 4 }}
{{- end }}
app.kubernetes.io/component: token-job
annotations:
{{- with .Values.actions.provisioning.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
ttlSecondsAfterFinished: {{ .Values.actions.provisioning.ttlSecondsAfterFinished }}
template:
metadata:
labels:
{{- include "gitea.labels" . | nindent 8 }}
{{- with .Values.actions.provisioning.labels }}
{{- toYaml . | nindent 8 }}
{{- end }}
app.kubernetes.io/component: token-job
spec:
initContainers:
- name: init-gitea
image: "{{ .Values.actions.init.image.repository }}:{{ .Values.actions.init.image.tag }}"
command:
- sh
- -c
- |
while ! nc -z {{ include "gitea.fullname" . }}-http {{ .Values.service.http.port }}; do
sleep 5
done
containers:
- name: actions-token-create
image: "{{ include "gitea.image" . }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
env:
- name: GITEA_APP_INI
value: /data/gitea/conf/app.ini
command:
- sh
- -c
- |
echo "Generating act_runner token via 'gitea actions generate-runner-token'..."
mkdir -p /data/actions/
gitea actions generate-runner-token | grep -E '^.{40}$' | tr -d '\n' > /data/actions/token
resources:
{{- toYaml .Values.actions.provisioning.resources | nindent 12 }}
volumeMounts:
- name: data
mountPath: /data
{{- if .Values.persistence.subPath }}
subPath: {{ .Values.persistence.subPath }}
{{- end }}
- name: actions-token-upload
image: "{{ .Values.actions.provisioning.publish.repository }}:{{ .Values.actions.provisioning.publish.tag }}"
imagePullPolicy: {{ .Values.actions.provisioning.publish.pullPolicy }}
env:
- name: SECRET_NAME
value: {{ $secretName }}
command:
- sh
- -c
- |
printf "Checking rights to update kubernetes act_runner secret..."
kubectl auth can-i update secret/${SECRET_NAME}
/scripts/token.sh
resources:
{{- toYaml .Values.actions.provisioning.resources | nindent 12 }}
volumeMounts:
- mountPath: /scripts
name: scripts
readOnly: true
- mountPath: /data
name: data
readOnly: true
{{- if .Values.persistence.subPath }}
subPath: {{ .Values.persistence.subPath }}
{{- end }}
{{- range $key, $value := .Values.actions.provisioning.nodeSelector }}
nodeSelector:
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- with .Values.actions.provisioning.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.actions.provisioning.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
restartPolicy: Never
serviceAccount: {{ $name }}
volumes:
- name: scripts
configMap:
name: {{ include "gitea.fullname" . }}-scripts
defaultMode: 0755
- name: data
persistentVolumeClaim:
claimName: {{ .Values.persistence.claimName }}
parallelism: 1
completions: 1
backoffLimit: 1
{{- end }}
{{- end }}

View File

@ -1,26 +0,0 @@
{{- if .Values.actions.enabled }}
{{- if and (and .Values.actions.provisioning.enabled .Values.persistence.enabled) .Values.persistence.mount }}
{{- $name := include "gitea.workername" (dict "global" . "worker" "actions-token-job") }}
{{- $secretName := include "gitea.workername" (dict "global" . "worker" "actions-token") }}
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: {{ $name }}
namespace: {{ .Values.namespace | default .Release.Namespace }}
labels:
{{- include "gitea.labels" . | nindent 4 }}
app.kubernetes.io/component: token-job
rules:
- apiGroups:
- ""
resources:
- secrets
resourceNames:
- {{ $secretName }}
verbs:
- get
- update
- patch
{{- end }}
{{- end }}

View File

@ -1,23 +0,0 @@
{{- if .Values.actions.enabled }}
{{- if and (and .Values.actions.provisioning.enabled .Values.persistence.enabled) .Values.persistence.mount }}
{{- $name := include "gitea.workername" (dict "global" . "worker" "actions-token-job") }}
{{- $secretName := include "gitea.workername" (dict "global" . "worker" "actions-token") }}
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: {{ $name }}
namespace: {{ .Values.namespace | default .Release.Namespace }}
labels:
{{- include "gitea.labels" . | nindent 4 }}
app.kubernetes.io/component: token-job
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: {{ $name }}
subjects:
- kind: ServiceAccount
name: {{ $name }}
namespace: {{ .Release.Namespace }}
{{- end }}
{{- end }}

View File

@ -1,20 +0,0 @@
{{- if .Values.actions.enabled }}
{{- if and (and .Values.actions.provisioning.enabled .Values.persistence.enabled) .Values.persistence.mount }}
{{- $name := include "gitea.workername" (dict "global" . "worker" "actions-token-job") }}
{{- $secretName := include "gitea.workername" (dict "global" . "worker" "actions-token") }}
---
apiVersion: v1
kind: Secret
metadata:
name: {{ $secretName }}
namespace: {{ .Values.namespace | default .Release.Namespace }}
labels:
{{- include "gitea.labels" . | nindent 4 }}
app.kubernetes.io/component: token-job
{{ $secret := (lookup "v1" "Secret" .Release.Namespace $secretName) -}}
{{ if $secret -}}
data:
token: {{ (b64dec (index $secret.data "token")) | b64enc }}
{{ end -}}
{{- end }}
{{- end }}

View File

@ -1,14 +0,0 @@
{{- if .Values.actions.enabled }}
{{- if and (and .Values.actions.provisioning.enabled .Values.persistence.enabled) .Values.persistence.mount }}
{{- $name := include "gitea.workername" (dict "global" . "worker" "actions-token-job") }}
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ $name }}
namespace: {{ .Values.namespace | default .Release.Namespace }}
labels:
{{- include "gitea.labels" . | nindent 4 }}
app.kubernetes.io/component: token-job
{{- end }}
{{- end }}

View File

@ -1,129 +0,0 @@
{{- if .Values.actions.enabled }}
{{- $secretName := include "gitea.workername" (dict "global" . "worker" "actions-token") }}
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
labels:
{{- include "gitea.labels.actRunner" . | nindent 4 }}
{{- with .Values.actions.statefulset.labels }}
{{- toYaml . | nindent 4 }}
{{- end }}
annotations:
{{- with .Values.actions.statefulset.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
name: {{ include "gitea.fullname" . }}-act-runner
namespace: {{ .Values.namespace | default .Release.Namespace }}
spec:
selector:
matchLabels:
{{- include "gitea.selectorLabels.actRunner" . | nindent 6 }}
template:
metadata:
annotations:
checksum/config: {{ include (print $.Template.BasePath "/gitea/act_runner/config-act-runner.yaml") . | sha256sum }}
labels:
{{- include "gitea.labels.actRunner" . | nindent 8 }}
{{- with .Values.actions.statefulset.labels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
initContainers:
- name: init-gitea
image: "{{ .Values.actions.init.image.repository }}:{{ .Values.actions.init.image.tag }}"
command:
- sh
- -c
- |
while ! nc -z {{ include "gitea.fullname" . }}-http {{ .Values.service.http.port }}; do
sleep 5
done
containers:
- name: act-runner
image: "{{ .Values.actions.statefulset.actRunner.repository }}:{{ .Values.actions.statefulset.actRunner.tag }}"
imagePullPolicy: {{ .Values.actions.statefulset.actRunner.pullPolicy }}
workingDir: /data
env:
- name: DOCKER_HOST
value: tcp://127.0.0.1:2376
- name: DOCKER_TLS_VERIFY
value: "1"
- name: DOCKER_CERT_PATH
value: /certs/server
- name: GITEA_RUNNER_REGISTRATION_TOKEN
valueFrom:
secretKeyRef:
name: "{{ .Values.actions.existingSecret | default $secretName }}"
key: "{{ .Values.actions.existingSecretKey | default "token" }}"
- name: GITEA_INSTANCE_URL
value: {{ include "gitea.act_runner.local_root_url" . }}
- name: CONFIG_FILE
value: /actrunner/config.yaml
resources:
{{- toYaml .Values.actions.statefulset.resources | nindent 12 }}
volumeMounts:
- mountPath: /actrunner/config.yaml
name: act-runner-config
subPath: config.yaml
- mountPath: /certs/server
name: docker-certs
- mountPath: /data
name: data-act-runner
{{- with .Values.actions.statefulset.actRunner.extraVolumeMounts }}
{{- toYaml . | nindent 12 }}
{{- end }}
- name: dind
image: "{{ .Values.actions.statefulset.dind.repository }}:{{ .Values.actions.statefulset.dind.tag }}"
imagePullPolicy: {{ .Values.actions.statefulset.dind.pullPolicy }}
env:
- name: DOCKER_HOST
value: tcp://127.0.0.1:2376
- name: DOCKER_TLS_VERIFY
value: "1"
- name: DOCKER_CERT_PATH
value: /certs/server
{{- if .Values.actions.statefulset.dind.extraEnvs }}
{{- toYaml .Values.actions.statefulset.dind.extraEnvs | nindent 12 }}
{{- end }}
securityContext:
privileged: true
resources:
{{- toYaml .Values.actions.statefulset.resources | nindent 12 }}
volumeMounts:
- mountPath: /certs/server
name: docker-certs
{{- with .Values.actions.statefulset.dind.extraVolumeMounts }}
{{- toYaml . | nindent 12 }}
{{- end }}
{{- range $key, $value := .Values.actions.statefulset.nodeSelector }}
nodeSelector:
{{ $key }}: {{ $value | quote }}
{{- end }}
{{- with .Values.actions.statefulset.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.actions.statefulset.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
volumes:
- name: act-runner-config
configMap:
name: {{ include "gitea.fullname" . }}-act-runner-config
- name: docker-certs
emptyDir: {}
{{- with .Values.actions.statefulset.extraVolumes }}
{{- toYaml . | nindent 8 }}
{{- end }}
volumeClaimTemplates:
- metadata:
name: data-act-runner
spec:
accessModes: [ "ReadWriteOnce" ]
{{- include "gitea.persistence.storageClass" . | nindent 8 }}
resources:
requests:
storage: 1Mi
{{- end }}

View File

@ -0,0 +1,3 @@
{{- if .Values.actions -}}
{{- fail "The actions sub-chart has been outsourced to a dedicated chart available at https://gitea.com/gitea/helm-actions. For assistance with the migration process, check https://gitea.com/gitea/helm-actions/issues/9." -}}
{{- end -}}

View File

@ -27,17 +27,17 @@ stringData:
{{- end }}
{{- /* multiple replicas assertions */ -}}
{{- if gt .Values.replicaCount 1.0 -}}
{{- if gt (.Values.replicaCount | int) 1 -}}
{{- if .Values.gitea.config.cron -}}
{{- if .Values.gitea.config.cron.GIT_GC_REPOS -}}
{{- if eq .Values.gitea.config.cron.GIT_GC_REPOS.ENABLED true -}}
{{ fail "Invoking the garbage collector via CRON is not yet supported when running with multiple replicas. Please set 'cron.GIT_GC_REPOS.enabled = false'." }}
{{ fail "Invoking the garbage collector via CRON is not yet supported when running with multiple replicas. Please set 'gitea.config.cron.GIT_GC_REPOS.enabled = false'." }}
{{- end }}
{{- end }}
{{- end }}
{{- if eq (first .Values.persistence.accessModes) "ReadWriteOnce" -}}
{{- fail "When using multiple replicas, a RWX file system is required and gitea.persistence.accessModes[0] must be set to ReadWriteMany." -}}
{{- fail "When using multiple replicas, a RWX file system is required and persistence.accessModes[0] must be set to ReadWriteMany." -}}
{{- end }}
{{- if .Values.gitea.config.indexer -}}
{{- if eq .Values.gitea.config.indexer.ISSUE_INDEXER_TYPE "bleve" -}}

View File

@ -62,7 +62,8 @@ spec:
- name: init-directories
image: "{{ include "gitea.image" . }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
command: ["/usr/sbin/init_directory_structure.sh"]
command:
- "{{ .Values.initContainersScriptsVolumeMountPath }}/init_directory_structure.sh"
env:
- name: GITEA_APP_INI
value: /data/gitea/conf/app.ini
@ -81,7 +82,7 @@ spec:
{{- end }}
volumeMounts:
- name: init
mountPath: /usr/sbin
mountPath: {{ .Values.initContainersScriptsVolumeMountPath }}
- name: temp
mountPath: /tmp
- name: data
@ -97,7 +98,8 @@ spec:
- name: init-app-ini
image: "{{ include "gitea.image" . }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
command: ["/usr/sbin/config_environment.sh"]
command:
- "{{ .Values.initContainersScriptsVolumeMountPath }}/config_environment.sh"
env:
- name: GITEA_APP_INI
value: /data/gitea/conf/app.ini
@ -115,11 +117,11 @@ spec:
{{- toYaml .Values.deployment.env | nindent 12 }}
{{- end }}
{{- if .Values.gitea.additionalConfigFromEnvs }}
{{- toYaml .Values.gitea.additionalConfigFromEnvs | nindent 12 }}
{{- tpl (toYaml .Values.gitea.additionalConfigFromEnvs) $ | nindent 12 }}
{{- end }}
volumeMounts:
- name: config
mountPath: /usr/sbin
mountPath: {{ .Values.initContainersScriptsVolumeMountPath }}
- name: temp
mountPath: /tmp
- name: data
@ -141,7 +143,8 @@ spec:
{{- if .Values.signing.enabled }}
- name: configure-gpg
image: "{{ include "gitea.image" . }}"
command: ["/usr/sbin/configure_gpg_environment.sh"]
command:
- "{{ .Values.initContainersScriptsVolumeMountPath }}/configure_gpg_environment.sh"
imagePullPolicy: {{ .Values.image.pullPolicy }}
securityContext:
{{- /* By default this container runs as user 1000 unless otherwise stated */ -}}
@ -157,7 +160,7 @@ spec:
value: /raw/private.asc
volumeMounts:
- name: init
mountPath: /usr/sbin
mountPath: {{ .Values.initContainersScriptsVolumeMountPath }}
- name: data
mountPath: /data
{{- if .Values.persistence.subPath }}
@ -174,7 +177,8 @@ spec:
{{- end }}
- name: configure-gitea
image: "{{ include "gitea.image" . }}"
command: ["/usr/sbin/configure_gitea.sh"]
command:
- "{{ .Values.initContainersScriptsVolumeMountPath }}/configure_gitea.sh"
imagePullPolicy: {{ .Values.image.pullPolicy }}
securityContext:
{{- /* By default this container runs as user 1000 unless otherwise stated */ -}}
@ -257,7 +261,7 @@ spec:
{{- end }}
volumeMounts:
- name: init
mountPath: /usr/sbin
mountPath: {{ .Values.initContainersScriptsVolumeMountPath }}
- name: temp
mountPath: /tmp
- name: data

View File

@ -1,15 +1,7 @@
{{- if .Values.ingress.enabled -}}
{{- $fullName := include "gitea.fullname" . -}}
{{- $httpPort := .Values.service.http.port -}}
{{- $apiVersion := "extensions/v1beta1" -}}
{{- if .Values.ingress.apiVersion -}}
{{- $apiVersion = .Values.ingress.apiVersion -}}
{{- else if .Capabilities.APIVersions.Has "networking.k8s.io/v1/Ingress" -}}
{{- $apiVersion = "networking.k8s.io/v1" }}
{{- else if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1/Ingress" -}}
{{- $apiVersion = "networking.k8s.io/v1beta1" }}
{{- end }}
apiVersion: {{ $apiVersion }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: {{ $fullName }}
@ -21,9 +13,7 @@ metadata:
{{ $key }}: {{ $value | quote }}
{{- end }}
spec:
{{- if .Values.ingress.className }}
ingressClassName: {{ tpl .Values.ingress.className . }}
{{- end }}
{{- if .Values.ingress.tls }}
tls:
{{- range .Values.ingress.tls }}
@ -39,21 +29,34 @@ spec:
- host: {{ tpl .host $ | quote }}
http:
paths:
{{- if .paths }}
{{- range .paths }}
- path: {{ .path }}
{{- if and .pathType (eq $apiVersion "networking.k8s.io/v1") }}
pathType: {{ .pathType }}
{{- end }}
{{- if kindIs "string" . }}
- path: {{ . }}
pathType: {{ default "Prefix" $.Values.ingress.pathType }}
backend:
service:
name: {{ $fullName }}-http
port:
number: {{ $httpPort }}
{{- else }}
- path: {{ .path | default "/" }}
pathType: {{ .pathType | default "Prefix" }}
backend:
service:
name: {{ $fullName }}-http
port:
number: {{ $httpPort }}
{{- end }}
{{- end }}
{{- else }}
- path: "/"
pathType: "Prefix"
backend:
{{- if eq $apiVersion "networking.k8s.io/v1" }}
service:
name: {{ $fullName }}-http
port:
number: {{ $httpPort }}
{{- else }}
serviceName: {{ $fullName }}-http
servicePort: {{ $httpPort }}
{{- end }}
{{- end }}
{{- end }}
{{- end }}

View File

@ -57,25 +57,25 @@ stringData:
exit 1
}
{{- if include "redis.servicename" . }}
function test_redis_connection() {
{{- if include "valkey.servicename" . }}
function test_valkey_connection() {
local RETRY=0
local MAX=30
echo 'Wait for redis to become avialable...'
echo 'Wait for valkey to become avialable...'
until [ "${RETRY}" -ge "${MAX}" ]; do
nc -vz -w2 {{ include "redis.servicename" . }} {{ include "redis.port" . }} && break
nc -vz -w2 {{ include "valkey.servicename" . }} {{ include "valkey.port" . }} && break
RETRY=$[${RETRY}+1]
echo "...not ready yet (${RETRY}/${MAX})"
done
if [ "${RETRY}" -ge "${MAX}" ]; then
echo "Redis not reachable after '${MAX}' attempts!"
echo "Valkey not reachable after '${MAX}' attempts!"
exit 1
fi
}
test_redis_connection
test_valkey_connection
{{- end }}
@ -94,7 +94,7 @@ stringData:
echo "ERROR: 'configure_admin_user' was not able to determine the current list of admin users."
echo " Please review the output of 'gitea admin user list --admin' shown below."
echo " If you think it is an issue with the Helm Chart provisioning, file an issue at https://gitea.com/gitea/helm-chart/issues."
echo " If you think it is an issue with the Helm Chart provisioning, file an issue at https://gitea.com/gitea/helm-gitea/issues."
echo "DEBUG: Output of 'gitea admin user list --admin'"
echo "--"
echo "${full_admin_list}"
@ -117,7 +117,7 @@ stringData:
else
if [[ "${GITEA_ADMIN_PASSWORD_MODE}" = keepUpdated ]]; then
echo "Admin account '${GITEA_ADMIN_USERNAME}' already exist. Running update to sync password..."
# See https://gitea.com/gitea/helm-chart/issues/673
# See https://gitea.com/gitea/helm-gitea/issues/673
# --must-change-password argument was added to change-password, defaulting to true, counter to the previous behavior
# which acted as if it were provided with =false. If the argument is present in this version of gitea, then we
# should add it to prevent requiring frequent admin password resets.
@ -154,7 +154,7 @@ stringData:
echo "ERROR: 'configure_ldap' was not able to determine the current list of authentication sources."
echo " Please review the output of 'gitea admin auth list --vertical-bars' shown below."
echo " If you think it is an issue with the Helm Chart provisioning, file an issue at https://gitea.com/gitea/helm-chart/issues."
echo " If you think it is an issue with the Helm Chart provisioning, file an issue at https://gitea.com/gitea/helm-gitea/issues."
echo "DEBUG: Output of 'gitea admin auth list --vertical-bars'"
echo "--"
echo "${full_auth_list}"
@ -198,7 +198,7 @@ stringData:
echo "ERROR: 'configure_oauth' was not able to determine the current list of authentication sources."
echo " Please review the output of 'gitea admin auth list --vertical-bars' shown below."
echo " If you think it is an issue with the Helm Chart provisioning, file an issue at https://gitea.com/gitea/helm-chart/issues."
echo " If you think it is an issue with the Helm Chart provisioning, file an issue at https://gitea.com/gitea/helm-gitea/issues."
echo "DEBUG: Output of 'gitea admin auth list --vertical-bars'"
echo "--"
echo "${full_auth_list}"
@ -225,4 +225,4 @@ stringData:
configure_oauth
echo '==== END GITEA CONFIGURATION ===='
echo '==== END GITEA CONFIGURATION ===='

View File

@ -10,7 +10,7 @@ metadata:
{{ .Values.persistence.labels | toYaml | indent 4}}
spec:
accessModes:
{{- if gt .Values.replicaCount 1.0 }}
{{- if gt (.Values.replicaCount | int) 1 }}
- ReadWriteMany
{{- else }}
{{- .Values.persistence.accessModes | toYaml | nindent 4 }}

View File

@ -1,69 +0,0 @@
suite: actions template | consistency checks
release:
name: gitea-unittests
namespace: testing
templates:
- templates/gitea/act_runner/01-consistency-checks.yaml
tests:
- it: fails when provisioning is enabled BUT persistence is completely disabled
set:
persistence:
enabled: false
actions:
enabled: true
provisioning:
enabled: true
asserts:
- failedTemplate:
errorMessage: "persistence.enabled and persistence.mount are required when provisioning is enabled"
- it: fails when provisioning is enabled BUT mount is disabled, although persistence is enabled
set:
persistence:
enabled: true
mount: false
actions:
enabled: true
provisioning:
enabled: true
asserts:
- failedTemplate:
errorMessage: "persistence.enabled and persistence.mount are required when provisioning is enabled"
- it: fails when provisioning is enabled AND existingSecret is given
set:
actions:
enabled: true
provisioning:
enabled: true
existingSecret: "secret-reference"
asserts:
- failedTemplate:
errorMessage: "Can't specify both actions.provisioning.enabled and actions.existingSecret"
- it: fails when provisioning is disabled BUT existingSecret and existingSecretKey are missing
set:
actions:
enabled: true
provisioning:
enabled: false
asserts:
- failedTemplate:
errorMessage: "actions.existingSecret and actions.existingSecretKey are required when provisioning is disabled"
- it: fails when provisioning is disabled BUT existingSecretKey is missing
set:
actions:
enabled: true
provisioning:
enabled: false
existingSecret: "my-secret"
asserts:
- failedTemplate:
errorMessage: "actions.existingSecret and actions.existingSecretKey are required when provisioning is disabled"
- it: fails when provisioning is disabled BUT existingSecret is missing
set:
actions:
enabled: true
provisioning:
enabled: false
existingSecretKey: "my-secret-key"
asserts:
- failedTemplate:
errorMessage: "actions.existingSecret and actions.existingSecretKey are required when provisioning is disabled"

View File

@ -1,45 +0,0 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json
suite: actions template | config-act-runner
release:
name: gitea-unittests
namespace: testing
templates:
- templates/gitea/act_runner/config-act-runner.yaml
tests:
- it: doesn't renders a ConfigMap by default
template: templates/gitea/act_runner/config-act-runner.yaml
asserts:
- hasDocuments:
count: 0
- it: renders a ConfigMap
template: templates/gitea/act_runner/config-act-runner.yaml
set:
actions:
enabled: true
statefulset:
actRunner:
config: |
log:
level: info
cache:
enabled: false
runner:
labels:
- "ubuntu-latest"
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: ConfigMap
apiVersion: v1
name: gitea-unittests-act-runner-config
- equal:
path: data["config.yaml"]
value: |
log:
level: info
cache:
enabled: false
runner:
labels:
- "ubuntu-latest"

View File

@ -1,49 +0,0 @@
suite: actions template | config-scripts
release:
name: gitea-unittests
namespace: testing
templates:
- templates/gitea/act_runner/config-scripts.yaml
tests:
- it: renders a ConfigMap when all criteria are met
template: templates/gitea/act_runner/config-scripts.yaml
set:
actions:
enabled: true
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: ConfigMap
apiVersion: v1
name: gitea-unittests-scripts
- isNotNullOrEmpty:
path: data["token.sh"]
- it: doesn't renders a ConfigMap by default
template: templates/gitea/act_runner/config-scripts.yaml
asserts:
- hasDocuments:
count: 0
- it: doesn't renders a ConfigMap with disabled actions but enabled provisioning
template: templates/gitea/act_runner/config-scripts.yaml
asserts:
- hasDocuments:
count: 0
- it: doesn't renders a ConfigMap with disabled actions but otherwise met criteria
template: templates/gitea/act_runner/config-scripts.yaml
set:
actions:
enabled: false
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 0

View File

@ -1,65 +0,0 @@
suite: actions template | job
release:
name: gitea-unittests
namespace: testing
chart:
# Override appVersion to have a pinned version for comparison
appVersion: 1.19.3
templates:
- templates/gitea/act_runner/job.yaml
tests:
- it: renders a Job
template: templates/gitea/act_runner/job.yaml
set:
actions:
enabled: true
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: Job
apiVersion: batch/v1
name: gitea-unittests-actions-token-job
- equal:
path: spec.template.spec.containers[0].image
value: "docker.gitea.com/gitea:1.19.3-rootless"
- it: tag override
template: templates/gitea/act_runner/job.yaml
set:
image.tag: "1.19.4"
actions:
enabled: true
provisioning:
enabled: true
publish:
tag: "1.29.0"
persistence:
enabled: true
mount: true
asserts:
- equal:
path: spec.template.spec.containers[0].image
value: "docker.gitea.com/gitea:1.19.4-rootless"
- equal:
path: spec.template.spec.containers[1].image
value: "bitnami/kubectl:1.29.0"
- it: doesn't renders a Job by default
template: templates/gitea/act_runner/job.yaml
asserts:
- hasDocuments:
count: 0
- it: doesn't renders a Job when provisioning is enabled BUT actions are not enabled
template: templates/gitea/act_runner/job.yaml
set:
actions:
enabled: false
provisioning:
enabled: true
asserts:
- hasDocuments:
count: 0

View File

@ -1,42 +0,0 @@
suite: actions template | role-job
release:
name: gitea-unittests
namespace: testing
templates:
- templates/gitea/act_runner/role-job.yaml
tests:
- it: doesn't renders a Role by default
template: templates/gitea/act_runner/role-job.yaml
asserts:
- hasDocuments:
count: 0
- it: renders a Role
template: templates/gitea/act_runner/role-job.yaml
set:
actions:
enabled: true
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
name: gitea-unittests-actions-token-job
- it: doesn't renders a Role when criteria met BUT actions are not enabled
template: templates/gitea/act_runner/role-job.yaml
set:
actions:
enabled: false
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 0

View File

@ -1,42 +0,0 @@
suite: actions template | rolebinding-job
release:
name: gitea-unittests
namespace: testing
templates:
- templates/gitea/act_runner/rolebinding-job.yaml
tests:
- it: doesn't renders a RoleBinding by default
template: templates/gitea/act_runner/rolebinding-job.yaml
asserts:
- hasDocuments:
count: 0
- it: renders a RoleBinding
template: templates/gitea/act_runner/rolebinding-job.yaml
set:
actions:
enabled: true
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
name: gitea-unittests-actions-token-job
- it: doesn't renders a RoleBinding when criteria met BUT actions are not enabled
template: templates/gitea/act_runner/rolebinding-job.yaml
set:
actions:
enabled: false
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 0

View File

@ -1,42 +0,0 @@
suite: actions template | secret-token
release:
name: gitea-unittests
namespace: testing
templates:
- templates/gitea/act_runner/secret-token.yaml
tests:
- it: doesn't renders a Secret by default
template: templates/gitea/act_runner/secret-token.yaml
asserts:
- hasDocuments:
count: 0
- it: renders a Secret
template: templates/gitea/act_runner/secret-token.yaml
set:
actions:
enabled: true
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: Secret
apiVersion: v1
name: gitea-unittests-actions-token
- it: doesn't renders a Secret when criteria met BUT actions are not enabled
template: templates/gitea/act_runner/secret-token.yaml
set:
actions:
enabled: false
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 0

View File

@ -1,42 +0,0 @@
suite: actions template | serviceaccount-job
release:
name: gitea-unittests
namespace: testing
templates:
- templates/gitea/act_runner/serviceaccount-job.yaml
tests:
- it: doesn't renders a ServiceAccount by default
template: templates/gitea/act_runner/serviceaccount-job.yaml
asserts:
- hasDocuments:
count: 0
- it: renders a ServiceAccount
template: templates/gitea/act_runner/serviceaccount-job.yaml
set:
actions:
enabled: true
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: ServiceAccount
apiVersion: v1
name: gitea-unittests-actions-token-job
- it: doesn't renders a ServiceAccount when criteria met BUT actions are not enabled
template: templates/gitea/act_runner/serviceaccount-job.yaml
set:
actions:
enabled: false
provisioning:
enabled: true
persistence:
enabled: true
mount: true
asserts:
- hasDocuments:
count: 0

View File

@ -1,182 +0,0 @@
suite: actions template | statefulset
release:
name: gitea-unittests
namespace: testing
templates:
- templates/gitea/act_runner/statefulset.yaml
- templates/gitea/act_runner/config-act-runner.yaml
tests:
- it: doesn't renders a StatefulSet by default
template: templates/gitea/act_runner/statefulset.yaml
asserts:
- hasDocuments:
count: 0
- it: renders a StatefulSet (with given existingSecret/existingSecretKey)
template: templates/gitea/act_runner/statefulset.yaml
set:
actions:
enabled: true
existingSecret: "my-secret"
existingSecretKey: "my-secret-key"
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: StatefulSet
apiVersion: apps/v1
name: gitea-unittests-act-runner
- equal:
path: spec.template.spec.containers[0].env[3]
value:
name: GITEA_RUNNER_REGISTRATION_TOKEN
valueFrom:
secretKeyRef:
name: "my-secret"
key: "my-secret-key"
- it: renders a StatefulSet (with secret reference defaults for enabled provisioning)
template: templates/gitea/act_runner/statefulset.yaml
set:
actions:
enabled: true
provisioning:
enabled: true
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: StatefulSet
apiVersion: apps/v1
name: gitea-unittests-act-runner
- equal:
path: spec.template.spec.containers[0].env[3]
value:
name: GITEA_RUNNER_REGISTRATION_TOKEN
valueFrom:
secretKeyRef:
name: "gitea-unittests-actions-token"
key: "token"
- it: renders a StatefulSet (that tracks changes of the runner configuration as annotation)
template: templates/gitea/act_runner/statefulset.yaml
set:
image.tag: "1.22.3" # lock image tag to prevent test failures on future Gitea upgrades
actions:
enabled: true
existingSecret: "my-secret"
existingSecretKey: "my-secret-key"
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: StatefulSet
apiVersion: apps/v1
name: gitea-unittests-act-runner
- equal:
path: spec.template.metadata.annotations["checksum/config"]
value: "2a2200e80fc29111d18b675789c265cd3d5f917754850f946f1ce3c55dcd65f8"
- it: renders a StatefulSet (with correct GITEA_INSTANCE_URL env with default act-runner specific LOCAL_ROOT_URL)
template: templates/gitea/act_runner/statefulset.yaml
set:
actions:
enabled: true
existingSecret: "my-secret"
existingSecretKey: "my-secret-key"
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: StatefulSet
apiVersion: apps/v1
name: gitea-unittests-act-runner
- equal:
path: spec.template.spec.containers[0].env[4]
value:
name: GITEA_INSTANCE_URL
value: "http://gitea-unittests-http:3000"
- it: renders a StatefulSet (with correct GITEA_INSTANCE_URL env from customized LOCAL_ROOT_URL)
template: templates/gitea/act_runner/statefulset.yaml
set:
gitea.config.server.LOCAL_ROOT_URL: "http://git.example.com"
actions:
enabled: true
existingSecret: "my-secret"
existingSecretKey: "my-secret-key"
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: StatefulSet
apiVersion: apps/v1
name: gitea-unittests-act-runner
- equal:
path: spec.template.spec.containers[0].env[4]
value:
name: GITEA_INSTANCE_URL
value: "http://git.example.com"
- it: allows adding custom environment variables to the docker-in-docker container
template: templates/gitea/act_runner/statefulset.yaml
set:
actions:
enabled: true
statefulset:
dind:
extraEnvs:
- name: "CUSTOM_ENV_NAME"
value: "custom env value"
asserts:
- equal:
path: spec.template.spec.containers[1].env[3]
value:
name: "CUSTOM_ENV_NAME"
value: "custom env value"
- it: should mount an extra volume in the act runner container
template: templates/gitea/act_runner/statefulset.yaml
set:
actions:
enabled: true
statefulset:
extraVolumes:
- name: my-act-runner-volume
emptyDir: {}
actRunner:
extraVolumeMounts:
- mountPath: /mnt
name: my-act-runner-volume
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: StatefulSet
apiVersion: apps/v1
name: gitea-unittests-act-runner
- contains:
any: true
path: spec.template.spec.containers[0].volumeMounts
content:
mountPath: /mnt
name: my-act-runner-volume
- it: should mount an extra volume in the docker-in-docker container
template: templates/gitea/act_runner/statefulset.yaml
set:
actions:
enabled: true
statefulset:
extraVolumes:
- name: my-dind-volume
emptyDir: {}
dind:
extraVolumeMounts:
- mountPath: /mnt
name: my-dind-volume
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: StatefulSet
apiVersion: apps/v1
name: gitea-unittests-act-runner
- contains:
any: true
path: spec.template.spec.containers[1].volumeMounts
content:
mountPath: /mnt
name: my-dind-volume

View File

@ -0,0 +1,12 @@
suite: Check if actions raises an error
release:
name: gitea-unittests
namespace: testing
tests:
- it: fails when trying to configure actions due to removal
set:
actions:
enabled: true
asserts:
- failedTemplate:
errorMessage: The actions sub-chart has been outsourced to a dedicated chart available at https://gitea.com/gitea/helm-actions. For assistance with the migration process, check https://gitea.com/gitea/helm-actions/issues/9.

View File

@ -5,57 +5,20 @@ release:
templates:
- templates/gitea/config.yaml
tests:
- it: "actions are not enabled by default"
- it: "actions are enabled by default (based on vanilla Gitea behavior)"
template: templates/gitea/config.yaml
asserts:
- documentIndex: 0
notExists:
path: stringData.actions
- it: "actions can be disabled via inline config"
template: templates/gitea/config.yaml
set:
gitea.config.actions.ENABLED: false
asserts:
- documentIndex: 0
equal:
path: stringData.actions
value: |-
ENABLED=false
- it: "actions can be enabled via inline config"
template: templates/gitea/config.yaml
set:
gitea.config.actions.ENABLED: true
asserts:
- documentIndex: 0
equal:
path: stringData.actions
value: |-
ENABLED=true
- it: "actions can be enabled via dedicated values object"
template: templates/gitea/config.yaml
set:
actions:
enabled: true
asserts:
- documentIndex: 0
equal:
path: stringData.actions
value: |-
ENABLED=true
- it: "defines LOCAL_ROOT_URL when actions are enabled"
template: templates/gitea/config.yaml
set:
actions:
enabled: true
asserts:
- documentIndex: 0
matchRegex:
path: stringData.server
pattern: \nLOCAL_ROOT_URL=http://gitea-unittests-http:3000
- it: "respects custom LOCAL_ROOT_URL, even when actions are enabled"
template: templates/gitea/config.yaml
set:
actions:
enabled: true
gitea.config.server.LOCAL_ROOT_URL: "http://git.example.com"
asserts:
- documentIndex: 0
matchRegex:
path: stringData.server
pattern: \nLOCAL_ROOT_URL=http://git.example.com

View File

@ -3,12 +3,12 @@ release:
name: gitea-unittests
namespace: testing
tests:
- it: "cache is configured correctly for redis-cluster"
- it: "cache is configured correctly for valkey-cluster"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: true
redis:
valkey:
enabled: false
asserts:
- documentIndex: 0
@ -16,14 +16,14 @@ tests:
path: stringData.cache
value: |-
ADAPTER=redis
HOST=redis+cluster://:@gitea-unittests-redis-cluster-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
HOST=redis+cluster://:@gitea-unittests-valkey-cluster-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
- it: "cache is configured correctly for redis"
- it: "cache is configured correctly for valkey"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: true
asserts:
- documentIndex: 0
@ -31,14 +31,14 @@ tests:
path: stringData.cache
value: |-
ADAPTER=redis
HOST=redis://:changeme@gitea-unittests-redis-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
HOST=redis://:changeme@gitea-unittests-valkey-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
- it: "cache is configured correctly for 'memory' when redis (or redis-cluster) is disabled"
- it: "cache is configured correctly for 'memory' when valkey (or valkey-cluster) is disabled"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: false
asserts:
- documentIndex: 0
@ -48,12 +48,12 @@ tests:
ADAPTER=memory
HOST=
- it: "cache can be customized when redis (or redis-cluster) is disabled"
- it: "cache can be customized when valkey (or valkey-cluster) is disabled"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: false
gitea.config.cache.ADAPTER: custom-adapter
gitea.config.cache.HOST: custom-host

View File

@ -3,42 +3,42 @@ release:
name: gitea-unittests
namespace: testing
tests:
- it: "queue is configured correctly for redis-cluster"
- it: "queue is configured correctly for valkey-cluster"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: true
redis:
valkey:
enabled: false
asserts:
- documentIndex: 0
equal:
path: stringData.queue
value: |-
CONN_STR=redis+cluster://:@gitea-unittests-redis-cluster-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
CONN_STR=redis+cluster://:@gitea-unittests-valkey-cluster-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
TYPE=redis
- it: "queue is configured correctly for redis"
- it: "queue is configured correctly for valkey"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: true
asserts:
- documentIndex: 0
equal:
path: stringData.queue
value: |-
CONN_STR=redis://:changeme@gitea-unittests-redis-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
CONN_STR=redis://:changeme@gitea-unittests-valkey-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
TYPE=redis
- it: "queue is configured correctly for 'levelDB' when redis (and redis-cluster) is disabled"
- it: "queue is configured correctly for 'levelDB' when valkey (and valkey-cluster) is disabled"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: false
asserts:
- documentIndex: 0
@ -48,12 +48,12 @@ tests:
CONN_STR=
TYPE=level
- it: "queue can be customized when redis (and redis-cluster) are disabled"
- it: "queue can be customized when valkey (and valkey-cluster) are disabled"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: false
gitea.config.queue.TYPE: custom-type
gitea.config.queue.CONN_STR: custom-connection-string

View File

@ -3,12 +3,12 @@ release:
name: gitea-unittests
namespace: testing
tests:
- it: "session is configured correctly for redis-cluster"
- it: "session is configured correctly for valkey-cluster"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: true
redis:
valkey:
enabled: false
asserts:
- documentIndex: 0
@ -16,14 +16,14 @@ tests:
path: stringData.session
value: |-
PROVIDER=redis
PROVIDER_CONFIG=redis+cluster://:@gitea-unittests-redis-cluster-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
PROVIDER_CONFIG=redis+cluster://:@gitea-unittests-valkey-cluster-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
- it: "session is configured correctly for redis"
- it: "session is configured correctly for valkey"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: true
asserts:
- documentIndex: 0
@ -31,14 +31,14 @@ tests:
path: stringData.session
value: |-
PROVIDER=redis
PROVIDER_CONFIG=redis://:changeme@gitea-unittests-redis-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
PROVIDER_CONFIG=redis://:changeme@gitea-unittests-valkey-headless.testing.svc.cluster.local:6379/0?pool_size=100&idle_timeout=180s&
- it: "session is configured correctly for 'memory' when redis (and redis-cluster) is disabled"
- it: "session is configured correctly for 'memory' when valkey (and valkey-cluster) is disabled"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: false
asserts:
- documentIndex: 0
@ -48,12 +48,12 @@ tests:
PROVIDER=memory
PROVIDER_CONFIG=
- it: "session can be customized when redis (and redis-cluster) is disabled"
- it: "session can be customized when valkey (and valkey-cluster) is disabled"
template: templates/gitea/config.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: false
gitea.config.session.PROVIDER: custom-provider
gitea.config.session.PROVIDER_CONFIG: custom-provider-config

View File

@ -18,6 +18,7 @@ set:
password: custom-password-overwritten-by-global-postgresql-password
pgpool:
adminPassword: custom-password-pgpool
srCheckPassword: custom-password-sr-check
service:
ports:
postgresql: 1234
@ -75,6 +76,13 @@ tests:
equal:
path: data["admin-password"]
value: "Y3VzdG9tLXBhc3N3b3JkLXBncG9vbA=="
- it: "[postgresql-ha] pgpool.srCheckPassword is applied as expected"
template: charts/postgresql-ha/templates/pgpool/secrets.yaml
asserts:
- documentIndex: 0
equal:
path: data["sr-check-password"]
value: "Y3VzdG9tLXBhc3N3b3JkLXNyLWNoZWNr"
- it: "[postgresql-ha] persistence.size is applied as expected"
template: charts/postgresql-ha/templates/postgresql/statefulset.yaml
asserts:

View File

@ -1,19 +1,19 @@
suite: Dependency checks | Customization integrity | redis-cluster
suite: Dependency checks | Customization integrity | valkey-cluster
release:
name: gitea-unittests
namespace: testing
set:
redis:
valkey:
enabled: false
redis-cluster:
valkey-cluster:
enabled: true
usePassword: false
cluster:
nodes: 5
replicas: 2
tests:
- it: "[redis-cluster] configures correct nodes/replicas"
template: charts/redis-cluster/templates/redis-statefulset.yaml
- it: "[valkey-cluster] configures correct nodes/replicas"
template: charts/valkey-cluster/templates/valkey-statefulset.yaml
asserts:
- documentIndex: 0
equal:
@ -22,31 +22,31 @@ tests:
- documentIndex: 0
matchRegex:
path: spec.template.spec.containers[0].args[0]
pattern: REDIS_CLUSTER_REPLICAS="2"
- it: "[redis-cluster] support auth-less connections"
pattern: VALKEY_CLUSTER_REPLICAS="2"
- it: "[valkey-cluster] support auth-less connections"
asserts:
- template: charts/redis-cluster/templates/secret.yaml
- template: charts/valkey-cluster/templates/secret.yaml
hasDocuments:
count: 0
- template: charts/redis-cluster/templates/redis-statefulset.yaml
- template: charts/valkey-cluster/templates/valkey-statefulset.yaml
documentIndex: 0
contains:
path: spec.template.spec.containers[0].env
content:
name: ALLOW_EMPTY_PASSWORD
value: "yes"
- it: "[redis-cluster] support auth-full connections"
- it: "[valkey-cluster] support auth-full connections"
set:
redis-cluster:
valkey-cluster:
usePassword: true
asserts:
- template: charts/redis-cluster/templates/secret.yaml
- template: charts/valkey-cluster/templates/secret.yaml
containsDocument:
kind: Secret
apiVersion: v1
name: gitea-unittests-redis-cluster
name: gitea-unittests-valkey-cluster
namespace: testing
- template: charts/redis-cluster/templates/redis-statefulset.yaml
- template: charts/valkey-cluster/templates/valkey-statefulset.yaml
documentIndex: 0
contains:
path: spec.template.spec.containers[0].env
@ -54,25 +54,25 @@ tests:
name: REDISCLI_AUTH
valueFrom:
secretKeyRef:
name: gitea-unittests-redis-cluster
key: redis-password
- template: charts/redis-cluster/templates/redis-statefulset.yaml
name: gitea-unittests-valkey-cluster
key: valkey-password
- template: charts/valkey-cluster/templates/valkey-statefulset.yaml
documentIndex: 0
contains:
path: spec.template.spec.containers[0].env
content:
name: REDIS_PASSWORD
name: REDISCLI_AUTH
valueFrom:
secretKeyRef:
name: gitea-unittests-redis-cluster
key: redis-password
- it: "[redis-cluster] renders the referenced service"
template: charts/redis-cluster/templates/headless-svc.yaml
name: gitea-unittests-valkey-cluster
key: valkey-password
- it: "[valkey-cluster] renders the referenced service"
template: charts/valkey-cluster/templates/headless-svc.yaml
asserts:
- containsDocument:
kind: Service
apiVersion: v1
name: gitea-unittests-redis-cluster-headless
name: gitea-unittests-valkey-cluster-headless
namespace: testing
- documentIndex: 0
contains:
@ -81,10 +81,10 @@ tests:
name: tcp-redis
port: 6379
targetPort: tcp-redis
- it: "[gitea] waits for redis-cluster to be up and running"
- it: "[gitea] waits for valkey-cluster to be up and running"
template: templates/gitea/init.yaml
asserts:
- documentIndex: 0
matchRegex:
path: stringData["configure_gitea.sh"]
pattern: nc -vz -w2 gitea-unittests-redis-cluster-headless.testing.svc.cluster.local 6379
pattern: nc -vz -w2 gitea-unittests-valkey-cluster-headless.testing.svc.cluster.local 6379

View File

@ -1,40 +1,40 @@
suite: Dependency checks | Customization integrity | redis
suite: Dependency checks | Customization integrity | valkey
release:
name: gitea-unittests
namespace: testing
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: true
architecture: standalone
global:
redis:
valkey:
password: gitea-password
master:
count: 2
tests:
- it: "[redis] configures correct 'master' nodes"
template: charts/redis/templates/master/application.yaml
- it: "[valkey] configures correct 'master' nodes"
template: charts/valkey/templates/primary/application.yaml
asserts:
- documentIndex: 0
equal:
path: spec.replicas
value: 2
- it: "[redis] redis.global.redis.password is applied as expected"
template: charts/redis/templates/secret.yaml
value: 1
- it: "[valkey] valkey.global.valkey.password is applied as expected"
template: charts/valkey/templates/secret.yaml
asserts:
- documentIndex: 0
equal:
path: data["redis-password"]
path: data["valkey-password"]
value: "Z2l0ZWEtcGFzc3dvcmQ="
- it: "[redis] renders the referenced service"
template: charts/redis/templates/headless-svc.yaml
- it: "[valkey] renders the referenced service"
template: charts/valkey/templates/headless-svc.yaml
asserts:
- containsDocument:
kind: Service
apiVersion: v1
name: gitea-unittests-redis-headless
name: gitea-unittests-valkey-headless
namespace: testing
- documentIndex: 0
contains:
@ -43,10 +43,10 @@ tests:
name: tcp-redis
port: 6379
targetPort: redis
- it: "[gitea] waits for redis to be up and running"
- it: "[gitea] waits for valkey to be up and running"
template: templates/gitea/init.yaml
asserts:
- documentIndex: 0
matchRegex:
path: stringData["configure_gitea.sh"]
pattern: nc -vz -w2 gitea-unittests-redis-headless.testing.svc.cluster.local 6379
pattern: nc -vz -w2 gitea-unittests-valkey-headless.testing.svc.cluster.local 6379

View File

@ -29,29 +29,29 @@ tests:
path: spec.template.spec.containers[0].image
# IN CASE OF AN INTENTIONAL MAJOR BUMP, ADJUST THIS TEST
pattern: bitnami/postgresql:17.+$
- it: "[redis-cluster] ensures we detect major image version upgrades"
template: charts/redis-cluster/templates/redis-statefulset.yaml
- it: "[valkey-cluster] ensures we detect major image version upgrades"
template: charts/valkey-cluster/templates/valkey-statefulset.yaml
set:
redis-cluster:
valkey-cluster:
enabled: true
redis:
valkey:
enabled: false
asserts:
- documentIndex: 0
matchRegex:
path: spec.template.spec.containers[0].image
# IN CASE OF AN INTENTIONAL MAJOR BUMP, ADJUST THIS TEST
pattern: bitnami/redis-cluster:7.+$
- it: "[redis] ensures we detect major image version upgrades"
template: charts/redis/templates/master/application.yaml
pattern: bitnami/valkey-cluster:8.+$
- it: "[valkey] ensures we detect major image version upgrades"
template: charts/valkey/templates/primary/application.yaml
set:
redis-cluster:
valkey-cluster:
enabled: false
redis:
valkey:
enabled: true
asserts:
- documentIndex: 0
matchRegex:
path: spec.template.spec.containers[0].image
# IN CASE OF AN INTENTIONAL MAJOR BUMP, ADJUST THIS TEST
pattern: bitnami/redis:7.+$
pattern: bitnami/valkey:8.+$

View File

@ -20,14 +20,14 @@ tests:
ENABLED: true
asserts:
- failedTemplate:
errorMessage: "Invoking the garbage collector via CRON is not yet supported when running with multiple replicas. Please set 'cron.GIT_GC_REPOS.enabled = false'."
errorMessage: "Invoking the garbage collector via CRON is not yet supported when running with multiple replicas. Please set 'gitea.config.cron.GIT_GC_REPOS.enabled = false'."
- it: fails with multiple replicas and RWX file system not set
template: templates/gitea/deployment.yaml
set:
replicaCount: 2
asserts:
- failedTemplate:
errorMessage: "When using multiple replicas, a RWX file system is required and gitea.persistence.accessModes[0] must be set to ReadWriteMany."
errorMessage: "When using multiple replicas, a RWX file system is required and persistence.accessModes[0] must be set to ReadWriteMany."
- it: fails with multiple replicas and bleve issue indexer
template: templates/gitea/deployment.yaml
set:

View File

@ -73,3 +73,23 @@ tests:
requests:
cpu: 100ms
memory: 100Mi
- it: Init containers have correct volumeMount path
template: templates/gitea/deployment.yaml
set:
initContainersScriptsVolumeMountPath: "/custom/init/path"
asserts:
- equal:
path: spec.template.spec.initContainers[*].volumeMounts[?(@.name=="init")].mountPath
value: "/custom/init/path"
- equal:
path: spec.template.spec.initContainers[*].volumeMounts[?(@.name=="config")].mountPath
value: "/custom/init/path"
- it: Init containers have correct volumeMount path if there is no override
template: templates/gitea/deployment.yaml
asserts:
- equal:
path: spec.template.spec.initContainers[*].volumeMounts[?(@.name=="init")].mountPath
value: "/usr/sbinx"
- equal:
path: spec.template.spec.initContainers[*].volumeMounts[?(@.name=="config")].mountPath
value: "/usr/sbinx"

View File

@ -0,0 +1,150 @@
suite: deployment template
release:
name: gitea-unittests
namespace: testing
templates:
- templates/gitea/deployment.yaml
- templates/gitea/config.yaml
tests:
- it: Renders a deployment
template: templates/gitea/deployment.yaml
asserts:
- hasDocuments:
count: 1
- containsDocument:
kind: Deployment
apiVersion: apps/v1
name: gitea-unittests
- it: Deployment with empty additionalConfigFromEnvs
template: templates/gitea/deployment.yaml
set:
gitea.additionalConfigFromEnvs: []
asserts:
- hasDocuments:
count: 1
- exists:
path: spec.template.spec.initContainers[1].env
- lengthEqual:
path: spec.template.spec.initContainers[1].env
count: 6
- isSubset:
path: spec.template.spec.initContainers[1]
content:
env:
- name: GITEA_APP_INI
value: /data/gitea/conf/app.ini
- name: GITEA_CUSTOM
value: /data/gitea
- name: GITEA_WORK_DIR
value: /data
- name: GITEA_TEMP
value: /tmp/gitea
- name: TMP_EXISTING_ENVS_FILE
value: /tmp/existing-envs
- name: ENV_TO_INI_MOUNT_POINT
value: /env-to-ini-mounts
- it: Deployment with standard additionalConfigFromEnvs
template: templates/gitea/deployment.yaml
set:
gitea.additionalConfigFromEnvs: [{name: GITEA_database_HOST, value: my-db:123}, {name: GITEA_database_USER, value: my-user}]
asserts:
- hasDocuments:
count: 1
- exists:
path: spec.template.spec.initContainers[1].env
- lengthEqual:
path: spec.template.spec.initContainers[1].env
count: 8
- isSubset:
path: spec.template.spec.initContainers[1]
content:
env:
- name: GITEA_APP_INI
value: /data/gitea/conf/app.ini
- name: GITEA_CUSTOM
value: /data/gitea
- name: GITEA_WORK_DIR
value: /data
- name: GITEA_TEMP
value: /tmp/gitea
- name: TMP_EXISTING_ENVS_FILE
value: /tmp/existing-envs
- name: ENV_TO_INI_MOUNT_POINT
value: /env-to-ini-mounts
- name: GITEA_database_HOST
value: my-db:123
- name: GITEA_database_USER
value: my-user
- it: Deployment with templated additionalConfigFromEnvs
template: templates/gitea/deployment.yaml
set:
gitea.misc.host: my-db-host:321
gitea.misc.user: my-db-user
gitea.additionalConfigFromEnvs: [{name: GITEA_database_HOST, value: "{{ .Values.gitea.misc.host }}"}, {name: GITEA_database_USER, value: "{{ .Values.gitea.misc.user }}"}]
asserts:
- hasDocuments:
count: 1
- exists:
path: spec.template.spec.initContainers[1].env
- lengthEqual:
path: spec.template.spec.initContainers[1].env
count: 8
- isSubset:
path: spec.template.spec.initContainers[1]
content:
env:
- name: GITEA_APP_INI
value: /data/gitea/conf/app.ini
- name: GITEA_CUSTOM
value: /data/gitea
- name: GITEA_WORK_DIR
value: /data
- name: GITEA_TEMP
value: /tmp/gitea
- name: TMP_EXISTING_ENVS_FILE
value: /tmp/existing-envs
- name: ENV_TO_INI_MOUNT_POINT
value: /env-to-ini-mounts
- name: GITEA_database_HOST
value: my-db-host:321
- name: GITEA_database_USER
value: my-db-user
- it: Deployment with additionalConfigFromEnvs templated secret name
template: templates/gitea/deployment.yaml
set:
gitea.misc.existingSecret: my-db-secret
gitea.additionalConfigFromEnvs[0]:
name: GITEA_database_HOST
valueFrom:
secretKeyRef:
name: "{{ .Values.gitea.misc.existingSecret }}"
key: password
asserts:
- hasDocuments:
count: 1
- exists:
path: spec.template.spec.initContainers[1].env
- lengthEqual:
path: spec.template.spec.initContainers[1].env
count: 7
- isSubset:
path: spec.template.spec.initContainers[1]
content:
env:
- name: GITEA_APP_INI
value: /data/gitea/conf/app.ini
- name: GITEA_CUSTOM
value: /data/gitea
- name: GITEA_WORK_DIR
value: /data
- name: GITEA_TEMP
value: /tmp/gitea
- name: TMP_EXISTING_ENVS_FILE
value: /tmp/existing-envs
- name: ENV_TO_INI_MOUNT_POINT
value: /env-to-ini-mounts
- name: GITEA_database_HOST
valueFrom:
secretKeyRef:
name: "my-db-secret"
key: password

View File

@ -94,7 +94,7 @@ tests:
- it: correctly renders floating tag references
template: templates/gitea/deployment.yaml
set:
image.tag: 1.21 # use non-quoted value on purpose. See: https://gitea.com/gitea/helm-chart/issues/631
image.tag: 1.21 # use non-quoted value on purpose. See: https://gitea.com/gitea/helm-gitea/issues/631
asserts:
- equal:
path: spec.template.spec.initContainers[0].image

View File

@ -1,28 +1,7 @@
suite: ingress template
release:
name: gitea-unittests
namespace: testing
suite: Test ingress tpl use
templates:
- templates/gitea/ingress.yaml
tests:
- it: hostname using TPL
set:
global.giteaHostName: "gitea.example.com"
ingress.enabled: true
ingress.hosts[0].host: "{{ .Values.global.giteaHostName }}"
ingress.tls:
- secretName: gitea-tls
hosts:
- "{{ .Values.global.giteaHostName }}"
asserts:
- isKind:
of: Ingress
- equal:
path: spec.tls[0].hosts[0]
value: "gitea.example.com"
- equal:
path: spec.rules[0].host
value: "gitea.example.com"
- it: Ingress Class using TPL
set:
global.ingress.className: "ingress-class"
@ -45,3 +24,22 @@ tests:
- equal:
path: spec.ingressClassName
value: "ingress-class"
- it: hostname using TPL
set:
global.giteaHostName: "gitea.example.com"
ingress.enabled: true
ingress.hosts[0].host: "{{ .Values.global.giteaHostName }}"
ingress.tls:
- secretName: gitea-tls
hosts:
- "{{ .Values.global.giteaHostName }}"
asserts:
- isKind:
of: Ingress
- equal:
path: spec.tls[0].hosts[0]
value: "gitea.example.com"
- equal:
path: spec.rules[0].host
value: "gitea.example.com"

View File

@ -18,7 +18,7 @@ tests:
value: configure-gpg
- equal:
path: spec.template.spec.initContainers[2].command
value: ["/usr/sbin/configure_gpg_environment.sh"]
value: ["/usr/sbinx/configure_gpg_environment.sh"]
- equal:
path: spec.template.spec.initContainers[2].securityContext
value:
@ -34,7 +34,7 @@ tests:
path: spec.template.spec.initContainers[2].volumeMounts
value:
- name: init
mountPath: /usr/sbin
mountPath: /usr/sbinx
- name: data
mountPath: /data
- name: gpg-private-key

View File

@ -0,0 +1,93 @@
suite: Test ingress.yaml
templates:
- templates/gitea/ingress.yaml
tests:
- it: should enable ingress when ingress.enabled is true
set:
ingress.enabled: true
ingress.apiVersion: networking.k8s.io/v1
ingress.annotations:
kubernetes.io/ingress.class: nginx
ingress.className: nginx
ingress.tls:
- hosts:
- example.com
secretName: tls-secret
ingress.hosts:
- host: example.com
paths: ["/"]
asserts:
- hasDocuments:
count: 1
- isKind:
of: Ingress
- equal:
path: metadata.name
value: RELEASE-NAME-gitea
- matchRegex:
path: apiVersion
pattern: networking.k8s.io/v1
- equal:
path: spec.ingressClassName
value: nginx
- equal:
path: spec.rules[0].host
value: "example.com"
- equal:
path: spec.tls[0].hosts[0]
value: "example.com"
- equal:
path: spec.tls[0].secretName
value: tls-secret
- equal:
path: metadata.annotations["kubernetes.io/ingress.class"]
value: nginx
- it: should not create ingress when ingress.enabled is false
set:
ingress.enabled: false
asserts:
- hasDocuments:
count: 0
- it: Ingress Class using TPL
set:
global.ingress.className: "ingress-class"
ingress.className: "{{ .Values.global.ingress.className }}"
ingress.enabled: true
ingress.hosts[0].host: "some-host"
ingress.tls:
- secretName: gitea-tls
hosts:
- "some-host"
asserts:
- isKind:
of: Ingress
- equal:
path: spec.tls[0].hosts[0]
value: "some-host"
- equal:
path: spec.rules[0].host
value: "some-host"
- equal:
path: spec.ingressClassName
value: "ingress-class"
- it: hostname using TPL
set:
global.giteaHostName: "gitea.example.com"
ingress.enabled: true
ingress.hosts[0].host: "{{ .Values.global.giteaHostName }}"
ingress.tls:
- secretName: gitea-tls
hosts:
- "{{ .Values.global.giteaHostName }}"
asserts:
- isKind:
of: Ingress
- equal:
path: spec.tls[0].hosts[0]
value: "gitea.example.com"
- equal:
path: spec.rules[0].host
value: "gitea.example.com"

View File

@ -0,0 +1,23 @@
suite: Test ingress with implicit path defaults
templates:
- templates/gitea/ingress.yaml
tests:
- it: should use default path and pathType when no paths are specified
set:
ingress.enabled: true
ingress.hosts:
- host: git.example.com
asserts:
- hasDocuments:
count: 1
- isKind:
of: Ingress
- equal:
path: spec.rules[0].host
value: "git.example.com"
- equal:
path: spec.rules[0].http.paths[0].path
value: "/"
- equal:
path: spec.rules[0].http.paths[0].pathType
value: "Prefix"

View File

@ -0,0 +1,45 @@
suite: Test ingress tpl use
templates:
- templates/gitea/ingress.yaml
tests:
- it: Ingress Class using TPL
set:
global.ingress.className: "ingress-class"
ingress.className: "{{ .Values.global.ingress.className }}"
ingress.enabled: true
ingress.hosts[0].host: "some-host"
ingress.tls:
- secretName: gitea-tls
hosts:
- "some-host"
asserts:
- isKind:
of: Ingress
- equal:
path: spec.tls[0].hosts[0]
value: "some-host"
- equal:
path: spec.rules[0].host
value: "some-host"
- equal:
path: spec.ingressClassName
value: "ingress-class"
- it: hostname using TPL
set:
global.giteaHostName: "gitea.example.com"
ingress.enabled: true
ingress.hosts[0].host: "{{ .Values.global.giteaHostName }}"
ingress.tls:
- secretName: gitea-tls
hosts:
- "{{ .Values.global.giteaHostName }}"
asserts:
- isKind:
of: Ingress
- equal:
path: spec.tls[0].hosts[0]
value: "gitea.example.com"
- equal:
path: spec.rules[0].host
value: "gitea.example.com"

View File

@ -0,0 +1,26 @@
suite: Test ingress with structured paths
templates:
- templates/gitea/ingress.yaml
tests:
- it: should work with structured path definitions
set:
ingress.enabled: true
ingress.hosts:
- host: git.devxy.io
paths:
- path: /
pathType: Prefix
asserts:
- hasDocuments:
count: 1
- isKind:
of: Ingress
- equal:
path: spec.rules[0].host
value: "git.devxy.io"
- equal:
path: spec.rules[0].http.paths[0].path
value: "/"
- equal:
path: spec.rules[0].http.paths[0].pathType
value: "Prefix"

View File

@ -3,12 +3,12 @@ release:
name: gitea-unittests
namespace: testing
tests:
- it: fails when trying to configure redis and redis-cluster the same time
- it: fails when trying to configure valkey and valkey-cluster the same time
set:
redis-cluster:
valkey-cluster:
enabled: true
redis:
valkey:
enabled: true
asserts:
- failedTemplate:
errorMessage: redis and redis-cluster cannot be enabled at the same time. Please only choose one.
errorMessage: valkey and valkey-cluster cannot be enabled at the same time. Please only choose one.

View File

@ -76,7 +76,7 @@ containerSecurityContext: {}
# # run pods on nodes that use the container runtime cri-o. Otherwise, you will
# # get an error message from the SSH server that it is not possible to read from
# # the repository.
# # https://gitea.com/gitea/helm-chart/issues/161
# # https://gitea.com/gitea/helm-gitea/issues/161
# add:
# - SYS_CHROOT
# privileged: false
@ -157,33 +157,25 @@ service:
## @section Ingress
## @param ingress.enabled Enable ingress
## @param ingress.className Ingress class name
## @param ingress.className DEPRECATED: Ingress class name.
## @param ingress.pathType Ingress Path Type
## @param ingress.annotations Ingress annotations
## @param ingress.hosts[0].host Default Ingress host
## @param ingress.hosts[0].paths[0].path Default Ingress path
## @param ingress.hosts[0].paths[0].pathType Ingress path type
## @param ingress.tls Ingress tls settings
## @extra ingress.apiVersion Specify APIVersion of ingress object. Mostly would only be used for argocd.
ingress:
enabled: false
# className: nginx
className:
annotations:
{}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
className: ""
pathType: Prefix
annotations: {}
hosts:
- host: git.example.com
paths:
- path: /
pathType: Prefix
tls: []
# - secretName: chart-example-tls
# hosts:
# - git.example.com
# Mostly for argocd or any other CI that uses `helm template | kubectl apply` or similar
# If helm doesn't correctly detect your ingress API version you can set it here.
# apiVersion: networking.k8s.io/v1
## @section deployment
#
@ -314,6 +306,8 @@ extraVolumeMounts: []
## @section Init
## @param initPreScript Bash shell script copied verbatim to the start of the init-container.
initPreScript: ""
## @param initContainersScriptsVolumeMountPath Path to mount the scripts consumed from the Secrets
initContainersScriptsVolumeMountPath: "/usr/sbinx"
#
# initPreScript: |
# mkdir -p /data/git/.postgresql
@ -348,107 +342,6 @@ signing:
# -----END PGP PRIVATE KEY BLOCK-----
existingSecret: ""
# Configure Gitea Actions
# - must enable persistence if the job is enabled
## @section Gitea Actions
#
## @param actions.enabled Create an act runner StatefulSet.
## @param actions.init.image.repository The image used for the init containers
## @param actions.init.image.tag The image tag used for the init containers
## @param actions.statefulset.annotations Act runner annotations
## @param actions.statefulset.labels Act runner labels
## @param actions.statefulset.resources Act runner resources
## @param actions.statefulset.nodeSelector NodeSelector for the statefulset
## @param actions.statefulset.tolerations Tolerations for the statefulset
## @param actions.statefulset.affinity Affinity for the statefulset
## @param actions.statefulset.extraVolumes Extra volumes for the statefulset
## @param actions.statefulset.actRunner.repository The Gitea act runner image
## @param actions.statefulset.actRunner.tag The Gitea act runner tag
## @param actions.statefulset.actRunner.pullPolicy The Gitea act runner pullPolicy
## @param actions.statefulset.actRunner.extraVolumeMounts Allows mounting extra volumes in the act runner container
## @param actions.statefulset.actRunner.config [default: Too complex. See values.yaml] Act runner custom configuration. See [Act Runner documentation](https://docs.gitea.com/usage/actions/act-runner#configuration) for details.
## @param actions.statefulset.dind.repository The Docker-in-Docker image
## @param actions.statefulset.dind.tag The Docker-in-Docker image tag
## @param actions.statefulset.dind.pullPolicy The Docker-in-Docker pullPolicy
## @param actions.statefulset.dind.extraVolumeMounts Allows mounting extra volumes in the Docker-in-Docker container
## @param actions.statefulset.dind.extraEnvs Allows adding custom environment variables, such as `DOCKER_IPTABLES_LEGACY`
## @param actions.provisioning.enabled Create a job that will create and save the token in a Kubernetes Secret
## @param actions.provisioning.annotations Job's annotations
## @param actions.provisioning.labels Job's labels
## @param actions.provisioning.resources Job's resources
## @param actions.provisioning.nodeSelector NodeSelector for the job
## @param actions.provisioning.tolerations Tolerations for the job
## @param actions.provisioning.affinity Affinity for the job
## @param actions.provisioning.ttlSecondsAfterFinished ttl for the job after finished in order to allow helm to properly recognize that the job completed
## @param actions.provisioning.publish.repository The image that can create the secret via kubectl
## @param actions.provisioning.publish.tag The publish image tag that can create the secret
## @param actions.provisioning.publish.pullPolicy The publish image pullPolicy that can create the secret
## @param actions.existingSecret Secret that contains the token
## @param actions.existingSecretKey Secret key
actions:
enabled: false
statefulset:
annotations: {}
labels: {}
resources: {}
nodeSelector: {}
tolerations: []
affinity: {}
extraVolumes: []
actRunner:
repository: gitea/act_runner
tag: 0.2.11
pullPolicy: IfNotPresent
extraVolumeMounts: []
# See full example here: https://gitea.com/gitea/act_runner/src/branch/main/internal/pkg/config/config.example.yaml
config: |
log:
level: debug
cache:
enabled: false
dind:
repository: docker
tag: 25.0.2-dind
pullPolicy: IfNotPresent
extraVolumeMounts: []
# If the container keeps crashing in your environment, you might have to add the `DOCKER_IPTABLES_LEGACY` environment variable.
# See https://github.com/docker-library/docker/issues/463#issuecomment-1881909456
extraEnvs: []
# - name: "DOCKER_IPTABLES_LEGACY"
# value: "1"
init:
image:
repository: busybox
# Overrides the image tag whose default is the chart appVersion.
tag: "1.37.0"
provisioning:
enabled: false
annotations: {}
labels: {}
resources: {}
nodeSelector: {}
tolerations: []
affinity: {}
publish:
repository: bitnami/kubectl
tag: 1.29.0
pullPolicy: IfNotPresent
ttlSecondsAfterFinished: 300
## Specify an existing token secret
##
existingSecret: ""
existingSecretKey: ""
## @section Gitea
#
gitea:
@ -608,41 +501,51 @@ gitea:
successThreshold: 1
failureThreshold: 10
## @section redis-cluster
## @param redis-cluster.enabled Enable redis cluster
# ⚠️ The redis charts do not work well with special characters in the password (<https://gitea.com/gitea/helm-chart/issues/690>).
## @section valkey-cluster
## @param valkey-cluster.enabled Enable valkey cluster
# ⚠️ The valkey charts do not work well with special characters in the password (<https://gitea.com/gitea/helm-chart/issues/690>).
# Consider omitting such or open an issue in the Bitnami repo and let us know once this got fixed.
## @param redis-cluster.usePassword Whether to use password authentication
## @param redis-cluster.cluster.nodes Number of redis cluster master nodes
## @param redis-cluster.cluster.replicas Number of redis cluster master node replicas
## @param valkey-cluster.usePassword Whether to use password authentication
## @param valkey-cluster.usePasswordFiles Whether to mount passwords as files instead of environment variables
## @param valkey-cluster.cluster.nodes Number of valkey cluster master nodes
## @param valkey-cluster.cluster.replicas Number of valkey cluster master node replicas
## @param valkey-cluster.service.ports.valkey Port of Valkey service
## @descriptionStart
## Redis cluster and [Redis](#redis) cannot be enabled at the same time.
## Valkey cluster and [Valkey](#valkey) cannot be enabled at the same time.
## @descriptionEnd
redis-cluster:
valkey-cluster:
enabled: true
usePassword: false
usePasswordFiles: false
cluster:
nodes: 3 # default: 6
replicas: 0 # default: 1
service:
ports:
valkey: 6379
## @section redis
## @param redis.enabled Enable redis standalone or replicated
## @param redis.architecture Whether to use standalone or replication
# ⚠️ The redis charts do not work well with special characters in the password (<https://gitea.com/gitea/helm-chart/issues/690>).
## @section valkey
## @param valkey.enabled Enable valkey standalone or replicated
## @param valkey.architecture Whether to use standalone or replication
# ⚠️ The valkey charts do not work well with special characters in the password (<https://gitea.com/gitea/helm-chart/issues/690>).
# Consider omitting such or open an issue in the Bitnami repo and let us know once this got fixed.
## @param redis.global.redis.password Required password
## @param redis.master.count Number of Redis master instances to deploy
## @param valkey.global.valkey.password Required password
## @param valkey.master.count Number of Valkey master instances to deploy
## @param valkey.master.service.ports.valkey Port of Valkey service
## @descriptionStart
## Redis and [Redis cluster](#redis-cluster) cannot be enabled at the same time.
## Valkey and [Valkey cluster](#valkey-cluster) cannot be enabled at the same time.
## @descriptionEnd
redis:
valkey:
enabled: false
architecture: standalone
global:
redis:
valkey:
password: changeme
master:
count: 1
service:
ports:
valkey: 6379
## @section PostgreSQL HA
#
@ -654,6 +557,7 @@ redis:
## @param postgresql-ha.postgresql.repmgrPassword Repmgr Password
## @param postgresql-ha.postgresql.postgresPassword postgres Password
## @param postgresql-ha.pgpool.adminPassword pgpool adminPassword
## @param postgresql-ha.pgpool.srCheckPassword pgpool srCheckPassword
## @param postgresql-ha.service.ports.postgresql PostgreSQL service port (overrides `service.ports.postgresql`)
## @param postgresql-ha.persistence.size PVC Storage Request for PostgreSQL HA volume
postgresql-ha:
@ -669,6 +573,7 @@ postgresql-ha:
password: changeme4
pgpool:
adminPassword: changeme3
srCheckPassword: changeme4
service:
ports:
postgresql: 5432