| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package kubemodel
- import (
- "fmt"
- "time"
- )
- // @bingen:generate:Namespace
- type Namespace struct {
- UID string `json:"uid"` // @bingen:field[version=1]
- ClusterUID string `json:"clusterUID"` // @bingen:field[version=1]
- Name string `json:"name"` // @bingen:field[version=1]
- Labels map[string]string `json:"labels"` // @bingen:field[version=1]
- Annotations map[string]string `json:"annotations"` // @bingen:field[version=1]
- Start time.Time `json:"start,omitempty"` // @bingen:field[version=1]
- End time.Time `json:"end,omitempty"` // @bingen:field[version=1]
- }
- func (kms *KubeModelSet) RegisterNamespace(uid, name string) error {
- if uid == "" {
- err := fmt.Errorf("UID is nil for Namespace '%s'", name)
- kms.Error(err)
- return err
- }
- if _, ok := kms.Namespaces[uid]; !ok {
- clusterUID := ""
- if kms.Cluster == nil {
- kms.Warnf("RegisterNamespace(%s, %s): Cluster is nil", uid, name)
- } else {
- clusterUID = kms.Cluster.UID
- }
- kms.Namespaces[uid] = &Namespace{
- UID: uid,
- ClusterUID: clusterUID,
- Name: name,
- }
- kms.idx.namespaceByName[name] = kms.Namespaces[uid]
- kms.Metadata.ObjectCount++
- }
- return nil
- }
|