Skip to content

feat(charts): add hostAliases support#5866

Merged
Skarlso merged 2 commits intoexternal-secrets:mainfrom
janlauber:feat/charts-add-hostaliases-support
Feb 5, 2026
Merged

feat(charts): add hostAliases support#5866
Skarlso merged 2 commits intoexternal-secrets:mainfrom
janlauber:feat/charts-add-hostaliases-support

Conversation

@janlauber
Copy link
Copy Markdown
Contributor

@janlauber janlauber commented Jan 25, 2026

Problem Statement

The external-secrets Helm chart currently doesn't support adding custom hostAliases to pods, which is needed for DNS resolution in air-gapped environments or when custom hostname mappings are required.

Related Issue

#5865

Proposed Changes

Add support for hostAliases configuration in the Helm chart, allowing users to add custom entries to /etc/hosts for all three deployments (controller, webhook, cert-controller).

The implementation follows the existing pattern used for other pod-level configurations like tolerations and nodeSelector, supporting both:

  • Global defaults via global.hostAliases
  • Component-specific overrides via hostAliases, webhook.hostAliases, and certController.hostAliases

Format

PR title follows format: feat(charts): add hostAliases support

Checklist

  • I have read the contribution guidelines
  • All commits are signed with git commit --signoff
  • My changes have reasonable test coverage (15 new test cases added)
  • All tests pass with make helm.test (166 tests passed)
  • I ensured my PR is ready for review with make reviewable (can be done after PR creation if CI passes)

Summary

Adds hostAliases support to the Helm chart to allow adding custom entries to pod /etc/hosts (useful for air-gapped environments and custom hostname mappings).

Changes

  • Configuration:

    • Introduced hostAliases at global (global.hostAliases), root/controller (hostAliases), and component levels (webhook.hostAliases, certController.hostAliases).
    • Component-level values take precedence over global defaults.
    • Updated values.yaml with empty hostAliases arrays and values.schema.json with new hostAliases properties.
  • Templates:

    • Added conditional hostAliases blocks to controller (root deployment), webhook, and cert-controller deployment templates. Each uses component-level value with fallback to global.hostAliases.
  • Testing:

    • Added ~15 test cases across controller, webhook, and cert-controller tests verifying default absence, component rendering, global fallback, and precedence.
    • All tests pass (166 tests).
  • Documentation:

    • Updated chart README to document the new hostAliases options.

Signed-off-by: Jan Lauber <jan.lauber@protonmail.ch>
@github-actions github-actions bot added area/charts Issues / Pull Requests related to our helm charts kind/feature Categorizes issue or PR as related to a new feature. size/m labels Jan 25, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Jan 25, 2026

Walkthrough

Adds optional hostAliases support to the external-secrets Helm chart: new values and schema entries, conditional hostAliases rendering in controller, webhook, and cert-controller Deployment templates, updated defaults and README, and tests verifying presence, fallback, and precedence behavior.

Changes

Cohort / File(s) Summary
Documentation & README
deploy/charts/external-secrets/README.md
Added documentation entries for new hostAliases configuration locations.
Schema
deploy/charts/external-secrets/values.schema.json
Added hostAliases array properties at root, certController, webhook, and global.compatibility to validate hostAliases values.
Deployment Templates
deploy/charts/external-secrets/templates/deployment.yaml, deploy/charts/external-secrets/templates/webhook-deployment.yaml, deploy/charts/external-secrets/templates/cert-controller-deployment.yaml
Inserted conditional hostAliases blocks into pod specs; each uses component-level hostAliases with fallback to global.hostAliases and renders via toYaml when present.
Default Values
deploy/charts/external-secrets/values.yaml
Added empty hostAliases: [] defaults at root deployment level, global, webhook, and certController to expose settings for overrides.
Tests
deploy/charts/external-secrets/tests/controller_test.yaml, deploy/charts/external-secrets/tests/webhook_test.yaml, deploy/charts/external-secrets/tests/cert_controller_test.yaml
Added test cases covering default absence, component-level configuration, global fallback, and precedence when both component and global hostAliases are present.

Possibly related issues


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@janlauber
Copy link
Copy Markdown
Contributor Author

janlauber commented Feb 4, 2026

Any news here? Or am I missing something?

@Skarlso
Copy link
Copy Markdown
Contributor

Skarlso commented Feb 5, 2026

Sorry, I was away for a while. :) I'll try and get to this on Friday.

Copy link
Copy Markdown
Contributor

@Skarlso Skarlso left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, this looks okay to me. Well done.

@Skarlso
Copy link
Copy Markdown
Contributor

Skarlso commented Feb 5, 2026

/ok-to-test sha=42e626de2cacf90c47e759dbcbf3e451a7af60e2

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud bot commented Feb 5, 2026

@eso-service-account-app
Copy link
Copy Markdown
Contributor

@Skarlso Skarlso merged commit 33b597c into external-secrets:main Feb 5, 2026
33 checks passed
@janlauber
Copy link
Copy Markdown
Contributor Author

@Skarlso no worries! Thanks for merging

@janlauber janlauber deleted the feat/charts-add-hostaliases-support branch February 5, 2026 08:23
alexlebens pushed a commit to alexlebens/infrastructure that referenced this pull request Feb 6, 2026
…2 (#3782)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [external-secrets/external-secrets](https://github.com/external-secrets/external-secrets) | major | `v1.3.2` → `v2.0.0` |

---

### Release Notes

<details>
<summary>external-secrets/external-secrets (external-secrets/external-secrets)</summary>

### [`v2.0.0`](https://github.com/external-secrets/external-secrets/releases/tag/v2.0.0)

[Compare Source](external-secrets/external-secrets@v1.3.2...v2.0.0)

### BREAKING CHANGE

Please note that this release removed two of the unsupported and unmaintained providers Alibaba and Device42.

Image: `ghcr.io/external-secrets/external-secrets:v2.0.0`
Image: `ghcr.io/external-secrets/external-secrets:v2.0.0-ubi`
Image: `ghcr.io/external-secrets/external-secrets:v2.0.0-ubi-boringssl`

<!-- Release notes generated using configuration in .github/release.yml at main -->

#### What's Changed

##### General

- chore: bump charts to 1.3.2 by [@&#8203;gusfcarvalho](https://github.com/gusfcarvalho) in [#&#8203;5923](external-secrets/external-secrets#5923)
- feat(charts): add hostAliases support by [@&#8203;janlauber](https://github.com/janlauber) in [#&#8203;5866](external-secrets/external-secrets#5866)
- chore: remove unmaintained secret stores by [@&#8203;Skarlso](https://github.com/Skarlso) in [#&#8203;5918](external-secrets/external-secrets#5918)
- docs(infisical): document al provider auth methods by [@&#8203;varonix0](https://github.com/varonix0) in [#&#8203;5929](external-secrets/external-secrets#5929)
- chore: Get validating webhook failurePolicy for Secretstore dynamically by [@&#8203;LochanRn](https://github.com/LochanRn) in [#&#8203;5605](external-secrets/external-secrets#5605)

#### New Contributors

- [@&#8203;LochanRn](https://github.com/LochanRn) made their first contribution in [#&#8203;5605](external-secrets/external-secrets#5605)

**Full Changelog**: <external-secrets/external-secrets@v1.3.2...v2.0.0>

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

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

♻ **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:eyJjcmVhdGVkSW5WZXIiOiI0My4zLjYiLCJ1cGRhdGVkSW5WZXIiOiI0My4zLjYiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImltYWdlIl19-->

Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/3782
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
alexlebens pushed a commit to alexlebens/infrastructure that referenced this pull request Feb 6, 2026
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [external-secrets](https://github.com/external-secrets/external-secrets) | major | `1.3.2` → `2.0.0` |

---

### Release Notes

<details>
<summary>external-secrets/external-secrets (external-secrets)</summary>

### [`v2.0.0`](https://github.com/external-secrets/external-secrets/releases/tag/v2.0.0)

[Compare Source](external-secrets/external-secrets@v1.3.2...v2.0.0)

### BREAKING CHANGE

Please note that this release removed two of the unsupported and unmaintained providers Alibaba and Device42.

Image: `ghcr.io/external-secrets/external-secrets:v2.0.0`
Image: `ghcr.io/external-secrets/external-secrets:v2.0.0-ubi`
Image: `ghcr.io/external-secrets/external-secrets:v2.0.0-ubi-boringssl`

<!-- Release notes generated using configuration in .github/release.yml at main -->

#### What's Changed

##### General

- chore: bump charts to 1.3.2 by [@&#8203;gusfcarvalho](https://github.com/gusfcarvalho) in [#&#8203;5923](external-secrets/external-secrets#5923)
- feat(charts): add hostAliases support by [@&#8203;janlauber](https://github.com/janlauber) in [#&#8203;5866](external-secrets/external-secrets#5866)
- chore: remove unmaintained secret stores by [@&#8203;Skarlso](https://github.com/Skarlso) in [#&#8203;5918](external-secrets/external-secrets#5918)
- docs(infisical): document al provider auth methods by [@&#8203;varonix0](https://github.com/varonix0) in [#&#8203;5929](external-secrets/external-secrets#5929)
- chore: Get validating webhook failurePolicy for Secretstore dynamically by [@&#8203;LochanRn](https://github.com/LochanRn) in [#&#8203;5605](external-secrets/external-secrets#5605)

#### New Contributors

- [@&#8203;LochanRn](https://github.com/LochanRn) made their first contribution in [#&#8203;5605](external-secrets/external-secrets#5605)

**Full Changelog**: <external-secrets/external-secrets@v1.3.2...v2.0.0>

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

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

♻ **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:eyJjcmVhdGVkSW5WZXIiOiI0My4zLjYiLCJ1cGRhdGVkSW5WZXIiOiI0My4zLjYiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbImNoYXJ0Il19-->

Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/3788
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
nutmos pushed a commit to nutmos/external-secrets that referenced this pull request Feb 11, 2026
Signed-off-by: Jan Lauber <jan.lauber@protonmail.ch>
Co-authored-by: Gergely Bräutigam <skarlso777@gmail.com>
Signed-off-by: Nattapong Ekudomsuk <nuttapong_mos@hotmail.com>
nutmos pushed a commit to nutmos/external-secrets that referenced this pull request Feb 18, 2026
Signed-off-by: Jan Lauber <jan.lauber@protonmail.ch>
Co-authored-by: Gergely Bräutigam <skarlso777@gmail.com>
Signed-off-by: Nattapong Ekudomsuk <nuttapong_mos@hotmail.com>
radermacher-iits pushed a commit to kubara-io/kubara that referenced this pull request Feb 19, 2026
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [external-secrets](https://github.com/external-secrets/external-secrets) | major | `1.3.2` → `2.0.0` |

---

### Release Notes

<details>
<summary>external-secrets/external-secrets (external-secrets)</summary>

### [`v2.0.0`](https://github.com/external-secrets/external-secrets/releases/tag/v2.0.0)

[Compare Source](external-secrets/external-secrets@v1.3.2...v2.0.0)

### BREAKING CHANGE

Please note that this release removed two of the unsupported and unmaintained providers Alibaba and Device42.

Image: `ghcr.io/external-secrets/external-secrets:v2.0.0`
Image: `ghcr.io/external-secrets/external-secrets:v2.0.0-ubi`
Image: `ghcr.io/external-secrets/external-secrets:v2.0.0-ubi-boringssl`

<!-- Release notes generated using configuration in .github/release.yml at main -->

#### What's Changed

##### General

- chore: bump charts to 1.3.2 by [@&#8203;gusfcarvalho](https://github.com/gusfcarvalho) in [#&#8203;5923](external-secrets/external-secrets#5923)
- feat(charts): add hostAliases support by [@&#8203;janlauber](https://github.com/janlauber) in [#&#8203;5866](external-secrets/external-secrets#5866)
- chore: remove unmaintained secret stores by [@&#8203;Skarlso](https://github.com/Skarlso) in [#&#8203;5918](external-secrets/external-secrets#5918)
- docs(infisical): document al provider auth methods by [@&#8203;varonix0](https://github.com/varonix0) in [#&#8203;5929](external-secrets/external-secrets#5929)
- chore: Get validating webhook failurePolicy for Secretstore dynamically by [@&#8203;LochanRn](https://github.com/LochanRn) in [#&#8203;5605](external-secrets/external-secrets#5605)

#### New Contributors

- [@&#8203;LochanRn](https://github.com/LochanRn) made their first contribution in [#&#8203;5605](external-secrets/external-secrets#5605)

**Full Changelog**: <external-secrets/external-secrets@v1.3.2...v2.0.0>

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **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:eyJjcmVhdGVkSW5WZXIiOiI0My40LjAiLCJ1cGRhdGVkSW5WZXIiOiI0My40LjAiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIiLCJsYWJlbHMiOltdfQ==-->

Reviewed-on: https://kubara.git.onstackit.cloud/STACKIT/kubara/pulls/283
dsp0x4 pushed a commit to dsp0x4/external-secrets that referenced this pull request Mar 22, 2026
Signed-off-by: Jan Lauber <jan.lauber@protonmail.ch>
Co-authored-by: Gergely Bräutigam <skarlso777@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/charts Issues / Pull Requests related to our helm charts kind/feature Categorizes issue or PR as related to a new feature. size/m

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants