kubernetes/kops · error

Error Details: %v

Error message

Error Details: %v

What it means

Final diagnostic in buildVFSPath after the URL was recognized as neither S3 nor GCS nor a pass-through scheme: the command prints detailed guidance (S3/GCS/path requirements) and then fails with this generic 'Error Details' message. The target file repository URL is unsupported.

Source

Thrown at pkg/assets/assetcopy/copyfile.go:213

	} else {
		// Convert a GCS URL in the https://storage.googleapis.com/<bucket>/<path> form to the
		// equivalent gs:// vfsPath. The gs:// form itself was already passed through above.
		u, err := url.Parse(target)
		if err != nil {
			return "", fmt.Errorf("Unable to parse Google Cloud Storage URL: %q", target)
		}
		if u.Host == "storage.googleapis.com" {
			vfsPath = "gs:/" + u.Path
		}
	}

	if vfsPath == "" {
		klog.Errorf("Unable to determine VFS path from supplied URL: %s", target)
		klog.Errorf("S3, Google Cloud Storage, and File Paths are supported.")
		klog.Errorf("For S3, please make sure that the supplied file repository URL starts with s3:// or adheres to S3 naming conventions.")
		klog.Errorf("For GCS, please make sure that the supplied file repository URL starts with gs:// or https://storage.googleapis.com/")
		if err != nil { // print the S3 error for more details
			return "", fmt.Errorf("Error Details: %v", err)
		}
		return "", fmt.Errorf("unable to determine vfs type for %q", target)
	}

	return vfsPath, nil
}

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Use an s3:// URL or S3 HTTPS convention
  2. Use gs:// or https://storage.googleapis.com/<bucket>/<path> for GCS
  3. Use a plain filesystem path for local assets
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at pkg/assets/assetcopy/copyfile.go:213 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05). Data as JSON: /api/errors/b70e78f9acd883d7. Report an issue: GitHub.