refactor(ansible): Estandariza nombres de roles y actualiza Koji
Se estandarizan los nombres de los directorios de roles, cambiando guiones por guiones bajos. Se añaden nuevos scripts para limpieza y callbacks en Koji Hub. Además, se actualizan las configuraciones de Kojid, Kojira y PostgreSQL, incluyendo la instalación de paquetes, ajustes de mock y la gestión de variables.
This commit is contained in:
parent
08c38d3d56
commit
39aeb2d6b6
91 changed files with 1037 additions and 957 deletions
125
roles/koji_bootstrap/tasks/main.yaml
Normal file
125
roles/koji_bootstrap/tasks/main.yaml
Normal file
|
|
@ -0,0 +1,125 @@
|
|||
---
|
||||
- name: Add kojira user
|
||||
ansible.builtin.command: "sudo -u {{ koji_admin_user }} koji --config={{ koji_hub_admin_user_koji_dir }}/config add-user kojira"
|
||||
register: koji_bootstrap_add_user_result
|
||||
changed_when: "'User added' in koji_bootstrap_add_user_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_user_result.rc != 0 and 'already exists' not in koji_bootstrap_add_user_result.stderr"
|
||||
|
||||
- name: Grant repo permission to kojira user
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
grant-permission repo kojira
|
||||
register: koji_bootstrap_grant_permission_result
|
||||
changed_when: "'Permission granted' in koji_bootstrap_grant_permission_result.stdout"
|
||||
failed_when: "koji_bootstrap_grant_permission_result.rc != 0 and 'already has permission' not in koji_bootstrap_grant_permission_result.stderr"
|
||||
|
||||
- name: Create main build tag
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
add-tag --arches x86_64 {{ koji_build_tag }}
|
||||
register: koji_bootstrap_add_tag_result
|
||||
changed_when: "'Tag created' in koji_bootstrap_add_tag_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_tag_result.rc != 0 and 'already exists' not in koji_bootstrap_add_tag_result.stderr"
|
||||
|
||||
- name: Create x86_64 build tag
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
add-tag --parent {{ koji_build_tag }} --arches x86_64 {{ koji_build_tag }}-build
|
||||
register: koji_bootstrap_add_arch_tag_result
|
||||
changed_when: "'Tag created' in koji_bootstrap_add_arch_tag_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_arch_tag_result.rc != 0 and 'already exists' not in koji_bootstrap_add_arch_tag_result.stderr"
|
||||
|
||||
- name: Enable automatic build NVR bumping
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
edit-tag --extra autorelease=1 {{ koji_build_tag }}-build
|
||||
register: koji_bootstrap_edit_tag_result
|
||||
changed_when: "'Tag updated' in koji_bootstrap_edit_tag_result.stdout"
|
||||
failed_when: "koji_bootstrap_edit_tag_result.rc != 0 and 'tag not found' not in koji_bootstrap_edit_tag_result.stderr"
|
||||
|
||||
- name: Create build target
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
add-target {{ koji_build_tag }} {{ koji_build_tag }}-build
|
||||
register: koji_bootstrap_add_target_result
|
||||
changed_when: "'Target created' in koji_bootstrap_add_target_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_target_result.rc != 0 and 'already exists' not in koji_bootstrap_add_target_result.stderr"
|
||||
|
||||
- name: Add CentOS Stream 10 BaseOS external repository
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
add-external-repo -t {{ koji_build_tag }}-build centos-stream-10-baseos
|
||||
https://mirror.stream.centos.org/10-stream/BaseOS/x86_64/os/
|
||||
register: koji_bootstrap_add_baseos_repo_result
|
||||
changed_when: "'External repository created' in koji_bootstrap_add_baseos_repo_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_baseos_repo_result.rc != 0 and 'already exists' not in koji_bootstrap_add_baseos_repo_result.stderr"
|
||||
|
||||
- name: Add CentOS Stream 10 AppStream external repository
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
add-external-repo -t {{ koji_build_tag }}-build centos-stream-10-appstream
|
||||
https://mirror.stream.centos.org/10-stream/AppStream/x86_64/os/
|
||||
register: koji_bootstrap_add_appstream_repo_result
|
||||
changed_when: "'External repository created' in koji_bootstrap_add_appstream_repo_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_appstream_repo_result.rc != 0 and 'already exists' not in koji_bootstrap_add_appstream_repo_result.stderr"
|
||||
|
||||
- name: Add CentOS Stream 10 EPEL external repository
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
add-external-repo -t {{ koji_build_tag }}-build centos-stream-10-epel
|
||||
https://mirror.facebook.net/fedora/epel/10/Everything/x86_64/
|
||||
register: koji_bootstrap_add_appstream_repo_result
|
||||
changed_when: "'External repository created' in koji_bootstrap_add_appstream_repo_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_appstream_repo_result.rc != 0 and 'already exists' not in koji_bootstrap_add_appstream_repo_result.stderr"
|
||||
|
||||
- name: Add Koji builder hosts
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
add-host {{ item }} x86_64
|
||||
loop: "{{ groups['kojibuilders'] }}"
|
||||
register: koji_bootstrap_add_host_result
|
||||
changed_when: "'Host added' in koji_bootstrap_add_host_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_host_result.rc != 0 and 'is already in the database' not in koji_bootstrap_add_host_result.stderr"
|
||||
|
||||
- name: Add Koji builder hosts to createrepo channel
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
add-host-to-channel {{ item }} createrepo
|
||||
loop: "{{ groups['kojibuilders'] }}"
|
||||
register: koji_bootstrap_add_host_to_channel_result
|
||||
changed_when: "'Host added to channel' in koji_bootstrap_add_host_to_channel_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_host_to_channel_result.rc != 0 and 'is already subscribed' not in koji_bootstrap_add_host_to_channel_result.stderr"
|
||||
|
||||
- name: Set Koji builder host capacity
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
edit-host --capacity={{ kojid_max_jobs }} {{ item }}
|
||||
loop: "{{ groups['kojibuilders'] }}"
|
||||
changed_when: true
|
||||
|
||||
- name: Regenerate repo
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
regen-repo {{ koji_build_tag }}
|
||||
changed_when: false
|
||||
|
||||
- name: Create builder user
|
||||
ansible.builtin.command: >
|
||||
sudo -u {{ koji_admin_user }} koji
|
||||
--config={{ koji_hub_admin_user_koji_dir }}/config
|
||||
add-user builder
|
||||
register: koji_bootstrap_add_builder_user_result
|
||||
changed_when: "'User added' in koji_bootstrap_add_builder_user_result.stdout"
|
||||
failed_when: "koji_bootstrap_add_builder_user_result.rc != 0 and 'already exists' not in koji_bootstrap_add_builder_user_result.stderr"
|
||||
Loading…
Reference in a new issue