sl1pm4t / k2tf

Kubernetes YAML to Terraform HCL converter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Support kubernetes_manifest for custom resources

flokli opened this issue · comments

kubernetes_manifest now exists, and can be used to create instances of custom resources.

It'd be nice if k2tf would support this. RIght now, it just fails (when trying to transform https://github.com/grafana/agent/blob/main/cmd/agent-operator/agent-example-config.yaml, for example):

12:53PM Fatal | Could not parse stdin                                         error="10 errors occurred:\n\t* could not decode yaml object with main scheme #1: no kind \"GrafanaAgent\" is registered for version \"monitoring.grafana.com/v1alpha1\" in scheme \"pkg/runtime/scheme.go:100\"\n\t* could not decode yaml object with aggregator scheme #1: no kind \"GrafanaAgent\" is registered for version \"monitoring.grafana.com/v1alpha1\" in scheme \"pkg/runtime/scheme.go:100\"\n\t* could not decode yaml object with main scheme #2: no kind \"MetricsInstance\" is registered for version \"monitoring.grafana.com/v1alpha1\" in scheme \"pkg/runtime/scheme.go:100\"\n\t* could not decode yaml object with aggregator scheme #2: no kind \"MetricsInstance\" is registered for version \"monitoring.grafana.com/v1alpha1\" in scheme \"pkg/runtime/scheme.go:100\"\n\t* could not decode yaml object with main scheme #3: no kind \"LogsInstance\" is registered for version \"monitoring.grafana.com/v1alpha1\" in scheme \"pkg/runtime/scheme.go:100\"\n\t* could not decode yaml object with aggregator scheme #3: no kind \"LogsInstance\" is registered for version \"monitoring.grafana.com/v1alpha1\" in scheme \"pkg/runtime/scheme.go:100\"\n\t* could not decode yaml object with main scheme #4: no kind \"PodMonitor\" is registered for version \"monitoring.coreos.com/v1\" in scheme \"pkg/runtime/scheme.go:100\"\n\t* could not decode yaml object with aggregator scheme #4: no kind \"PodMonitor\" is registered for version \"monitoring.coreos.com/v1\" in scheme \"pkg/runtime/scheme.go:100\"\n\t* could not decode yaml object with main scheme #5: no kind \"PodLogs\" is registered for version \"monitoring.grafana.com/v1alpha1\" in scheme \"pkg/runtime/scheme.go:100\"\n\t* could not decode yaml object with aggregator scheme #5: no kind \"PodLogs\" is registered for version \"monitoring.grafana.com/v1alpha1\" in scheme \"pkg/runtime/scheme.go:100\"\n\n"

Yep agreed. Will have a look at this when I get a chance.

One more instance occured while Apigee installation , error as below
←[90m4:28PM←[0m ←[31mWarn←[0m | could not parse file ←[31merror=←[0m←[31m"12 errors occurred:\n\t* could not decode yaml object with main scheme #1: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with aggregator scheme #1: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with main scheme #2: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with aggregator scheme #2: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with main scheme #3: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with aggregator scheme #3: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with main scheme #4: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with aggregator scheme #4: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with main scheme #5: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with aggregator scheme #5: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with main scheme #6: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\t* could not decode yaml object with aggregator scheme #6: no kind "CustomResourceDefinition" is registered for version "apiextensions.k8s.io/v1beta1" in scheme "pkg/runtime/scheme.go:100"\n\n"←[0m

https://github.com/jrhouston/tfk8s does that and is sort of complementary. But it would be nice to have one tool that supports both.

I'm open to some kind of merger or creation of a new tool that combines the two projects, as the counterpart request to this was opened here: jrhouston/tfk8s#40

Warn | could not parse file                                          error="4 errors occurred:
	* could not decode yaml object with main scheme #19: no kind \"CustomResourceDefinition\" is registered for version \"apiextensions.k8s.io/v1\" in scheme \"pkg/runtime/scheme.go:100\"
	* could not decode yaml object with aggregator scheme #19: no kind \"CustomResourceDefinition\" is registered for version \"apiextensions.k8s.io/v1\" in scheme \"pkg/runtime/scheme.go:100\"
	* could not decode yaml object with main scheme #20: no kind \"CustomResourceDefinition\" is registered for version \"apiextensions.k8s.io/v1\" in scheme \"pkg/runtime/scheme.go:100\"
	* could not decode yaml object with aggregator scheme #20: no kind \"CustomResourceDefinition\" is registered for version \"apiextensions.k8s.io/v1\" in scheme \"pkg/runtime/scheme.go:100\"

this conversation showed me the other thing-a-magic (tfk8s)
so just wanted to say thank you :)