How to configure a glob for a yamlls schema (or how to add more than one setting)

Hi, I have the following config for yaml schemas in yamlls config, but it complains with duplicate keys (naturally). What I’m trying is to either find a way to specify the same schema URL for more than one glob, or - even better - how to come up with a glob that fits for both possible paths:

  • .gitlab-ci.yml
  • ci/*.yml
    settings = {
        yaml = {
            schemaStore = {
                url = "https://www.schemastore.org/api/json/catalog.json",
                enable = true,
            },
            schemas = {
                ["https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json"] = ".gitlab-ci.yml",
                ["https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json"] = "ci/*.yml",
            },
        }
    }

any hints greatly appreciated and thanks for your outstanding efforts to make neovim a great experience!

I just found out that by removing both lines, it still works for .gitlab-ci.yml (seems to be detected properly), but still not for the included files (ci/*.yml) - they are detected as “normal” yaml files, but not validated against the gitlab-ci schema.

So the question remains…

OK, found it - curly braces work:

            schemas = {
                ["https://raw.githubusercontent.com/yannh/kubernetes-json-schema/master/v1.22.0/all.json"] = "k8s/**",
                ["https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json"] = {"ci/*.yml", ".gitlab-ci.yml"},
            },