From a quick look at nova-yaml, I think it is ignoring anything that is passed to workspace/didChangeConfiguration
and will only use the workspace/configuration
request’s response now that it is supported.
Running the examples in the repo itself, it has yaml.schemas
set inside the project configuration and it looks like nova isn’t returning that in the workspace/configuration
response.
This output is from me saving the
.nova/configuration.json
to trigger the processes
server stdin.log
{"jsonrpc":"2.0","method":"workspace\/didChangeConfiguration","params":{"settings":{}}}Content-Length: 55{“jsonrpc”:“2.0”,“id”:6,“result”:[null,null,null,null]}
server stdout.log
{"jsonrpc":"2.0","id":6,"method":"workspace/configuration","params":{"items":[{"section":"yaml"},{"section":"http"},{"section":"[yaml]"},{"section":"editor"}]}}Content-Length: 149
I think sending the workspace/didChangeConfiguration
is triggering the yaml server to do a workspace/configuration
request, but that isn’t returning the correct configuration?
Update — If I rework the Configuration.json to not use dot-notation, Nova does pick up the configuration and return it to the workspace/configuration
response.
.nova/Configuration.json
{ "yaml": { "customTags": ["!secret scalar"], "schemas": { ... } }
server stdin.log
{"jsonrpc":"2.0","id":12,"result":[{"schemas":{"https:\/\/raw.githubusercontent.com\/yannh\/kubernetes-json-schema\/master\/v1.20.5-standalone-strict\/all.json":["*deployment.yml","*deploy.yml","*configmap.yml","*cm.yml","*namespace.yml","*ns.yml","*persistentvolumeclaim.yml","*pvc.yml","*pod.yml","*po.yml","*secret.yml","*service.yml","*svc.yml","*serviceaccount.yml","*sa.yml","*daemonset.yml","*ds.yml","*cronjob.yml","*cj.yml","*job.yml","*ingress.yml","*ing.yml"]},"customTags":["!secret scalar"]},null,null,null]}
I think I touched on this in WorkspaceConfiguration middleware it didn’t seem like there was a defined way to store configuration sections