commit | 1ca780a4d89efe2280697222329374bfb4b41710 | [log] [tgz] |
---|---|---|
author | Paul Sokolovsky <paul.sokolovsky@linaro.org> | Fri Jan 26 13:34:13 2024 +0700 |
committer | Paul Sokolovsky <paul.sokolovsky@linaro.org> | Fri Jan 26 13:38:02 2024 +0700 |
tree | e891e0aabadfc7354e60a2b0e8000e1711ab127c | |
parent | 75b53f000fc8c09680091fc6df1265d411341b09 [diff] |
hosts: Comment out x86-64-TF-06 This host has issues with running updates using ci-dockerslaves-cleanup, see https://linaro.atlassian.net/browse/STG-5588. That means that actual CI builds running there use outdated images and don't work properly. We comment out and don't just remove config section, becaus this host still physically exists (and is billed), and so must be removed fully before being forgotten. Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org> Change-Id: Ifa207c36659830e6ae747cc8c28035433d3eb187
Yet Another Docker Plugin (YADP) is extremely hard to manage, when running multiple slaves with multiple images. Due to the way Jenkins displays the configuration page. YADP provides a groovy script which builds a JSON array to populate the configuration in Jenkins.
This script uses YAML and Jinja2 to generate a java JSONARRAY to build the configuration, using a !include constructor in the YAML file, allowing the ability to template up docker_images, since many of our slaves run the same image, it lessens repetition.
####hosts
- host1: cloud_name: host1.example.org docker-url: tcp://0.0.0.0:2375 docker_templates: !include external_template_file.yml - host2: cloud_name: host2.example.org docker-url: tcp://0.0.0.1:2375 docker_templates: - xenial-amd64: docker_image_name: 'ubuntu:latest' max_instances: '1' labels: 'docker-ubuntu' launch_method: ssh ssh: launch_ssh_credentials_id: 'random-id' launch_ssh_port: '22' - host3 cloud_name: host3.example.org docker-url: tcp://0.0.0.0:2375 docker_templates: !include [external_template_file.yml, external_template_file_2.yml]
Due to the nature of YAML and populating the Java JSONARRAY, its important that YAML is phased correctly.
Most of the limitations surround docker_templates.
A list of limitations and pending improvements.
Example of broken approach:
Example of broken approach: