2017-08-15 175 views

回答

2

test.yml:

data: 
    info: change me 
    aaa: bbb 
    ddd: ccc 

管道腳本:

@Grab('org.yaml:snakeyaml:1.17') 
import org.yaml.snakeyaml.Yaml 
import org.yaml.snakeyaml.DumperOptions 
import static org.yaml.snakeyaml.DumperOptions.FlowStyle.BLOCK 

node { 
    def yaml = readYaml file: "test.yml" 
    yaml.data.info = 'hello world!' 
    writeFile file:"test.yml", text:yamlToString(yaml) 
} 

@NonCPS 
String yamlToString(Object data){ 
    def opts = new DumperOptions() 
    opts.setDefaultFlowStyle(BLOCK) 
    return new Yaml(opts).dump(data) 
} 

最終test.yml:

data: 
    info: hello world! 
    aaa: bbb 
    ddd: ccc