diff --git a/apis/project.cattle.io/v3/pipeline_types.go b/apis/project.cattle.io/v3/pipeline_types.go index f0c5fd74..54c9f7ed 100644 --- a/apis/project.cattle.io/v3/pipeline_types.go +++ b/apis/project.cattle.io/v3/pipeline_types.go @@ -149,7 +149,7 @@ type PipelineSpec struct { TriggerWebhookTag bool `json:"triggerWebhookTag,omitempty" yaml:"triggerWebhookTag,omitempty"` RepositoryURL string `json:"repositoryUrl,omitempty" yaml:"repositoryUrl,omitempty"` - SourceCodeCredentialName string `json:"sourceCodeCredentialName,omitempty" yaml:"sourceCodeCredentialName,omitempty" norman:"type=reference[sourceCodeCredential]"` + SourceCodeCredentialName string `json:"sourceCodeCredentialName,omitempty" yaml:"sourceCodeCredentialName,omitempty" norman:"type=reference[sourceCodeCredential],noupdate"` } type PipelineConfig struct { diff --git a/mapper/namespace_reference.go b/mapper/namespace_reference.go index f6b8db10..428ce5d9 100644 --- a/mapper/namespace_reference.go +++ b/mapper/namespace_reference.go @@ -32,13 +32,10 @@ func (n *NamespaceReference) FromInternal(data map[string]interface{}) { func (n *NamespaceReference) ToInternal(data map[string]interface{}) error { namespaceID, ok := data["namespaceId"] - if !ok { - return nil - } for _, path := range n.fields { convert.Transform(data, path, func(input interface{}) interface{} { parts := strings.SplitN(convert.ToString(input), ":", 2) - if len(parts) == 2 && (parts[0] == namespaceID) { + if len(parts) == 2 && (!ok || parts[0] == namespaceID) { return parts[1] } return input