This PR contains the following updates:
| Update | Change |
|---|---|
| lockFileMaintenance | All locks refreshed |
🔧 This Pull Request updates lock files to use the latest dependency versions.
---
### 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.
👻 **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-actions/pulls/67
Reviewed-by: DaanSelen <daanselen@noreply.gitea.com>
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
<!--
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. -->
Changes the default repository path for the act runner image from gitea/act_runner to act_runner
### 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. -->
- Fixes#65
### 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. -->
### ⚠ 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.] -->
- [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)
- [X] All added template resources MUST render a namespace in metadata
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/66
Reviewed-by: DaanSelen <daanselen@noreply.gitea.com>
Co-authored-by: Stephen Sullivan <sjsullivan7@gmail.com>
Co-committed-by: Stephen Sullivan <sjsullivan7@gmail.com>
<!--
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. -->
This patch adds a new configuration option, statefulset.actRunner.extraEnvs, to the Gitea act runner Helm chart. This new parameter is an array that allows users to define custom environment variables for the act-runner container within the StatefulSet.
### Benefits
<!-- What benefits will be realized by the code change? -->
Enables users of the chart to specify additional environment variables for the act-runner container.
This can be useful for cases where a user may want to customize the act-runner via environment variables.
### 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. -->
- Fixes #
### 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. -->
### ⚠ 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.] -->
- [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)
- [X] All added template resources MUST render a namespace in metadata
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/63
Reviewed-by: DaanSelen <daanselen@noreply.gitea.com>
Co-authored-by: Stephen Sullivan <sjsullivan7@gmail.com>
Co-committed-by: Stephen Sullivan <sjsullivan7@gmail.com>
### Description of the change
Allow to insert the act_runner config as yaml into the chart values.
### Benefits
Yaml editor will report yaml errors, instead of the deployed runner.
### Possible drawbacks
No limitations, string config works like before.
### Applicable issues
N/A
### Additional information
Usage like this, just omit the block scalar token
```yaml
enabled: true
statefulset:
actRunner:
# 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
container:
valid_volumes:
- /var/run/docker.sock
options: -v /var/run/docker.sock:/var/run/docker.sock
## Specify an existing token secret
##
existingSecret: "runner-token2"
existingSecretKey: "token"
## Specify the root URL of the Gitea instance
giteaRootURL: "http://192.168.1.2:3000"
```
I do not like the regex test approach, but I didn't come up with a better one. I wish that I can parse the nested yaml in the helm tests.
### ⚠ BREAKING
N/A
### Checklist
- [x] Helm templating unittests are added (required when changing anything in `templates` folder)
- [x] All added template resources MUST render a namespace in metadata
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/43
Reviewed-by: DaanSelen <daanselen@noreply.gitea.com>
Co-authored-by: Christopher Homberger <christopher.homberger@web.de>
Co-committed-by: Christopher Homberger <christopher.homberger@web.de>
<!--
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. -->
The change modifies how container images are managed in the Gitea Helm chart for Gitea Actions. Instead of using a simple string concatenation for image names, the patch introduces a more flexible templating approach. It adds three new templates in `_helpers.tpl`:
* `gitea.actions.actRunner.image`: Constructs the full image name for the Gitea Actions Act Runner.
* `gitea.actions.dind.image`: Creates the image name for the DinD (Docker-in-Docker) container.
* `gitea.actions.init.image`: Generates the image name for the Init container.
These templates build the image name dynamically using values from `values.yaml` and the chart's metadata. The logic prioritizes a full image override, a specified registry, or a default repository and tag.
The patch also updates `statefulset.yaml` to use these new templates for the `init-gitea`, `act-runner`, and `dind` containers. Additionally, `values.yaml` is updated to include new, optional parameters for each image, such as `registry`, `digest`, and `fullOverride`, providing more granular control over the image source.
### Tests and Examples
To test this change, you can use `helm template` with different configurations in a `values.yaml` file to observe the resulting Kubernetes manifest.
#### Example 1: Default configuration
With no changes to the new fields in `values.yaml`, the image names should resolve to the defaults:
* **Act Runner**: `docker.gitea.com/gitea/act_runner:0.2.13`
* **DinD**: `docker:28.3.3-dind`
* **Init**: `busybox:1.37.0`
#### Example 2: Using a `fullOverride`
If you set `fullOverride` for the `actRunner` like this via CLI
```shell
helm template test . \
--set giteaRootURL=https://localhost/gitea \
--set existingSecret=test --set existingSecretKey=test \
--set enabled=true \
--set statefulset.actRunner.fullOverride="my.private.registry/custom-gitea-runner:latest"
```
The `statefulset.yaml` for the `act-runner` container will have its image field set to `my.private.registry/custom-gitea-runner:latest`.
```
- name: act-runner
image: "my.private.registry/custom-gitea-runner:latest"
```
#### Example 3: Using a custom `registry` and `digest`
```shell
helm template test . \
--set giteaRootURL=https://localhost/gitea \
--set existingSecret=test --set existingSecretKey=test \
--set enabled=true \
--set statefulset.dind.registry="quay.io" \
--set statefulset.dind.digest="sha256:abcdef123456"
```
The `statefulset.yaml` for the `dind` container will have its image field set to `quay.io/docker:28.3.3-dind@sha256:abcdef123456`.
```
- name: dind
image: "quay.io/docker:28.3.3-dind@sha256:abcdef123456"
```
#### Example 4: Using the `global.imageRegistry`
If you set global.imageRegistry
```shell
helm template test . \
--set giteaRootURL=https://localhost/gitea \
--set existingSecret=test --set existingSecretKey=test \
--set enabled=true \
--set global.imageRegistry=quay.io
```
The `statefulset.yaml` for each container will have the following values
* **Act Runner**: `quay.io/gitea/act_runner:0.2.13`
* **DinD**: `quay.io/docker:28.3.3-dind`
* **Init**: `quay.io/busybox:1.37.0`
### Benefits
<!-- What benefits will be realized by the code change? -->
There are no known limitations with this change. The new templating approach makes the chart more adaptable and configurable, offering more control than the previous method.
### Possible drawbacks
<!-- Describe any known limitations with your change -->
Increased configuration complexity
### Applicable issues
<!-- Enter any applicable Issues here (You can reference an issue using #). Please remove this section if there is no referenced issue. -->
- Fixes#58
### 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. -->
### ⚠ 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.] -->
- [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)
- [X] All added template resources MUST render a namespace in metadata
Co-authored-by: Christopher Homberger <christopher.homberger@web.de>
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/61
Reviewed-by: Ross Golder <rossigee@noreply.gitea.com>
Reviewed-by: DaanSelen <daanselen@noreply.gitea.com>
Reviewed-by: Markus Pesch <volker.raschek@noreply.gitea.com>
Reviewed-by: ChristopherHX <christopherhx@noreply.gitea.com>
Co-authored-by: Stephen Sullivan <sjsullivan7@gmail.com>
Co-committed-by: Stephen Sullivan <sjsullivan7@gmail.com>
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [actions/checkout](https://github.com/actions/checkout) | action | major | `v4` -> `v5` |
| [actions/checkout](https://github.com/actions/checkout) | action | major | `v4.2.2` -> `v5` |
---
### Release Notes
<details>
<summary>actions/checkout (actions/checkout)</summary>
### [`v5`](https://github.com/actions/checkout/compare/v4...v5)
[Compare Source](https://github.com/actions/checkout/compare/v4...v5)
</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiI0MS4xOC4xIiwidXBkYXRlZEluVmVyIjoiNDEuMTguMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsia2luZC9kZXBlbmRlbmN5Il19-->
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/53
Reviewed-by: techknowlogick <techknowlogick@noreply.gitea.com>
Reviewed-by: DaanSelen <daanselen@noreply.gitea.com>
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
### Description of the change
replace the netcat command with wget commands.
### Benefits
Less noise in the log(s)
### Possible drawbacks
<!-- Describe any known limitations with your change -->
No limitations. As far as I am aware.
- Fixes #
https://gitea.com/gitea/helm-actions/pulls/23#issuecomment-1027779
### Additional information
As the PR Title suggests, it replaces the netcat command to a wget command which makes the noise in the log stop.
### Checklist
- [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)
- [X] Bash unittests are added (required when changing anything in `scripts` folder)
- [X] All added template resources MUST render a namespace in metadata
Co-authored-by: Daan Selen <dselen@systemec.nl>
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/26
Reviewed-by: ChristopherHX <christopherhx@noreply.gitea.com>
Co-authored-by: Daan Selen <dselen@nerthus.nl>
Co-committed-by: Daan Selen <dselen@nerthus.nl>
To be discussed. In https://gitea.com/gitea/helm-actions/issues/9#issuecomment-1002191 and https://gitea.com/gitea/helm-actions/pulls/13 I described that a migration of provisioning is currently not feasible due to
- helm limitations
- You are forced to repeat a lot of stuff for the default branch
- helm-actions cannot read values of the helm-gitea chart to fix this
- No agreement about making helm-gitea a optional dependency of helm-actions can be reached at the moment
# Proposal
- Create a new repository that includes both helm-gitea **and** helm-actions
- Provisioning leaves this repository as well like it did in helm-gitea
- Create that as gitea/helm-stack or whatever name
- Provisioning code and tests moves to gitea/helm-stack
We would need help with the repository creation
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/15
Reviewed-by: DaanSelen <daanselen@noreply.gitea.com>
Co-authored-by: ChristopherHX <christopherhx@noreply.gitea.com>
Co-committed-by: ChristopherHX <christopherhx@noreply.gitea.com>
### Description of the change
Use the same namespace template for all `namespace:` fields, this would be no error if the ServiceAccount would had the same different template than the reference.
I found this while analyzing existing code statically via `namespace:` search.
Updated to also use correct namespace in existing secret lookup
### Benefits
Previously if .Values.namespace and .Release.Namespace didn't match this might caused an install error.
e.g. in values.yml
```yaml
namespace: test
# ** enable provisioning job is required
```
However installed using
```
helm install -f values.yml --create-namespace --namespace install-name-space myactions .
```
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/11
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Christopher Homberger <christopher.homberger@web.de>
Co-committed-by: Christopher Homberger <christopher.homberger@web.de>
### Description of the change
Just moves all defines under a new gitea.actions prefix.
### Additional information
Reduce possibility to cause a name clash with the helm-gitea chart if both would be included in a single helm chart installation.
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/10
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: Christopher Homberger <christopher.homberger@web.de>
Co-committed-by: Christopher Homberger <christopher.homberger@web.de>
_This is the first time I ever messed with helm and is an experiment to show what prevents the tests to pass and how far it still depends on the gitea chart_
### Description of the change
- Deletes a single test that seems to depend directly on gitea
- make all tests pass
- Moves all value accesses from `actions` one level up
- Copies content of the gitea chart required by the existing test
- Reveals all dependencies that needs to be decoupled
- Fixes readme generation
- add package.json
- copy dependent readme section from helm-gitea
- Removes all dependencies
- giteaRootURL is now required to be provided
- consistency check that this value has been provided
- added test for consistency failure
- nc command no longer uses an hardcoded dns name and is checked in tests
- added test
- Copied yamllint from helm-gitea
- added pnpm lock file exclusion
- Installed pnpm in the workflow
- Updated make unittest command in CI to unittest-helm
### Benefits
The existing tests are passing
### Possible drawbacks
The provision job might still not work.
### Applicable issues
- Fixes#5
### Additional information
The following usage should now deploy
```yaml
existingSecret: "somesecret"
existingSecretKey: "key"
## Specify the root URL of the Gitea instance
giteaRootURL: "http://somedomain:3000"
```
### ⚠ BREAKING
- giteaRootURL is now required to be provided
- Moves all value accesses from `actions` one level up
- The values.yml had this change without updating tests / dev Readme
Reviewed-on: https://gitea.com/gitea/helm-actions/pulls/6
Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com>
Reviewed-by: justusbunsi <justusbunsi@noreply.gitea.com>
Reviewed-by: volker.raschek <markus.pesch@web.de>
Co-authored-by: Christopher Homberger <christopher.homberger@web.de>
Co-committed-by: Christopher Homberger <christopher.homberger@web.de>