• @rtxnM
    link
    English
    8
    edit-2
    10 months ago

    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?

    • @MeanEYE
      link
      110 months ago

      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.

      • @rtxnM
        link
        English
        4
        edit-2
        10 months ago

        You can use JSON to write the playbooks, then use a program like yq (which is a Yaml wrapper for jq) to convert it to Yaml. Something like

        cat playbook.json | yq --yaml-output > .temp_playbook.yml
        ansible-playbook .temp_playbook.yml
        
        • @MeanEYE
          link
          110 months ago

          I did not know that. That’s a useful one. Does it work the other way around?

          • @rtxnM
            link
            English
            210 months ago

            Yes, both yq and jq 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 to jq. yq outputs JSON by default, or Yaml if you pass it the --yaml-output option.