From f7148ff25014b3e06c4caed2949d7b22af596e5e Mon Sep 17 00:00:00 2001 From: kahirokunn Date: Tue, 20 May 2025 14:09:17 +0900 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20clusterctl:=20dump=20metadata.yaml?= =?UTF-8?q?=20when=20-v=3D10?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adds verbose logging of metadata.yaml content for GitHub-hosted providers when clusterctl is run with -v=10. This enhances troubleshooting of release metadata without overwhelming the logs. --- .../client/repository/repository_github.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/cmd/clusterctl/client/repository/repository_github.go b/cmd/clusterctl/client/repository/repository_github.go index bf772a9b04b2..e36bd5b03d55 100644 --- a/cmd/clusterctl/client/repository/repository_github.go +++ b/cmd/clusterctl/client/repository/repository_github.go @@ -494,6 +494,24 @@ func (g *gitHubRepository) downloadFilesFromRelease(ctx context.Context, release return nil, retryError } + // If this is a metadata.yaml file and verbose logging is enabled (-v=10), dump the content to logs + if filepath.Base(fileName) == "metadata.yaml" { + log := logf.Log + verboseLog := log.V(10) + + // Get version from release tag + version := "" + if release.TagName != nil { + version = *release.TagName + } + + verboseLog.Info("Dumping metadata.yaml via downloadFilesFromRelease", "provider", g.providerConfig.Name(), "fileName", fileName) + providerID := fmt.Sprintf("%s/%s", g.providerConfig.Name(), version) + verboseLog.Info("metadata.yaml content", + "providerID", providerID, + "content", string(content)) + } + return content, nil }