diff --git a/controllers/helmchart_controller.go b/controllers/helmchart_controller.go index 88eb50c5..a8278c61 100644 --- a/controllers/helmchart_controller.go +++ b/controllers/helmchart_controller.go @@ -537,7 +537,7 @@ func (r *HelmChartReconciler) reconcileFromTarballArtifact(ctx context.Context, } // Continue loop if file scheme detected - if strings.HasPrefix(dep.Repository, "file://") { + if dep.Repository == "" || strings.HasPrefix(dep.Repository, "file://") { dwr = append(dwr, &helm.DependencyWithRepository{ Dependency: dep, Repository: nil, diff --git a/internal/helm/dependency_manager.go b/internal/helm/dependency_manager.go index b6e9b982..906928ed 100644 --- a/internal/helm/dependency_manager.go +++ b/internal/helm/dependency_manager.go @@ -156,7 +156,7 @@ func (dm *DependencyManager) secureLocalChartPath(dep *DependencyWithRepository) if err != nil { return "", fmt.Errorf("failed to parse alleged local chart reference: %w", err) } - if localUrl.Scheme != "file" { + if localUrl.Scheme != "" && localUrl.Scheme != "file" { return "", fmt.Errorf("'%s' is not a local chart reference", dep.Dependency.Repository) } return securejoin.SecureJoin(dm.WorkingDir, filepath.Join(dm.ChartPath, localUrl.Host, localUrl.Path))