I’m currently working on the dhall configuration language (dhall-lang.org) that is a tool that, simply put, let you generate yaml/json/whatever-config-file-type you’d like from a .dhall file that you can think that a source of truth.
There exists a dhall-kubernetes package that provides a set of dhall definitions to produce yaml that you can use to create kubernetes resources. It works by fetching the openapi spec from kubernetes (see here).
It would be great to know if travis-ci provides its schema in openapi so I can use this tool to generate some dhall definintions to be used to generate .travis.yml files in a more type-safe manner. If it doesn’t exists, I can create them manually with no problem.