Converti Groovy Map in String in formato Yaml

Sep 03 2020

Sto usando snakeYaml per convertire una stringa in formato YAML in Groovy Map .

@Grab(group='org.yaml', module='snakeyaml', version='1.17')
import org.yaml.snakeyaml.Yaml

Yaml yaml = new Yaml()

Map config = yaml.load(new File('config.yaml').text)

Voglio arrivare ora al contrario: data una mappa Groovy , voglio convertirla in String in formato YAML SENZA SCRIVERE LA STRINGA in un FILE.

Ho trovato groovy.yaml.YamlBuilder. Tuttavia, il fantastico compilatore dell'ambiente è vecchio e questa classe non è stata trovata.

Idealmente, la stessa lib (snakeYaml) può gestire il caso opposto. Ma non c'è modo di farlo funzionare.

Risposte

AbdennourTOUMI Sep 04 2020 at 13:45

sì yaml.dump()è la risposta


Map config = [kind: 'Pod', metadata:[name: app]]

Yaml yaml = new Yaml()

assert yaml.dump(config) == '''kind: Pod
metadata:
  name: app
'''