Skip to content

Conversation

@MrFreezeex
Copy link
Member

@MrFreezeex MrFreezeex commented Aug 1, 2025

Support clustermesh.config.clusters to be a dict and process internally the clusters list as a dict. For now we always output to a list as ReuseValues is true when invoking helm (see the code comment for more details) but will be refactored further to allow outputting a dict conditionally in a future commit.

Related to #40796
Support for helm is added in: #40857

clustermesh: cli: add support for dict for helm values `clustermesh.config.clusters`

@maintainer-s-little-helper maintainer-s-little-helper bot added the dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. label Aug 1, 2025
@github-actions github-actions bot added cilium-cli This PR contains changes related with cilium-cli cilium-cli-exclusive This PR only impacts cilium-cli binary labels Aug 1, 2025
@MrFreezeex MrFreezeex added release-note/minor This PR changes functionality that users may find relevant to operating Cilium. area/clustermesh Relates to multi-cluster routing functionality in Cilium. and removed dont-merge/needs-release-note-label The author needs to describe the release impact of these changes. cilium-cli This PR contains changes related with cilium-cli cilium-cli-exclusive This PR only impacts cilium-cli binary labels Aug 1, 2025
@MrFreezeex MrFreezeex force-pushed the pr/mrfreezeex/cli-clustermesh-clusters-dict branch 2 times, most recently from e78bb97 to 737cc8f Compare August 1, 2025 16:42
@MrFreezeex
Copy link
Member Author

/test

@MrFreezeex MrFreezeex force-pushed the pr/mrfreezeex/cli-clustermesh-clusters-dict branch from 737cc8f to 3e7215e Compare August 1, 2025 19:31
@MrFreezeex MrFreezeex added cilium-cli This PR contains changes related with cilium-cli cilium-cli-exclusive This PR only impacts cilium-cli binary labels Aug 1, 2025
@MrFreezeex
Copy link
Member Author

/test

@MrFreezeex MrFreezeex marked this pull request as ready for review August 1, 2025 20:46
@MrFreezeex MrFreezeex requested a review from a team as a code owner August 1, 2025 20:46
@MrFreezeex MrFreezeex requested a review from marseel August 1, 2025 20:46
@MrFreezeex MrFreezeex force-pushed the pr/mrfreezeex/cli-clustermesh-clusters-dict branch from 3e7215e to 66114f0 Compare August 4, 2025 16:36
@MrFreezeex
Copy link
Member Author

/test

Copy link
Contributor

@marseel marseel left a comment

Choose a reason for hiding this comment

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

Thanks, looks good!

@maintainer-s-little-helper maintainer-s-little-helper bot added ready-to-merge This PR has passed all tests and received consensus from code owners to merge. labels Aug 5, 2025
@MrFreezeex
Copy link
Member Author

/test

@MrFreezeex MrFreezeex force-pushed the pr/mrfreezeex/cli-clustermesh-clusters-dict branch from 8d35b83 to f347a76 Compare August 5, 2025 12:33
@MrFreezeex
Copy link
Member Author

/test

Copy link
Member

@joestringer joestringer left a comment

Choose a reason for hiding this comment

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

Could this impact existing users in how they are currently specifying the configuration?

One blocking comment below. Typically we don't add TODOs into the tree.

@maintainer-s-little-helper maintainer-s-little-helper bot removed ready-to-merge This PR has passed all tests and received consensus from code owners to merge. labels Aug 5, 2025
@MrFreezeex
Copy link
Member Author

MrFreezeex commented Aug 5, 2025

Could this impact existing users in how they are currently specifying the configuration?

Not really this only add the support for a new format, users are still able to use the old one without any issue (and it's not currently deprecated/no removal currently planned). And the plan is to use the new format when interacting with the CLI for clusters >= 1.20 while addressing the FIXME that you commented about (1.19 would be the first version to support this new format and 1.20 is to allow downgrade by reusing the same values without issues related to that)

Support `clustermesh.config.clusters` to be a dict and process
internally the clusters list as a dict. For now we always output to a
list as ReuseValues is true when invoking helm (see the code comment for
more details) but will be refactored further to allow outputting a dict
conditionally in a future commit.

Signed-off-by: Arthur Outhenin-Chalandre <arthur@cri.epita.fr>
Signed-off-by: Arthur Outhenin-Chalandre <arthur@cri.epita.fr>
Initialize all maps in the ClusterState by default so that we can remove
various nil check to lazy initialize those. Some of those maps are
getting override later too but we are still initializing here to not
have to reason about in potential refactoring later on.

Signed-off-by: Arthur Outhenin-Chalandre <arthur@cri.epita.fr>
@MrFreezeex MrFreezeex force-pushed the pr/mrfreezeex/cli-clustermesh-clusters-dict branch from f347a76 to f68714b Compare August 5, 2025 16:53
@joestringer joestringer enabled auto-merge August 5, 2025 16:57
@joestringer
Copy link
Member

/test

@joestringer joestringer added this pull request to the merge queue Aug 5, 2025
Merged via the queue into cilium:main with commit 5e85e47 Aug 5, 2025
68 checks passed
@maintainer-s-little-helper maintainer-s-little-helper bot added ready-to-merge This PR has passed all tests and received consensus from code owners to merge. labels Aug 5, 2025
zocimek added a commit to zocimek/home-ops that referenced this pull request Oct 1, 2025
… ) (#222)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[aqua:cilium/cilium-cli](https://redirect.github.com/cilium/cilium-cli)
| patch | `0.18.6` -> `0.18.7` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>cilium/cilium-cli (aqua:cilium/cilium-cli)</summary>

###
[`v0.18.7`](https://redirect.github.com/cilium/cilium-cli/releases/tag/v0.18.7)

[Compare
Source](https://redirect.github.com/cilium/cilium-cli/compare/v0.18.6...v0.18.7)

#### What's Changed

## Summary of Changes

**Minor Changes:**

- clustermesh: cli: accept more than one service IPs (excluding when
connecting to NodePort Services) when connecting to remote
clustermesh-apiserver
([cilium/cilium#41253](https://redirect.github.com/cilium/cilium/issues/41253),
[@&#8203;MrFreezeex](https://redirect.github.com/MrFreezeex))
- clustermesh: cli: add support for dict for helm values
`clustermesh.config.clusters`
([cilium/cilium#40879](https://redirect.github.com/cilium/cilium/issues/40879),
[@&#8203;MrFreezeex](https://redirect.github.com/MrFreezeex))
- clustermesh: cli: support outputting `clustermesh.config.clusters` to
the new dict format if the cluster is running Cilium >= 1.20
([cilium/cilium#40959](https://redirect.github.com/cilium/cilium/issues/40959),
[@&#8203;MrFreezeex](https://redirect.github.com/MrFreezeex))

**Bugfixes:**

- Add l7 proxy check to policy-local-cluster-egress connectivity test
([cilium/cilium#40797](https://redirect.github.com/cilium/cilium/issues/40797),
[@&#8203;camrynl](https://redirect.github.com/camrynl))
- cilium-cli: also restart cilium-operator pods on config changes
([cilium/cilium#41067](https://redirect.github.com/cilium/cilium/issues/41067),
[@&#8203;aanm](https://redirect.github.com/aanm))

**CI Changes:**

- Allow Egress Gateway connectivity tests to run concurrently
([cilium/cilium#40980](https://redirect.github.com/cilium/cilium/issues/40980),
[@&#8203;tommyp1ckles](https://redirect.github.com/tommyp1ckles))
- cilium-cli: connectivity tests: Ignore some logs in error log check
([cilium/cilium#40690](https://redirect.github.com/cilium/cilium/issues/40690),
[@&#8203;jrife](https://redirect.github.com/jrife))
- cilium-cli: IPv6 connectivity tests for PodToIngress
([cilium/cilium#39667](https://redirect.github.com/cilium/cilium/issues/39667),
[@&#8203;gentoo-root](https://redirect.github.com/gentoo-root))

**Misc Changes:**

- chore(deps): update all-dependencies (main)
([cilium/cilium#40893](https://redirect.github.com/cilium/cilium/issues/40893),
[@&#8203;cilium-renovate](https://redirect.github.com/cilium-renovate)\[bot])
- chore(deps): update all-dependencies (main)
([cilium/cilium#41046](https://redirect.github.com/cilium/cilium/issues/41046),
[@&#8203;cilium-renovate](https://redirect.github.com/cilium-renovate)\[bot])
- chore(deps): update all-dependencies (main)
([cilium/cilium#41340](https://redirect.github.com/cilium/cilium/issues/41340),
[@&#8203;cilium-renovate](https://redirect.github.com/cilium-renovate)\[bot])
- chore(deps): update all-dependencies (main)
([cilium/cilium#41433](https://redirect.github.com/cilium/cilium/issues/41433),
[@&#8203;cilium-renovate](https://redirect.github.com/cilium-renovate)\[bot])
- chore(deps): update docker.io/library/golang:1.25.0 docker digest to
[`5502b0e`](https://redirect.github.com/cilium/cilium-cli/commit/5502b0e)
(main)
([cilium/cilium#41343](https://redirect.github.com/cilium/cilium/issues/41343),
[@&#8203;cilium-renovate](https://redirect.github.com/cilium-renovate)\[bot])
- chore(deps): update go to v1.24.6 (main)
([cilium/cilium#40992](https://redirect.github.com/cilium/cilium/issues/40992),
[@&#8203;cilium-renovate](https://redirect.github.com/cilium-renovate)\[bot])
- cilium-cli: Optimized feature detection by running cluster-wide checks
once
([cilium/cilium#40715](https://redirect.github.com/cilium/cilium/issues/40715),
[@&#8203;HadrienPatte](https://redirect.github.com/HadrienPatte))
- Include bgp remote peer capabilities in the sysdump
([cilium/cilium#40719](https://redirect.github.com/cilium/cilium/issues/40719),
[@&#8203;liyihuang](https://redirect.github.com/liyihuang))
- Update all-dependencies (main)
([cilium/cilium#41175](https://redirect.github.com/cilium/cilium/issues/41175),
[@&#8203;cilium-renovate](https://redirect.github.com/cilium-renovate)\[bot])
- Update docker.io/alpine/socat:1.8.0.3 Docker digest to
[`29d0f24`](https://redirect.github.com/cilium/cilium-cli/commit/29d0f24)
(main)
([cilium/cilium#41204](https://redirect.github.com/cilium/cilium/issues/41204),
[@&#8203;cilium-renovate](https://redirect.github.com/cilium-renovate)\[bot])
- Update Go to v1.25.0 (main)
([cilium/cilium#41209](https://redirect.github.com/cilium/cilium/issues/41209),
[@&#8203;cilium-renovate](https://redirect.github.com/cilium-renovate)\[bot])
- Update stable release to v0.18.6 by
[@&#8203;tklauser](https://redirect.github.com/tklauser) in
[#&#8203;3075](https://redirect.github.com/cilium/cilium-cli/pull/3075)
- chore(deps): update golangci/golangci-lint docker tag to v2.3.1 by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3076](https://redirect.github.com/cilium/cilium-cli/pull/3076)
- chore(deps): update golang docker tag to v1.24.6 by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3079](https://redirect.github.com/cilium/cilium-cli/pull/3079)
- chore(deps): update gcr.io/distroless/static:latest docker digest to
[`2e114d2`](https://redirect.github.com/cilium/cilium-cli/commit/2e114d2)
by [@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3077](https://redirect.github.com/cilium/cilium-cli/pull/3077)
- chore(deps): update docker/login-action action to v3.5.0 by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3078](https://redirect.github.com/cilium/cilium-cli/pull/3078)
- chore(deps): update go to v1.24.6 (patch) by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3080](https://redirect.github.com/cilium/cilium-cli/pull/3080)
- chore(deps): update actions/checkout action to v5 by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3082](https://redirect.github.com/cilium/cilium-cli/pull/3082)
- chore(deps): update golangci/golangci-lint docker tag to v2.4.0 by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3086](https://redirect.github.com/cilium/cilium-cli/pull/3086)
- chore(deps): update golang docker tag to v1.25.0 by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3085](https://redirect.github.com/cilium/cilium-cli/pull/3085)
- chore(deps): update go to v1.25.0 (minor) by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3088](https://redirect.github.com/cilium/cilium-cli/pull/3088)
- chore(deps): update dependency cilium/cilium to v1.18.1 by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3089](https://redirect.github.com/cilium/cilium-cli/pull/3089)
- chore(deps): update dependency kubernetes-sigs/kind to v0.30.0 by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3091](https://redirect.github.com/cilium/cilium-cli/pull/3091)
- chore(deps): update golang-images - autoclosed by
[@&#8203;renovate](https://redirect.github.com/renovate)\[bot] in
[#&#8203;3090](https://redirect.github.com/cilium/cilium-cli/pull/3090)
- Prepare for v0.18.7 release by
[@&#8203;michi-covalent](https://redirect.github.com/michi-covalent) in
[#&#8203;3092](https://redirect.github.com/cilium/cilium-cli/pull/3092)

**Full Changelog**:
<cilium/cilium-cli@v0.18.6...v0.18.7>

</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://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS45NS4wIiwidXBkYXRlZEluVmVyIjoiNDEuMTMyLjUiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbInR5cGUvcGF0Y2giXX0=-->

Co-authored-by: zocimek-renovate[bot] <134739422+zocimek-renovate[bot]@users.noreply.github.com>
Co-authored-by: Łukasz Pospiech <zocimek@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/clustermesh Relates to multi-cluster routing functionality in Cilium. cilium-cli This PR contains changes related with cilium-cli cilium-cli-exclusive This PR only impacts cilium-cli binary ready-to-merge This PR has passed all tests and received consensus from code owners to merge. release-note/minor This PR changes functionality that users may find relevant to operating Cilium.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants