Fix namespace import panic if no namespace provided

This commit is contained in:
Tomaž Jerman
2022-01-18 21:50:18 +01:00
committed by Denis Arh
parent 3c730369d9
commit 1a8d262032
3 changed files with 44 additions and 0 deletions
+4
View File
@@ -519,6 +519,10 @@ func (svc namespace) ImportInit(ctx context.Context, f multipart.File, size int6
}
}
if ns == nil {
return NamespaceErrImportMissingNamespace()
}
session.Name = ns.Name
session.Slug = ns.Slug
namespaceSessionStore[session.SessionID] = session
+36
View File
@@ -749,6 +749,42 @@ func NamespaceErrUnsupportedImportFormat(mm ...*namespaceActionProps) *errors.Er
return e
}
// NamespaceErrImportMissingNamespace returns "compose:namespace.importMissingNamespace" as *errors.Error
//
//
// This function is auto-generated.
//
func NamespaceErrImportMissingNamespace(mm ...*namespaceActionProps) *errors.Error {
var p = &namespaceActionProps{}
if len(mm) > 0 {
p = mm[0]
}
var e = errors.New(
errors.KindInternal,
p.Format("import source does not contain a namespace", nil),
errors.Meta("type", "importMissingNamespace"),
errors.Meta("resource", "compose:namespace"),
// action log entry; no formatting, it will be applied inside recordAction fn.
errors.Meta(namespaceLogMetaKey{}, "could not import namespace; import source does not contain a namespace"),
errors.Meta(namespacePropsMetaKey{}, p),
// translation namespace & key
errors.Meta(locale.ErrorMetaNamespace{}, "compose"),
errors.Meta(locale.ErrorMetaKey{}, "namespace.errors.importMissingNamespace"),
errors.StackSkip(1),
)
if len(mm) > 0 {
}
return e
}
// NamespaceErrImportSessionNotFound returns "compose:namespace.importSessionNotFound" as *errors.Error
//
//
+4
View File
@@ -91,6 +91,10 @@ errors:
message: "unsupported import format"
log: "could not import namespace {{namespace}}; unsupported format {{archiveFormat}}"
- error: importMissingNamespace
message: "import source does not contain a namespace"
log: "could not import namespace; import source does not contain a namespace"
- error: importSessionNotFound
message: "the import session does not exist"
log: "could not import namespace {{namespace}}; the import session does not exist"