Repository navigation
Conversation
There was a problem hiding this comment.
🔵 Needs a closer look
Merge depends on devzero-inc/devzero 0.3.0 being published, but Registry availability and released-provider compatibility remain unverified because validation used a local development build.
No open issues 🎉
What changed in this PR
Adds optional team selection to the cluster module so partners can register clusters in their customers’ DevZero teams. Leaving team_id unset preserves registration in the provider’s team.
Changes:
- Passes the new
team_idinput todevzero_clusterand raises the DevZero provider minimum to0.3.0. - Restores chart defaults to the module’s v0.1.6 values.
- Documents partner setup and adds a customer-team example using a service account token.
The PR remains gated on provider 0.3.0 being published to the Terraform Registry.
| File | Description |
|---|---|
| variables.tf | Adds optional team_id and restores chart defaults. |
| README.md | Documents partner usage, provider requirements, and updated defaults. |
| providers.tf | Raises the DevZero provider minimum to 0.3.0. |
| main.tf | Passes team_id to cluster registration. |
| examples/partner-customer-cluster.tf | Demonstrates creating a customer team and registering its cluster. |
Review effort: Balanced
lbagic
requested review from
MauroKinderknecht and
Tzvonimir
and
a balanced review from Copilot
November 4, 2026 14:15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A partner can register its customer's cluster in that customer's own DevZero team: the module takes a
team_id, such as adevzero_team'sid. Left unset, everything plans as it does today.Merge only once
devzero-inc/devzero0.3.0 is on the Terraform Registry: the provider floor moves to it, soterraform initonmainfails until it is out. Also check the chart defaults going back to v0.1.6's. Risk: low, a revert undoes it all.Why
A partner (OpenObserve first) installs DevZero into its customers' clusters, and each customer pays for its own DevZero team. The provider's next release adds
devzero_team, which starts that team, andteam_idondevzero_cluster, which registers a cluster in it. Today this module always registers the cluster in the provider's own team, so a partner's install lands in the partner's team.Read first
main.tf,variables.tf:team_id(defaultnull) goes straight todevzero_cluster.team_id. The provider refuses a change of it at plan, so the module never moves or re-creates a registered cluster.providers.tf:devzero>= 0.3.0, the first release whosedevzero_clusterhasteam_id.variables.tf, chart versions:mainholds one unreleased change, bump operator versions #10, which raised the defaults to zxporter0.1.8and dakr-operator0.1.61. This sets them back to the v0.1.6 release's0.0.59and0.1.49, so the next release carries onlyteam_idand the floor.README.md,examples/partner-customer-cluster.tf: a partner's example (adevzero_teamand this module). Both declarerequired_providers, name a service account's token, and say thatmember_emailsmust name an Admin of the partner's team. The README's snippets use the registry addressdevzero-inc/cluster/devzero, pinned to~> 0.2.Evidence
terraform fmt -check -recursiveclean on51e7172. On1de948a(later commits change only comments and the README),terraform validatevalid against the provider'smain(0cceeb32c8) built locally throughdev_overrides. 0.3.0 is not on the registry, soinitran with the floor relaxed in a throwaway copy.examples/partner-customer-cluster.tfrun as a root:terraform providersbindsdevzerotodevzero-inc/devzero >= 0.3.0, nothashicorp/devzero.terraform getacceptsdevzero-inc/cluster/devzeroand downloads 0.1.6.Left out
v0.2.0once the merge is done.devzero_teamcan start a team. DevZero staff set it.Review and detail
team_id, the first refresh stores the provider's team, so a refreshing plan shows no diff. Aplan -refresh=falseon such a state plansteam_idas known after apply, and the update sends the same name and the provider's team. That behaviour is the provider's; the module cannot change it.devzero_teamis that person's leave. A team's last member leaving deletes it, unless DevZero refuses the leave, as it does once a cluster in the team has reported; then the destroy fails. That is why every example names a service account's token.zxporter_chart_versionandoperator_chart_version.team_idis an argument the provider's schema must know, so 0.2.0 and older refuse the module.>= 0.3.0: terraform-docs takes it from aninit, which needs 0.3.0 on the registry.Open in [code]smith · Need help on this PR? Tag
@codesmith-botwith what you need.