Carvel YTT模块在与go集成时,在简单的替换覆盖上没有返回匹配项



我正在尝试将卡维尔ytt模块与我的应用程序集成。到目前为止,我正在尝试一些我以前在操场上测试过的基本东西。当我试图在代码中做同样的事情时,它总是不匹配。

filesToProcess := yttfiles.NewSortedFiles([]*yttfiles.File{
yttfiles.MustNewFileFromSource(yttfiles.NewBytesSource(yttPath, readByteFile(yttPath))),
})

opts.DataValuesFlags = yttcmd.DataValuesFlags{
FromFiles: []string{filePath},
ReadFilesFunc: func(path string) ([]*yttfiles.File, error) {
return []*yttfiles.File{yttfiles.MustNewFileFromSource(yttfiles.NewBytesSource(path, readByteFile(path)))}, nil
},
}
output := opts.RunWithFiles( yttcmd.Input{Files: filesToProcess}, yttui.NewTTY(false))

yttPath是包含覆盖的yaml的路径。Path是我要编辑的文件的路径。readByteFile只是用ioutil。ReadFile。

我不确定在这样的代码中使用覆盖是否可行,因为在github上没有覆盖的例子。

这个代码完全错了吗?提前感谢任何对此有经验的人。

配置和调用ytt的方式对我来说似乎是合法的。

我听到你说这是游乐场里的东西。但是,如果您的程序正在运行,并且没有出现错误,我会怀疑覆盖本身存在一些微妙的问题。

如果你能发布yttPath内容的安全共享版本,我可能会提供帮助。

另一个角度是examples/integrating-with-ytt/internal-templating/示例开始,并将yttPath的内容粘贴到该示例的run()函数中的tpl变量中。

相关内容

  • 没有找到相关文章

最新更新