Копирование подмножества текста YAML в отдельный файл сопровождается синтаксической ошибкой при обработке - PullRequest
1 голос
/ 09 марта 2020

Я работаю над комбинацией [трубопровод Дженкинса - YAML - ansible]. В конвейере есть раздел ввода, и он выглядит примерно так:

student_input = input(
message: 'Input Student details', parameters: [text(defaultValue: 
'''---
student: 
  ID: 100
  grade: 5
  info: 
    email: abc@xyz.com
    home_town: efg
    marks: 
      math: 95
      science: 92
''',
description: '', 
name: 'student'
 )]
)

Затем я записываю этот ввод в переменную, используя файл readYaml: "File.yml" Утилита.

В реализации для этого использовались вложенные карты с циклами map.each для достижения info , а затем оценки раздел.

Groovy пример кода карты:

value.each { k, v ->

           sh """
           echo '$k: $v' >> student.yml
           """
           }

Используя это, я пытаюсь записать все значение часть раздела info в отдельный файл YAML, который впоследствии будет использоваться вместе с модулем include_vars ansible.

Во время работы конвейера groovy я столкнулся со следующей проблемой в Ansible:

fatal: [localhost]: FAILED! => {"failed": true, "msg": "Syntax Error while loading YAML.
The error appears to have been in 'True': line 9, column 26, 
but may\nbe elsewhere in the file depending on the exact syntax problem.(could not open file to display line)"}

Когда я проверял окончательный файл YAML, раздел меток выглядит как-то например:

marks: [math:95, science:92]

Способ записи этих элементов списка (без пробела после двоеточия) в файл, кажется, вызывает ошибка.

Пожалуйста, помогите мне с решением для этого. Я что-то упускаю или делаю что-то не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...