Fixup CI jobs
Several things have bit rotted in here that we need to take care of. First is that we updated the default nodeset to Noble which breaks our ability to install Pillow<10 for blockdiag. To fix this we need to install libjpeg-dev so that we can build a Pillow wheel locally during testing. Next old ansible-lint doesn't run on Noble's python3.12. We bump up Ansible lint to a modern version that matches Zuul's current default Ansible. We also stop installing zuul to get zuul_console and zuul_return and instead simply mock them in the linter. To make this work we have to drop the ansible-playbook syntax check run which is fine because ansible-lint runs this too, but when done via ansible-lint the mocked modules are respected [0]. Finally we have to clean up/ignore some of the new linter warnings/errors. [0] https://ansible.readthedocs.io/projects/lint/rules/syntax-check/ Change-Id: Ia0e936fefc9e2b0f2fa614c93a2f168e14b2825b
This commit is contained in:
parent
837b5bbb6d
commit
7bd42d37c4
@ -8,3 +8,9 @@ skip_list:
|
|||||||
- '204' # Lines should be no longer than 160 chars
|
- '204' # Lines should be no longer than 160 chars
|
||||||
- '301' # Commands should not change things if nothing needs doing
|
- '301' # Commands should not change things if nothing needs doing
|
||||||
- '701' # No 'galaxy_info' found
|
- '701' # No 'galaxy_info' found
|
||||||
|
- 'fqcn[action-core]' # We find the shorter names easier to read
|
||||||
|
- 'fqcn[action]' # We find the shorter names easier to read
|
||||||
|
- 'name[play]' # Name your plays but they dont all need names
|
||||||
|
mock_modules:
|
||||||
|
- zuul_console
|
||||||
|
- zuul_return
|
||||||
|
@ -3,6 +3,8 @@
|
|||||||
|
|
||||||
libffi-devel [test platform:rpm]
|
libffi-devel [test platform:rpm]
|
||||||
libffi-dev [test platform:dpkg]
|
libffi-dev [test platform:dpkg]
|
||||||
|
# For Building Pillow wheels
|
||||||
|
libjpeg-dev [test doc platform:dpkg]
|
||||||
libssl-dev [platform:dpkg]
|
libssl-dev [platform:dpkg]
|
||||||
openssl-devel [platform:rpm]
|
openssl-devel [platform:rpm]
|
||||||
python3-dev [compile test platform:dpkg platform:apk]
|
python3-dev [compile test platform:dpkg platform:apk]
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
- name: Create artifact staging directory
|
- name: Create artifact staging directory
|
||||||
file:
|
file:
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
path: "{{ zuul.executor.work_root }}/artifacts"
|
path: "{{ zuul.executor.work_root }}/artifacts"
|
||||||
- name: Download artifacts
|
- name: Download artifacts
|
||||||
include_role:
|
include_role:
|
||||||
@ -35,12 +35,12 @@
|
|||||||
file:
|
file:
|
||||||
path: "{{ src_dir }}"
|
path: "{{ src_dir }}"
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
- name: Ensure target directory exists
|
- name: Ensure target directory exists
|
||||||
file:
|
file:
|
||||||
path: "{{ target_dir }}"
|
path: "{{ target_dir }}"
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
- name: Unpack into publish dir
|
- name: Unpack into publish dir
|
||||||
# TODO(clarkb) what is the proper way to set mode here?
|
# TODO(clarkb) what is the proper way to set mode here?
|
||||||
unarchive: # noqa 208
|
unarchive: # noqa 208
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
- name: Create artifact staging directory
|
- name: Create artifact staging directory
|
||||||
file:
|
file:
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
path: "{{ zuul.executor.work_root }}/artifacts"
|
path: "{{ zuul.executor.work_root }}/artifacts"
|
||||||
- name: Download artifacts
|
- name: Download artifacts
|
||||||
include_role:
|
include_role:
|
||||||
@ -43,7 +43,7 @@
|
|||||||
file:
|
file:
|
||||||
path: "{{ target_dir }}"
|
path: "{{ target_dir }}"
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
- name: Upload to AFS
|
- name: Upload to AFS
|
||||||
command: "cp {{ item.path }} {{ target_dir }}/{{ item.path | basename | regex_replace(name_replacement, name_target) }}"
|
command: "cp {{ item.path }} {{ target_dir }}/{{ item.path | basename | regex_replace(name_replacement, name_target) }}"
|
||||||
when: "item.path is match(name_replacement)"
|
when: "item.path is match(name_replacement)"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
- hosts: all
|
- hosts: all
|
||||||
# NOTE(pabelanger): We ignore_errors for the following tasks as not to fail
|
# NOTE(pabelanger): We ignore_errors for the following tasks as not to fail
|
||||||
# successful jobs.
|
# successful jobs.
|
||||||
ignore_errors: yes
|
ignore_errors: true
|
||||||
roles:
|
roles:
|
||||||
- remove-build-sshkey
|
- remove-build-sshkey
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
- hosts: all
|
- name: Finalize build
|
||||||
|
hosts: all
|
||||||
roles:
|
roles:
|
||||||
- fetch-output
|
- fetch-output
|
||||||
- merge-output-to-logs
|
- merge-output-to-logs
|
||||||
@ -6,18 +7,18 @@
|
|||||||
- name: Gather debug info on job fail
|
- name: Gather debug info on job fail
|
||||||
when: not (zuul_success | bool)
|
when: not (zuul_success | bool)
|
||||||
block:
|
block:
|
||||||
- name: get df disk usage
|
- name: Get df disk usage
|
||||||
raw: timeout -k 5 90 df
|
raw: timeout -k 5 90 df
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: get df inode usage
|
- name: Get df inode usage
|
||||||
raw: timeout -k 5 90 df -i
|
raw: timeout -k 5 90 df -i
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: get l2 networking
|
- name: Get l2 networking
|
||||||
raw: timeout -k 5 90 ip link
|
raw: timeout -k 5 90 ip link
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: get l3 networking
|
- name: Get l3 networking
|
||||||
raw: timeout -k 5 90 ip addr
|
raw: timeout -k 5 90 ip addr
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
- hosts: all
|
- hosts: all
|
||||||
# NOTE(pabelanger): We ignore_errors for the following tasks as not to fail
|
# NOTE(pabelanger): We ignore_errors for the following tasks as not to fail
|
||||||
# successful jobs.
|
# successful jobs.
|
||||||
ignore_errors: yes
|
ignore_errors: true
|
||||||
roles:
|
roles:
|
||||||
- remove-build-sshkey
|
- remove-build-sshkey
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
- hosts: localhost
|
- name: Upload build logs to swift
|
||||||
|
hosts: localhost
|
||||||
tasks:
|
tasks:
|
||||||
- name: Include Zuul manifest role
|
- name: Include Zuul manifest role
|
||||||
include_role:
|
include_role:
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
- hosts: all
|
- name: Finalize build
|
||||||
|
hosts: all
|
||||||
roles:
|
roles:
|
||||||
- fetch-output
|
- fetch-output
|
||||||
- merge-output-to-logs
|
- merge-output-to-logs
|
||||||
@ -6,18 +7,18 @@
|
|||||||
- name: Gather debug info on job fail
|
- name: Gather debug info on job fail
|
||||||
when: not (zuul_success | bool)
|
when: not (zuul_success | bool)
|
||||||
block:
|
block:
|
||||||
- name: get df disk usage
|
- name: Get df disk usage
|
||||||
raw: timeout -k 5 90 df
|
raw: timeout -k 5 90 df
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: get df inode usage
|
- name: Get df inode usage
|
||||||
raw: timeout -k 5 90 df -i
|
raw: timeout -k 5 90 df -i
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: get l2 networking
|
- name: Get l2 networking
|
||||||
raw: timeout -k 5 90 ip link
|
raw: timeout -k 5 90 ip link
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: get l3 networking
|
- name: Get l3 networking
|
||||||
raw: timeout -k 5 90 ip addr
|
raw: timeout -k 5 90 ip addr
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
- hosts: localhost
|
- name: Create job header and inventory
|
||||||
name: Create job header and inventory
|
hosts: localhost
|
||||||
roles:
|
roles:
|
||||||
- role: emit-job-header
|
- role: emit-job-header
|
||||||
zuul_log_path_shard_build: true
|
zuul_log_path_shard_build: true
|
||||||
- log-inventory
|
- log-inventory
|
||||||
|
|
||||||
- hosts: all
|
- name: Setup Zuul environment
|
||||||
name: Setup Zuul environment
|
hosts: all
|
||||||
pre_tasks:
|
pre_tasks:
|
||||||
# NOTE(pabelanger): Until we hit the validate-host role, we have a minimal
|
# NOTE(pabelanger): Until we hit the validate-host role, we have a minimal
|
||||||
# set of ansible variables collected by zuul-executor. This doesn't include
|
# set of ansible variables collected by zuul-executor. This doesn't include
|
||||||
@ -21,8 +21,8 @@
|
|||||||
- start-zuul-console
|
- start-zuul-console
|
||||||
- ensure-output-dirs
|
- ensure-output-dirs
|
||||||
|
|
||||||
- hosts: all
|
- name: Configure unbound
|
||||||
name: Configure unbound
|
hosts: all
|
||||||
roles:
|
roles:
|
||||||
# NOTE(pabelanger): We run this role in its own play to ensure unbound is
|
# NOTE(pabelanger): We run this role in its own play to ensure unbound is
|
||||||
# restarted before proceeding with any other role. This is because we use
|
# restarted before proceeding with any other role. This is because we use
|
||||||
@ -30,15 +30,15 @@
|
|||||||
# actions are triggered at the end of each block of tasks in a play.
|
# actions are triggered at the end of each block of tasks in a play.
|
||||||
- configure-unbound
|
- configure-unbound
|
||||||
|
|
||||||
- hosts: all
|
- name: Prepare workspace and configure mirrors
|
||||||
name: Prepare workspace and configure mirrors
|
hosts: all
|
||||||
roles:
|
roles:
|
||||||
- validate-host
|
- validate-host
|
||||||
- test-prepare-workspace-git
|
- test-prepare-workspace-git
|
||||||
- mirror-info
|
- mirror-info
|
||||||
- role: configure-mirrors
|
- role: configure-mirrors
|
||||||
set_apt_mirrors_trusted: True
|
set_apt_mirrors_trusted: true
|
||||||
mirror_use_ssl: True
|
mirror_use_ssl: true
|
||||||
configure_mirrors_components_9_stream:
|
configure_mirrors_components_9_stream:
|
||||||
'baseos': true
|
'baseos': true
|
||||||
'baseos-debug': false
|
'baseos-debug': false
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
- hosts: all
|
- hosts: all
|
||||||
# NOTE(pabelanger): We ignore_errors for the following tasks as not to fail
|
# NOTE(pabelanger): We ignore_errors for the following tasks as not to fail
|
||||||
# successful jobs.
|
# successful jobs.
|
||||||
ignore_errors: yes
|
ignore_errors: true
|
||||||
roles:
|
roles:
|
||||||
- remove-build-sshkey
|
- remove-build-sshkey
|
||||||
|
@ -6,18 +6,18 @@
|
|||||||
- name: Gather debug info on job fail
|
- name: Gather debug info on job fail
|
||||||
when: not (zuul_success | bool)
|
when: not (zuul_success | bool)
|
||||||
block:
|
block:
|
||||||
- name: get df disk usage
|
- name: Get df disk usage
|
||||||
raw: timeout -k 5 90 df
|
raw: timeout -k 5 90 df
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: get df inode usage
|
- name: Get df inode usage
|
||||||
raw: timeout -k 5 90 df -i
|
raw: timeout -k 5 90 df -i
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: get l2 networking
|
- name: Get l2 networking
|
||||||
raw: timeout -k 5 90 ip link
|
raw: timeout -k 5 90 ip link
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
|
||||||
- name: get l3 networking
|
- name: Get l3 networking
|
||||||
raw: timeout -k 5 90 ip addr
|
raw: timeout -k 5 90 ip addr
|
||||||
failed_when: false
|
failed_when: false
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
- hosts: localhost
|
- name: Create job header and inventory
|
||||||
name: Create job header and inventory
|
hosts: localhost
|
||||||
roles:
|
roles:
|
||||||
- role: emit-job-header
|
- role: emit-job-header
|
||||||
zuul_log_path_shard_build: true
|
zuul_log_path_shard_build: true
|
||||||
- log-inventory
|
- log-inventory
|
||||||
|
|
||||||
- hosts: all
|
- name: Setup Zuul environment
|
||||||
name: Setup Zuul environment
|
hosts: all
|
||||||
pre_tasks:
|
pre_tasks:
|
||||||
# NOTE(pabelanger): Until we hit the validate-host role, we have a minimal
|
# NOTE(pabelanger): Until we hit the validate-host role, we have a minimal
|
||||||
# set of ansible variables collected by zuul-executor. This doesn't include
|
# set of ansible variables collected by zuul-executor. This doesn't include
|
||||||
@ -21,8 +21,8 @@
|
|||||||
- start-zuul-console
|
- start-zuul-console
|
||||||
- ensure-output-dirs
|
- ensure-output-dirs
|
||||||
|
|
||||||
- hosts: all
|
- name: Configure unbound
|
||||||
name: Configure unbound
|
hosts: all
|
||||||
roles:
|
roles:
|
||||||
# NOTE(pabelanger): We run this role in its own play to ensure unbound is
|
# NOTE(pabelanger): We run this role in its own play to ensure unbound is
|
||||||
# restarted before proceeding with any other role. This is because we use
|
# restarted before proceeding with any other role. This is because we use
|
||||||
@ -30,15 +30,15 @@
|
|||||||
# actions are triggered at the end of each block of tasks in a play.
|
# actions are triggered at the end of each block of tasks in a play.
|
||||||
- configure-unbound
|
- configure-unbound
|
||||||
|
|
||||||
- hosts: all
|
- name: Prepare workspace and configure mirrors
|
||||||
name: Prepare workspace and configure mirrors
|
hosts: all
|
||||||
roles:
|
roles:
|
||||||
- validate-host
|
- validate-host
|
||||||
- prepare-workspace-git
|
- prepare-workspace-git
|
||||||
- mirror-info
|
- mirror-info
|
||||||
- role: configure-mirrors
|
- role: configure-mirrors
|
||||||
set_apt_mirrors_trusted: True
|
set_apt_mirrors_trusted: true
|
||||||
mirror_use_ssl: True
|
mirror_use_ssl: true
|
||||||
configure_mirrors_components_9_stream:
|
configure_mirrors_components_9_stream:
|
||||||
'baseos': true
|
'baseos': true
|
||||||
'baseos-debug': false
|
'baseos-debug': false
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
file:
|
file:
|
||||||
path: "{{ ansible_user_dir }}/zuul-output/logs/docker"
|
path: "{{ ansible_user_dir }}/zuul-output/logs/docker"
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
|
|
||||||
- name: Save registry container logs
|
- name: Save registry container logs
|
||||||
when: "'buildset_registry' in docker_ps.stdout"
|
when: "'buildset_registry' in docker_ps.stdout"
|
||||||
@ -26,4 +26,4 @@
|
|||||||
- name: Trigger failure if required
|
- name: Trigger failure if required
|
||||||
fail:
|
fail:
|
||||||
msg: 'Triggering failure for debugging'
|
msg: 'Triggering failure for debugging'
|
||||||
when: buildset_registry_debug_fail|default(false)|bool
|
when: buildset_registry_debug_fail | default(false) | bool
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
file:
|
file:
|
||||||
path: "{{ zuul.executor.work_root }}/docs"
|
path: "{{ zuul.executor.work_root }}/docs"
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
- name: Extract docs archive
|
- name: Extract docs archive
|
||||||
# TODO(clarkb) what is the proper way to set mode on this task?
|
# TODO(clarkb) what is the proper way to set mode on this task?
|
||||||
vars:
|
vars:
|
||||||
@ -70,7 +70,7 @@
|
|||||||
file:
|
file:
|
||||||
path: "{{ target_dir }}"
|
path: "{{ target_dir }}"
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
- name: Set redirect target directory
|
- name: Set redirect target directory
|
||||||
when: "target_dict.redirect is defined"
|
when: "target_dict.redirect is defined"
|
||||||
set_fact:
|
set_fact:
|
||||||
@ -84,7 +84,7 @@
|
|||||||
copy:
|
copy:
|
||||||
dest: "{{ redirect_target_dir }}"
|
dest: "{{ redirect_target_dir }}"
|
||||||
content: "{{ redirect_content }}"
|
content: "{{ redirect_content }}"
|
||||||
mode: 0644
|
mode: "0644"
|
||||||
- name: Upload to AFS
|
- name: Upload to AFS
|
||||||
include_role:
|
include_role:
|
||||||
name: upload-afs-roots
|
name: upload-afs-roots
|
||||||
|
@ -21,5 +21,4 @@
|
|||||||
- name: Add bridge.o.o hostkey to known hosts
|
- name: Add bridge.o.o hostkey to known hosts
|
||||||
known_hosts:
|
known_hosts:
|
||||||
name: bridge01.opendev.org
|
name: bridge01.opendev.org
|
||||||
key: "bridge01.opendev.org ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC2zgQQ0lpnjtST1oINVPo9jTDI0W3IJA+ZSUTsOo6gGzz6M8PN+jyxQ3EQy8H/xPjm2C55yGfaLNzj557P5arI0TkdeNHt4hzRcmpsNUVE4fOtzMblThRSA1ipfhd/DqMUKz1Ofie3hojnhE1ecB86IcdbF9rfJxl0DOuoSQfClJw3kDx5nK+0Ps5lVnSBZ+NUKbnUFizWVjKz6qIe3tZpuHAvuD/S8tM/gJ+3fC7LcssGb+njo5ghhSUl8wasGBXZQuby33mtuX+UBON+h95odanZs3iGMZScPxgchGb4xB3OTyYn0dFG3mnwPuUnrEKluJ/eFXCkM+Q35DMCa+mynco0stt136e2qTrX1jhtcaDerufb7hs2/7zM/q4zbRYKalUhnh0CZshQ3Y1AuwI3ssmwczQpwgTJnceBmmh5xYPDVCGPpAamTPKhl4VSqlfm2Nc56+dcUm0Y6jiQjBhLIbWevq6RWse6K4R39ovPlTN3z037oJxQHsIETrXxHp0="
|
key: "bridge01.opendev.org ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC2zgQQ0lpnjtST1oINVPo9jTDI0W3IJA+ZSUTsOo6gGzz6M8PN+jyxQ3EQy8H/xPjm2C55yGfaLNzj557P5arI0TkdeNHt4hzRcmpsNUVE4fOtzMblThRSA1ipfhd/DqMUKz1Ofie3hojnhE1ecB86IcdbF9rfJxl0DOuoSQfClJw3kDx5nK+0Ps5lVnSBZ+NUKbnUFizWVjKz6qIe3tZpuHAvuD/S8tM/gJ+3fC7LcssGb+njo5ghhSUl8wasGBXZQuby33mtuX+UBON+h95odanZs3iGMZScPxgchGb4xB3OTyYn0dFG3mnwPuUnrEKluJ/eFXCkM+Q35DMCa+mynco0stt136e2qTrX1jhtcaDerufb7hs2/7zM/q4zbRYKalUhnh0CZshQ3Y1AuwI3ssmwczQpwgTJnceBmmh5xYPDVCGPpAamTPKhl4VSqlfm2Nc56+dcUm0Y6jiQjBhLIbWevq6RWse6K4R39ovPlTN3z037oJxQHsIETrXxHp0=" # noqa: yaml[line-length]
|
||||||
|
|
||||||
|
@ -32,16 +32,16 @@
|
|||||||
# to master.
|
# to master.
|
||||||
- name: Should we run from master
|
- name: Should we run from master
|
||||||
set_fact:
|
set_fact:
|
||||||
infra_prod_run_from_master: "{{ zuul.pipeline|default('') in ['periodic', 'opendev-prod-hourly'] }}"
|
infra_prod_run_from_master: "{{ zuul.pipeline | default('') in ['periodic', 'opendev-prod-hourly'] }}"
|
||||||
|
|
||||||
- name: Reset checkouts to master for periodic jobs
|
- name: Reset checkouts to master for periodic jobs
|
||||||
when: infra_prod_run_from_master|bool
|
when: infra_prod_run_from_master | bool
|
||||||
block:
|
block:
|
||||||
- name: Update system-config from master
|
- name: Update system-config from master
|
||||||
git:
|
git:
|
||||||
repo: 'https://opendev.org/opendev/system-config'
|
repo: 'https://opendev.org/opendev/system-config'
|
||||||
dest: '/home/zuul/src/opendev.org/opendev/system-config'
|
dest: '/home/zuul/src/opendev.org/opendev/system-config'
|
||||||
force: yes
|
force: true
|
||||||
version: 'master'
|
version: 'master'
|
||||||
|
|
||||||
- name: Update project-config from master
|
- name: Update project-config from master
|
||||||
@ -49,5 +49,5 @@
|
|||||||
git:
|
git:
|
||||||
repo: 'https://opendev.org/openstack/project-config'
|
repo: 'https://opendev.org/openstack/project-config'
|
||||||
dest: '/home/zuul/src/opendev.org/openstack/project-config'
|
dest: '/home/zuul/src/opendev.org/openstack/project-config'
|
||||||
force: yes
|
force: true
|
||||||
version: 'master'
|
version: 'master'
|
||||||
|
@ -4,7 +4,8 @@
|
|||||||
when: "zuul.tag is not defined"
|
when: "zuul.tag is not defined"
|
||||||
fail:
|
fail:
|
||||||
msg: "This playbook must be run in a tag-based pipeline (e.g., 'release')."
|
msg: "This playbook must be run in a tag-based pipeline (e.g., 'release')."
|
||||||
- include_role:
|
- name: Write root marker
|
||||||
|
include_role:
|
||||||
name: write-root-marker
|
name: write-root-marker
|
||||||
vars:
|
vars:
|
||||||
root_marker_dir: "{{ zuul.executor.log_root }}/docs"
|
root_marker_dir: "{{ zuul.executor.log_root }}/docs"
|
||||||
@ -25,7 +26,7 @@
|
|||||||
file:
|
file:
|
||||||
path: "{{ target_dir }}"
|
path: "{{ target_dir }}"
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
- name: Upload to AFS
|
- name: Upload to AFS
|
||||||
include_role:
|
include_role:
|
||||||
name: upload-afs-roots
|
name: upload-afs-roots
|
||||||
|
@ -4,7 +4,8 @@
|
|||||||
when: "zuul.tag is not defined"
|
when: "zuul.tag is not defined"
|
||||||
fail:
|
fail:
|
||||||
msg: "This playbook must be run in a tag-based pipeline (e.g., 'release')."
|
msg: "This playbook must be run in a tag-based pipeline (e.g., 'release')."
|
||||||
- include_role:
|
- name: Write root marker
|
||||||
|
include_role:
|
||||||
name: write-root-marker
|
name: write-root-marker
|
||||||
vars:
|
vars:
|
||||||
root_marker_dir: "{{ zuul.executor.log_root }}/docs"
|
root_marker_dir: "{{ zuul.executor.log_root }}/docs"
|
||||||
@ -25,7 +26,7 @@
|
|||||||
file:
|
file:
|
||||||
path: "{{ target_dir }}"
|
path: "{{ target_dir }}"
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
- name: Upload to AFS
|
- name: Upload to AFS
|
||||||
include_role:
|
include_role:
|
||||||
name: upload-afs-roots
|
name: upload-afs-roots
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
- hosts: localhost
|
- hosts: localhost
|
||||||
roles:
|
roles:
|
||||||
- name: upload-git-mirror
|
- role: upload-git-mirror
|
||||||
git_mirror_repository: "{{ git_mirror_credentials.target_repository.format(zuul=zuul) }}"
|
vars:
|
||||||
|
git_mirror_repository: "{{ git_mirror_credentials.target_repository.format(zuul=zuul) }}"
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
- name: Restart unbound
|
- name: Restart unbound
|
||||||
become: yes
|
become: true
|
||||||
service:
|
service:
|
||||||
name: unbound
|
name: unbound
|
||||||
state: restarted
|
state: restarted
|
||||||
|
@ -19,7 +19,7 @@
|
|||||||
- hostvars[inventory_hostname]['ansible_default_ipv6'] is defined
|
- hostvars[inventory_hostname]['ansible_default_ipv6'] is defined
|
||||||
- hostvars[inventory_hostname]['ansible_default_ipv6']['address'] is defined
|
- hostvars[inventory_hostname]['ansible_default_ipv6']['address'] is defined
|
||||||
set_fact:
|
set_fact:
|
||||||
unbound_use_ipv6: True
|
unbound_use_ipv6: true
|
||||||
|
|
||||||
# Use *only* ipv6 resolvers if ipv6 is present and routable. This
|
# Use *only* ipv6 resolvers if ipv6 is present and routable. This
|
||||||
# avoids traversing potential NAT when using ipv4 which can be
|
# avoids traversing potential NAT when using ipv4 which can be
|
||||||
@ -48,42 +48,42 @@
|
|||||||
- "default.yaml"
|
- "default.yaml"
|
||||||
|
|
||||||
- name: Ensure Unbound conf.d directory exists
|
- name: Ensure Unbound conf.d directory exists
|
||||||
become: yes
|
become: true
|
||||||
file:
|
file:
|
||||||
path: "{{ unbound_confd }}"
|
path: "{{ unbound_confd }}"
|
||||||
state: directory
|
state: directory
|
||||||
owner: root
|
owner: root
|
||||||
group: root
|
group: root
|
||||||
mode: 0755
|
mode: "0755"
|
||||||
|
|
||||||
# TODO: Move this to /etc/unbound/conf.d ?
|
# TODO: Move this to /etc/unbound/conf.d ?
|
||||||
- name: Configure unbound forwarding
|
- name: Configure unbound forwarding
|
||||||
become: yes
|
become: true
|
||||||
template:
|
template:
|
||||||
dest: /etc/unbound/forwarding.conf
|
dest: /etc/unbound/forwarding.conf
|
||||||
owner: root
|
owner: root
|
||||||
group: root
|
group: root
|
||||||
mode: 0644
|
mode: "0644"
|
||||||
src: forwarding.conf.j2
|
src: forwarding.conf.j2
|
||||||
register: forwarding_config
|
register: forwarding_config
|
||||||
notify:
|
notify:
|
||||||
- Restart unbound
|
- Restart unbound
|
||||||
|
|
||||||
- name: Configure unbound TTL
|
- name: Configure unbound TTL
|
||||||
become: yes
|
become: true
|
||||||
template:
|
template:
|
||||||
dest: "{{ unbound_confd }}/ttl.conf"
|
dest: "{{ unbound_confd }}/ttl.conf"
|
||||||
owner: root
|
owner: root
|
||||||
group: root
|
group: root
|
||||||
mode: 0644
|
mode: "0644"
|
||||||
src: ttl.conf.j2
|
src: ttl.conf.j2
|
||||||
register: ttl_config
|
register: ttl_config
|
||||||
notify:
|
notify:
|
||||||
- Restart unbound
|
- Restart unbound
|
||||||
|
|
||||||
- name: Start unbound
|
- name: Start unbound
|
||||||
become: yes
|
become: true
|
||||||
service:
|
service:
|
||||||
name: unbound
|
name: unbound
|
||||||
state: started
|
state: started
|
||||||
enabled: yes
|
enabled: true
|
||||||
|
@ -1,17 +1,17 @@
|
|||||||
- name: Create /etc/ci
|
- name: Create /etc/ci
|
||||||
become: yes
|
become: true
|
||||||
file:
|
file:
|
||||||
path: /etc/ci
|
path: /etc/ci
|
||||||
state: directory
|
state: directory
|
||||||
owner: root
|
owner: root
|
||||||
group: root
|
group: root
|
||||||
mode: 0755
|
mode: '0755'
|
||||||
|
|
||||||
- name: Install ci_mirror script
|
- name: Install ci_mirror script
|
||||||
become: yes
|
become: true
|
||||||
template:
|
template:
|
||||||
dest: '/etc/ci/mirror_info.sh'
|
dest: '/etc/ci/mirror_info.sh'
|
||||||
owner: root
|
owner: root
|
||||||
group: root
|
group: root
|
||||||
mode: 0644
|
mode: '0644'
|
||||||
src: mirror_info.sh.j2
|
src: mirror_info.sh.j2
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
file:
|
file:
|
||||||
path: '{{ virtualenv_config_file | dirname }}'
|
path: '{{ virtualenv_config_file | dirname }}'
|
||||||
state: directory
|
state: directory
|
||||||
mode: 0755
|
mode: '0755'
|
||||||
|
|
||||||
# NOTE(ianw) : 2020-03-27 workaround 46.1.1 broken setuptools
|
# NOTE(ianw) : 2020-03-27 workaround 46.1.1 broken setuptools
|
||||||
# https://github.com/pypa/virtualenv/issues/1752
|
# https://github.com/pypa/virtualenv/issues/1752
|
||||||
|
@ -3,10 +3,10 @@
|
|||||||
copy:
|
copy:
|
||||||
dest: "{{ root_marker_dir }}/.root-marker"
|
dest: "{{ root_marker_dir }}/.root-marker"
|
||||||
content: "Project: {{ zuul.project.name }} Branch: {{ zuul.branch }} Build: {{ zuul.build }} Revision: {{ zuul.ref }}"
|
content: "Project: {{ zuul.project.name }} Branch: {{ zuul.branch }} Build: {{ zuul.build }} Revision: {{ zuul.ref }}"
|
||||||
mode: 0644
|
mode: "0644"
|
||||||
- name: Write root marker if zuul.tag
|
- name: Write root marker if zuul.tag
|
||||||
when: "zuul.tag is defined"
|
when: "zuul.tag is defined"
|
||||||
copy:
|
copy:
|
||||||
dest: "{{ root_marker_dir }}/.root-marker"
|
dest: "{{ root_marker_dir }}/.root-marker"
|
||||||
content: "Project: {{ zuul.project.name }} Tag: {{ zuul.tag }} Build: {{ zuul.build }} Revision: {{ zuul.ref }}"
|
content: "Project: {{ zuul.project.name }} Tag: {{ zuul.tag }} Build: {{ zuul.build }} Revision: {{ zuul.ref }}"
|
||||||
mode: 0644
|
mode: "0644"
|
||||||
|
@ -2,8 +2,6 @@
|
|||||||
# of appearance. Changing the order has an impact on the overall integration
|
# of appearance. Changing the order has an impact on the overall integration
|
||||||
# process, which may cause wedges in the gate later.
|
# process, which may cause wedges in the gate later.
|
||||||
flake8
|
flake8
|
||||||
zuul
|
|
||||||
|
|
||||||
# We need to pin the ansible version directly here; per the
|
# We need to pin the ansible version directly here; per the
|
||||||
# deprecation policy it should trail the version used by Zuul by 4
|
# deprecation policy it should trail the version used by Zuul by 4
|
||||||
# weeks to give people time to update before these roles start
|
# weeks to give people time to update before these roles start
|
||||||
@ -11,9 +9,8 @@ zuul
|
|||||||
# here to pull in ansible anyway; pip doesn't actually have a
|
# here to pull in ansible anyway; pip doesn't actually have a
|
||||||
# dependency solver and the uncapped ansible requirement from
|
# dependency solver and the uncapped ansible requirement from
|
||||||
# ansible-lint pull in the latest version.
|
# ansible-lint pull in the latest version.
|
||||||
ansible>=2.9,<2.10 # <-- keep it as old as possible
|
ansible>=8,<9
|
||||||
# We need to pin ansible-lint to before 4.0 which blows up all over the place
|
ansible-lint<25.0.0
|
||||||
ansible-lint>=5.0.0,<6
|
|
||||||
bashate>=0.2
|
bashate>=0.2
|
||||||
zuul-sphinx>=0.1.1
|
zuul-sphinx>=0.1.1
|
||||||
stestr>=1.0.0 # Apache-2.0
|
stestr>=1.0.0 # Apache-2.0
|
||||||
|
6
tox.ini
6
tox.ini
@ -19,8 +19,6 @@ commands =
|
|||||||
|
|
||||||
[testenv:linters]
|
[testenv:linters]
|
||||||
setenv =
|
setenv =
|
||||||
ANSIBLE_LIBRARY= {envsitepackagesdir}/zuul/ansible/base/library
|
|
||||||
ANSIBLE_ACTION_PLUGINS = {envsitepackagesdir}/zuul/ansible/base/action
|
|
||||||
# NOTE(pabelanger): if you'd like to run tox -elinters locally,
|
# NOTE(pabelanger): if you'd like to run tox -elinters locally,
|
||||||
# you'll need to export ANSIBLE_ROLES_PATH pointing to the required
|
# you'll need to export ANSIBLE_ROLES_PATH pointing to the required
|
||||||
# repos.
|
# repos.
|
||||||
@ -40,10 +38,6 @@ commands =
|
|||||||
{toxinidir}/tools/check_jobs_documented.py
|
{toxinidir}/tools/check_jobs_documented.py
|
||||||
# Ansible lint
|
# Ansible lint
|
||||||
ansible-lint -v
|
ansible-lint -v
|
||||||
# Ansible Syntax Check
|
|
||||||
bash -c "find playbooks -type f -regex '.*.ya?ml' -exec \
|
|
||||||
ansible-playbook --syntax-check -i {toxinidir}/tests/inventory \
|
|
||||||
\{\} + > /dev/null"
|
|
||||||
|
|
||||||
[testenv:venv]
|
[testenv:venv]
|
||||||
commands = {posargs}
|
commands = {posargs}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user