-
Notifications
You must be signed in to change notification settings - Fork 549
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: update kkcore CRDs #2410
feat: update kkcore CRDs #2410
Conversation
Quality Gate passedIssues Measures |
// GetHostsFromGroup flatten a specific `Inventory` group with de-duplication. | ||
func GetHostsFromGroup(inv *Inventory, groupName string, unavailableHosts, unavailableGroups map[string]struct{}) []string { | ||
var hosts = make([]string, 0) | ||
if v, ok := inv.Spec.Groups[groupName]; ok { | ||
unavailableGroups[groupName] = struct{}{} | ||
for _, cg := range v.Groups { | ||
if _, exist := unavailableGroups[cg]; !exist { | ||
unavailableGroups[cg] = struct{}{} | ||
hosts = append(hosts, GetHostsFromGroup(inv, cg, unavailableHosts, unavailableGroups)...) | ||
} | ||
} | ||
|
||
validHosts := make([]string, 0) | ||
for _, hostName := range v.Hosts { | ||
if _, ok := inv.Spec.Hosts[hostName]; ok { | ||
if _, exist := unavailableHosts[hostName]; !exist { | ||
unavailableHosts[hostName] = struct{}{} | ||
validHosts = append(validHosts, hostName) | ||
} | ||
} | ||
} | ||
hosts = append(hosts, validHosts...) | ||
} | ||
|
||
return hosts | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
move in variable package
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This logic is unique for inventory
CRD, so I don't need to move it.
By the way, variable
is for playbook
, which will store variables when the playbook being executed. But GetHostsFromGroup
used for init a valid inventory
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should not set as a crd.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adjusted in PR#2425
44c9153
into
kubesphere:feature-gitops
[APPROVALNOTIFIER] This PR is APPROVED Approval requirements bypassed by manually added approval. This pull-request has been approved by: dbbDylan The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
This reverts commit 44c9153.
What type of PR is this?
/kind feature
/kind design
What this PR does / why we need it:
Update kkcore CRDs for CAPKK
Which issue(s) this PR fixes:
Fixes #
Does this PR introduced a user-facing change?