Я хочу написать сценарий сборки задания DSL для jenkins в groovy, который автоматически запускает задание развертывания для наших проектов. В каждом проекте есть общий файл yml для доступных ролей и параметров хостов, который я хочу прочитать и использовать его содержимое для настройки задания.
Проблема в том, что до сих пор я использую змейку для чтения yml-файла, но он возвращает массив (больше похожий на карту), который я не могу использовать эффективно.
кто-нибудь знает лучшее решение?
мой образец файла yml:
---
- hosts: app.host
roles:
- role: app-db
db_name: myproje_db
db_port: "3306"
migrate_module: "my-proje-api"
- role: java-app
app_name: "myproje-api"
app_artifact_name: "my-proje-api"
app_links:
- myproje_db
Я прочитал файл из рабочей области в моем основном скрипте groovy:
InputStream configFile = streamFileFromWorkspace('data/config.yml')
и обработать его в другой функции другого класса:
public String configFileReader(def out, InputStream configFile){
def map
Yaml configFileYml = new Yaml()
map = configFileYml.load(configFile)
}
он возвращает тип класса карты как arraylist.