fix(operator): skip PackageSource creation when platform source URL is empty
When platformSourceURL is empty no Flux source resource is created, so creating a PackageSource that references it would leave a dangling SourceRef in a permanent error state. Guard the creation block on platformSourceURL != "". Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Aleksei Sviridkin <f@lex.la>
This commit is contained in:
parent
d0a6ddd782
commit
8b9a11360e
1 changed files with 11 additions and 13 deletions
|
|
@ -224,20 +224,18 @@ func main() {
|
|||
}
|
||||
}
|
||||
|
||||
// Create platform PackageSource when CRDs are managed by the operator.
|
||||
// When --install-crds=false the PackageSource CRD may not exist yet,
|
||||
// so we skip creation and let an external process handle it.
|
||||
if installCRDs {
|
||||
// Create platform PackageSource when CRDs are managed by the operator and
|
||||
// a platform source URL is configured. Without a URL there is no Flux source
|
||||
// resource to reference, so creating a PackageSource would leave a dangling SourceRef.
|
||||
if installCRDs && platformSourceURL != "" {
|
||||
sourceRefKind := "OCIRepository"
|
||||
if platformSourceURL != "" {
|
||||
sourceType, _, err := parsePlatformSourceURL(platformSourceURL)
|
||||
if err != nil {
|
||||
setupLog.Error(err, "failed to parse platform source URL for PackageSource")
|
||||
os.Exit(1)
|
||||
}
|
||||
if sourceType == "git" {
|
||||
sourceRefKind = "GitRepository"
|
||||
}
|
||||
sourceType, _, err := parsePlatformSourceURL(platformSourceURL)
|
||||
if err != nil {
|
||||
setupLog.Error(err, "failed to parse platform source URL for PackageSource")
|
||||
os.Exit(1)
|
||||
}
|
||||
if sourceType == "git" {
|
||||
sourceRefKind = "GitRepository"
|
||||
}
|
||||
setupLog.Info("Creating platform PackageSource", "platformSourceName", platformSourceName)
|
||||
psCtx, psCancel := context.WithTimeout(mgrCtx, 2*time.Minute)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue