mirror of
https://pagure.io/fedora-infra/ansible.git
synced 2026-06-27 23:57:02 +08:00
Fix ansible-linter issues
Signed-off-by: Diego Herrera <dherrera@redhat.com>
This commit is contained in:
@@ -38,14 +38,14 @@
|
||||
# Define variables
|
||||
checkout_path: "/srv/git/rpms"
|
||||
|
||||
BLOCKED_PACKAGES:
|
||||
blocked_packages:
|
||||
- asahi-installer
|
||||
- asahi-scripts
|
||||
- m1n1
|
||||
|
||||
tasks:
|
||||
- name: Check for input errors
|
||||
assert:
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- 'release is defined'
|
||||
- 'branch_from is defined'
|
||||
@@ -54,14 +54,14 @@
|
||||
fail_msg: The release value is not a valid version.
|
||||
|
||||
- name: Get all package names from the rpms directory
|
||||
find:
|
||||
ansible.builtin.find:
|
||||
paths: "{{ checkout_path }}"
|
||||
file_type: directory
|
||||
patterns: '*.git'
|
||||
register: found_packages
|
||||
|
||||
- name: List package names
|
||||
set_fact:
|
||||
ansible.builtin.set_fact:
|
||||
package_list: "{{
|
||||
found_packages['files'] |
|
||||
map(attribute='path') |
|
||||
@@ -70,11 +70,16 @@
|
||||
list }}"
|
||||
|
||||
- name: Remove blocked packages
|
||||
set_fact:
|
||||
package_list_blocked: '{{ package_list | difference(BLOCKED_PACKAGES) | list }}'
|
||||
ansible.builtin.set_fact:
|
||||
package_list_blocked: '{{ package_list | difference(blocked_packages) | list }}'
|
||||
|
||||
- name: Filtering packages that do not have a {{ branch_from }} .spec file...
|
||||
shell: "git -C \"{{ checkout_path }}/{{ item }}.git\" ls-tree -r {{ branch_from }} --name-only | grep -qE \"^{{ item }}\\.spec$\""
|
||||
# ansible git module can't list files of a target
|
||||
- name: Filtering packages that do not have a .spec file. # noqa: command-instead-of-module
|
||||
ansible.builtin.shell:
|
||||
cmd: |
|
||||
set -o pipefail
|
||||
git -C "{{ checkout_path }}/{{ item }}.git" ls-tree -r {{ branch_from }} --name-only | grep -qE "^{{ item }}\\.spec$"
|
||||
executable: /bin/bash
|
||||
loop: "{{ package_list_blocked }}"
|
||||
check_mode: false
|
||||
changed_when: false
|
||||
@@ -84,7 +89,7 @@
|
||||
register: existing_branch_query
|
||||
|
||||
- name: Get filtered packages
|
||||
set_fact:
|
||||
ansible.builtin.set_fact:
|
||||
package_list_filtered: "{{
|
||||
existing_branch_query.results |
|
||||
selectattr('rc', 'equalto', 0) |
|
||||
@@ -92,7 +97,7 @@
|
||||
list }}"
|
||||
|
||||
- name: Fetch retired packages from Fedora JSON source
|
||||
uri:
|
||||
ansible.builtin.uri:
|
||||
url: https://src.fedoraproject.org/lookaside/retired_in_{{ branch_from }}.json
|
||||
return_content: true
|
||||
register: retired_query
|
||||
@@ -100,14 +105,14 @@
|
||||
failed_when: retired_query is failed
|
||||
|
||||
- name: Remove retired packages from the full package list to get active packages
|
||||
set_fact:
|
||||
ansible.builtin.set_fact:
|
||||
package_list_final: "{{
|
||||
package_list_filtered |
|
||||
difference(retired_query.json |
|
||||
community.general.json_query(branch_from + '[]')) }}"
|
||||
|
||||
- name: Show package information
|
||||
debug:
|
||||
ansible.builtin.debug:
|
||||
msg:
|
||||
- "This process will create epel{{ release }} branches on projects that have the {{ branch_from }} branch."
|
||||
- "{{ (package_list_final | length) }} out of the {{ (package_list | length) }} available packages will be branched."
|
||||
@@ -115,10 +120,12 @@
|
||||
- "- {{ (package_list_blocked | length) - (package_list_filtered | length) }} where filtered because they don't have an active {{ branch_from }} branch."
|
||||
- "- {{ (package_list_filtered | length) - (package_list_final | length) }} where retired from {{ branch_from }}."
|
||||
|
||||
- pause: prompt="This will start the branching process. Hit enter to confirm!"
|
||||
- name: Prompt for confirmation
|
||||
ansible.builtin.pause:
|
||||
prompt: This will start the branching process. Hit enter to confirm!
|
||||
|
||||
- name: Create new epel{{release}} branch starting from the {{ branch_from }} branch on the repo stored in the {{ checkout_path }} path
|
||||
shell: |
|
||||
- name: Create new epel branch for the new release
|
||||
ansible.builtin.shell: |
|
||||
if [ "$( git -C '{{ checkout_path }}/{{ item }}.git' rev-parse --verify epel{{ release }} 2> /dev/null)" != "$( git -C '{{ checkout_path }}/{{ item }}.git' rev-parse --verify {{ branch_from }} 2> /dev/null)" ]
|
||||
then
|
||||
git -C '{{ checkout_path }}/{{ item }}.git' branch epel{{ release }} {{ branch_from }}
|
||||
|
||||
@@ -26,12 +26,9 @@
|
||||
old_release: "{{ release_major }}.{{ old_release_minor }}"
|
||||
primary_arches: "x86_64 aarch64 ppc64le s390x"
|
||||
|
||||
collections:
|
||||
- ktdreyer.koji_ansible
|
||||
|
||||
tasks:
|
||||
- name: Check for input errors
|
||||
assert:
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- 'release is defined'
|
||||
- 'release_major|int|string == release_major'
|
||||
@@ -39,8 +36,8 @@
|
||||
- 'release_minor|int > 0'
|
||||
fail_msg: The release value is not a valid version.
|
||||
|
||||
- name: Create external repos for EPEL{{ release }}
|
||||
koji_external_repo:
|
||||
- name: Create external repos for EPEL minor release
|
||||
ktdreyer.koji_ansible.koji_external_repo:
|
||||
koji: "{{ koji_profile }}"
|
||||
name: "{{ item.name }}"
|
||||
url: "{{ item.url }}"
|
||||
@@ -50,8 +47,8 @@
|
||||
- {'name': 'el{{ release }}-appstream', 'url': 'https://infrastructure.fedoraproject.org/repo/centos/centos-10/AppStream/$arch/os/'}
|
||||
- {'name': 'el{{ release }}-crb', 'url': 'https://infrastructure.fedoraproject.org/repo/centos/centos-10/CRB/$arch/os/'}
|
||||
|
||||
- name: Add main tag for EPEL{{ release }}
|
||||
koji_tag:
|
||||
- name: Add main tag for EPEL minor release
|
||||
ktdreyer.koji_ansible.koji_tag:
|
||||
koji: "{{ koji_profile }}"
|
||||
name: "epel{{ release }}-base"
|
||||
arches: "{{ primary_arches }}"
|
||||
@@ -64,8 +61,8 @@
|
||||
- repo: "el{{ release }}-crb"
|
||||
priority: 30
|
||||
|
||||
- name: Fix old external repos for EPEL{{ old_release }}
|
||||
koji_external_repo:
|
||||
- name: Fix external repos for EPEL old release
|
||||
ktdreyer.koji_ansible.koji_external_repo:
|
||||
koji: "{{ koji_profile }}"
|
||||
name: "{{ item.name }}"
|
||||
url: "{{ item.url }}"
|
||||
@@ -75,11 +72,12 @@
|
||||
- {'name': 'el{{ old_release }}-appstream', 'url': 'https://infrastructure.fedoraproject.org/repo/centos/centos-10-snapshot/AppStream/$arch/os/'}
|
||||
- {'name': 'el{{ old_release }}-crb', 'url': 'https://infrastructure.fedoraproject.org/repo/centos/centos-10-snapshot/CRB/$arch/os/'}
|
||||
|
||||
- name: Clone epel{{ old_release }} tag into epel{{ release }}
|
||||
ansible.builtin.command: "koji --profile {{ koji_profile }} clone-tag --all --latest-only epel{{ old_release }} epel{{ release }}"
|
||||
- name: Clone EPEL old release tag into the new release
|
||||
ansible.builtin.command: koji --profile {{ koji_profile }} clone-tag --all --latest-only epel{{ old_release }} epel{{ release }}
|
||||
changed_when: true
|
||||
|
||||
- name: Create other release tags
|
||||
koji_tag:
|
||||
ktdreyer.koji_ansible.koji_tag:
|
||||
koji: "{{ koji_profile }}"
|
||||
name: "{{ item.name }}"
|
||||
state: present
|
||||
@@ -95,7 +93,7 @@
|
||||
- {name: "epel{{ release }}-openh264", parent: "epel{{ release }}"}
|
||||
|
||||
- name: Create override tags
|
||||
koji_tag:
|
||||
ktdreyer.koji_ansible.koji_tag:
|
||||
koji: "{{ koji_profile }}"
|
||||
name: "epel{{ release }}-override"
|
||||
state: present
|
||||
@@ -105,7 +103,7 @@
|
||||
perm: "epel-override"
|
||||
|
||||
- name: Create build tag
|
||||
koji_tag:
|
||||
ktdreyer.koji_ansible.koji_tag:
|
||||
koji: "{{ koji_profile }}"
|
||||
name: "epel{{ release }}-build"
|
||||
arches: "{{ primary_arches }}"
|
||||
@@ -155,15 +153,16 @@
|
||||
- which
|
||||
- xz
|
||||
|
||||
- name: Clone epel{{ old_release }} tag into epel{{ release }}
|
||||
- name: Regenerate EPEL repository
|
||||
ansible.builtin.command: "koji --profile {{ koji_profile }} regen-repo epel{{ release }}-build"
|
||||
changed_when: true
|
||||
|
||||
- name: Create targets
|
||||
koji_target:
|
||||
ktdreyer.koji_ansible.koji_target:
|
||||
koji: "{{ koji_profile }}"
|
||||
name: "{{ item.name }}"
|
||||
build_tag: "{{ item.build_tag }}"
|
||||
dest_tag: "{{ item.dest_tag }}"
|
||||
loop:
|
||||
- {name: "epel{{ release }}", build_tag: "epel{{ release }}-build", dest_tag: "epel{{ release}}-testing-candidate" }
|
||||
- {name: "epel{{ release }}", build_tag: "epel{{ release }}-build", dest_tag: "epel{{ release }}-testing-candidate" }
|
||||
- {name: "epel{{ release }}-candidate", build_tag: "epel{{ release }}-build", dest_tag: "epel{{ release }}-testing-candidate" }
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
tasks:
|
||||
- name: Check for input errors
|
||||
assert:
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- 'release is defined'
|
||||
- 'release_major|int|string == release_major'
|
||||
@@ -35,13 +35,13 @@
|
||||
block:
|
||||
- name: Symlink empty repo
|
||||
become: yes
|
||||
file:
|
||||
ansible.builtin.file:
|
||||
src: "/mnt/koji/compose/updates/empty-repo/"
|
||||
dest: "/mnt/koji/compose/updates/epel{{ release }}"
|
||||
state: link
|
||||
- name: Symlink empty repo
|
||||
become: yes
|
||||
file:
|
||||
ansible.builtin.file:
|
||||
src: "/mnt/koji/compose/updates/empty-repo/"
|
||||
dest: "/mnt/koji/compose/updates/epel{{ release }}-testing"
|
||||
state: link
|
||||
@@ -51,7 +51,7 @@
|
||||
- name: Create directories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
file:
|
||||
ansible.builtin.file:
|
||||
path: "/pub/epel/{{ release }}/Everything/{{ item[0] }}/{{ item[1] }}"
|
||||
state: directory
|
||||
mode: '0755'
|
||||
@@ -59,21 +59,22 @@
|
||||
group: ftpsync
|
||||
loop: "{{
|
||||
['aarch64', 'ppc64le', 's390x', 'x86_64'] |
|
||||
product(['Packages','debug','drpms']) |
|
||||
product(['Packages', 'debug', 'drpms']) |
|
||||
list }}"
|
||||
|
||||
- name: Create repositories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
command: createrepo_c "{{ item }}"
|
||||
ansible.builtin.command: createrepo_c "{{ item }}"
|
||||
loop: "{{ lookup('pipe', 'find /pub/epel/{{ release }}/Everything/ -type d -mindepth 1 -maxdepth 1') | split }}"
|
||||
changed_when: true
|
||||
|
||||
- name: Create repos for source packages
|
||||
block:
|
||||
- name: Create directories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
file:
|
||||
ansible.builtin.file:
|
||||
path: "/pub/epel/{{ release }}/Everything/source/tree/Packages"
|
||||
state: directory
|
||||
mode: '0755'
|
||||
@@ -83,14 +84,15 @@
|
||||
- name: Create repositories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
command: createrepo_c "/pub/epel/{{ release }}/Everything/source/tree"
|
||||
ansible.builtin.command: createrepo_c "/pub/epel/{{ release }}/Everything/source/tree"
|
||||
changed_when: true
|
||||
|
||||
- name: Create repos for debug packages
|
||||
block:
|
||||
- name: Create directories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
file:
|
||||
ansible.builtin.file:
|
||||
path: "{{ item }}/Packages"
|
||||
state: directory
|
||||
mode: '0755'
|
||||
@@ -101,8 +103,9 @@
|
||||
- name: Create repositories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
command: createrepo_c "{{ item }}"
|
||||
ansible.builtin.command: createrepo_c "{{ item }}"
|
||||
loop: "{{ lookup('pipe', 'find /pub/epel/{{ release }}/Everything/*/debug/ -type d -mindepth 1 -maxdepth 1') | split }}"
|
||||
changed_when: true
|
||||
|
||||
# Testing repos
|
||||
|
||||
@@ -111,7 +114,7 @@
|
||||
- name: Create directories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
file:
|
||||
ansible.builtin.file:
|
||||
path: "/pub/epel/testing/{{ release }}/Everything/{{ item[0] }}/{{ item[1] }}"
|
||||
state: directory
|
||||
mode: '0755'
|
||||
@@ -119,21 +122,22 @@
|
||||
group: ftpsync
|
||||
loop: "{{
|
||||
['aarch64', 'ppc64le', 's390x', 'x86_64'] |
|
||||
product(['Packages','debug','drpms']) |
|
||||
product(['Packages', 'debug', 'drpms']) |
|
||||
list }}"
|
||||
|
||||
- name: Create repositories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
command: createrepo_c "{{ item }}"
|
||||
ansible.builtin.command: createrepo_c "{{ item }}"
|
||||
loop: "{{ lookup('pipe', 'find /pub/epel/testing/{{ release }}/Everything/ -type d -mindepth 1 -maxdepth 1') | split }}"
|
||||
changed_when: true
|
||||
|
||||
- name: Create testing repos for source packages
|
||||
block:
|
||||
- name: Create directories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
file:
|
||||
ansible.builtin.file:
|
||||
path: "/pub/epel/testing/{{ release }}/Everything/source/tree/Packages"
|
||||
state: directory
|
||||
mode: '0755'
|
||||
@@ -143,14 +147,15 @@
|
||||
- name: Create repositories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
command: createrepo_c "/pub/epel/testing/{{ release }}/Everything/source/tree"
|
||||
ansible.builtin.command: createrepo_c "/pub/epel/testing/{{ release }}/Everything/source/tree"
|
||||
changed_when: true
|
||||
|
||||
- name: Create testing repos for debug packages
|
||||
block:
|
||||
- name: Create directories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
file:
|
||||
ansible.builtin.file:
|
||||
path: "{{ item }}/Packages"
|
||||
state: directory
|
||||
mode: '0755'
|
||||
@@ -161,5 +166,6 @@
|
||||
- name: Create repositories
|
||||
become: yes
|
||||
become_user: ftpsync
|
||||
command: createrepo_c "{{ item }}"
|
||||
ansible.builtin.command: createrepo_c "{{ item }}"
|
||||
loop: "{{ lookup('pipe', 'find /pub/epel/testing/{{ release }}/Everything/*/debug/ -type d -mindepth 1 -maxdepth 1') | split }}"
|
||||
changed_when: true
|
||||
|
||||
Reference in New Issue
Block a user