1
0
mirror of synced 2026-02-13 13:06:56 +00:00

Factor out upsert and upsertAndWait

It's a common pattern in the create commands to construct a value,
then (if not exporting it) upsert it and wait for it to
reconcile. This commit factors `upsert`, which does the update/insert
bit, and `upsertAndWait`, which does the whole thing.

Since these output messages, they are methods of `apiType` (previously
`names`), so that they have access to the name of the kind they are
operating on.

Signed-off-by: Michael Bridgen <michael@weave.works>
This commit is contained in:
Michael Bridgen
2020-12-08 18:17:36 +00:00
parent 3b9b2cbe9f
commit 0e35c209d9
23 changed files with 138 additions and 202 deletions

View File

@@ -60,11 +60,6 @@ func statusAndMessage(conditions []metav1.Condition) (string, string) {
return string(metav1.ConditionFalse), "waiting to be reconciled"
}
type named interface {
GetName() string
GetNamespace() string
}
func nameColumns(item named, includeNamespace bool) []string {
if includeNamespace {
return []string{item.GetNamespace(), item.GetName()}
@@ -75,7 +70,7 @@ func nameColumns(item named, includeNamespace bool) []string {
var namespaceHeader = []string{"Namespace"}
type getCommand struct {
names
apiType
list summarisable
}