Warning: Some posts on this platform may contain adult material intended for mature audiences only. Viewer discretion is advised. By clicking ‘Continue’, you confirm that you are 18 years or older and consent to viewing explicit content.
I don’t particularly like yaml as a data storage language because of its use of significant whitespaces, but for the minimal complexity of my own playbooks, I don’t mind it.
What would you consider to be an ideal language for playbooks?
Am not sure to be honest. I always liked JSON even though it’s very rigid. Even so, most of software I write stores config in JSON simply because it’s easy to parse and it’s supported by literally everything. It’s also pretty minimalist.
Perhaps something more strict and defined would be better. I think I’d even prefer XML to YAML.
yq can take either JSON or Yaml (or maybe others, I haven’t checked) as input, then it converts it to JSON before passing it to jq. yq outputs JSON by default, or Yaml if you pass it the --yaml-output option.
I don’t particularly like yaml as a data storage language because of its use of significant whitespaces, but for the minimal complexity of my own playbooks, I don’t mind it.
What would you consider to be an ideal language for playbooks?
Am not sure to be honest. I always liked JSON even though it’s very rigid. Even so, most of software I write stores config in JSON simply because it’s easy to parse and it’s supported by literally everything. It’s also pretty minimalist.
Perhaps something more strict and defined would be better. I think I’d even prefer XML to YAML.
You can use JSON to write the playbooks, then use a program like
yq
(which is a Yaml wrapper forjq
) to convert it to Yaml. Something likeI did not know that. That’s a useful one. Does it work the other way around?
Yes, both
yq
andjq
are fantastic programs.yq
can take either JSON or Yaml (or maybe others, I haven’t checked) as input, then it converts it to JSON before passing it tojq
.yq
outputs JSON by default, or Yaml if you pass it the--yaml-output
option.