forked from infra/ansible
copr-be: enable rpmeta build time prediction (observability-only)
Deploy rpmeta config to copr-be.conf and hardware pools YAML with real builder specs. Initially logging-only, does not affect VM allocation.
This commit is contained in:
parent
c8a55f0113
commit
259ec5b2e8
5 changed files with 66 additions and 0 deletions
|
|
@ -53,6 +53,9 @@ copr_backend_data_2_raid1_volumes:
|
|||
- nvme-Amazon_Elastic_Block_Store_vol0f226a7163d28d8fd-part1
|
||||
- nvme-Amazon_Elastic_Block_Store_vol07293869d85a750b8-part1
|
||||
|
||||
rpmeta_enabled: true
|
||||
rpmeta_hostname: rpmeta.fedoraproject.org
|
||||
|
||||
notes: |
|
||||
Provide the backend for copr (3rd party packages)
|
||||
* Backend: Management of copr cloud infrastructure (OpenStack).
|
||||
|
|
|
|||
|
|
@ -49,6 +49,9 @@ copr_backend_data_2_raid1_volumes:
|
|||
- nvme-Amazon_Elastic_Block_Store_vol0ce8220e998e2e32a-part1
|
||||
- nvme-Amazon_Elastic_Block_Store_vol0038e042c49987b82-part1
|
||||
|
||||
rpmeta_enabled: true
|
||||
rpmeta_hostname: rpmeta.stg.fedoraproject.org
|
||||
|
||||
notes: |
|
||||
Provide the testing environment of copr's backend
|
||||
This host is the testing environment for the cloud infrastructure of copr's backend
|
||||
|
|
|
|||
|
|
@ -273,6 +273,19 @@
|
|||
- copr_infrastructure_password
|
||||
- provision_config
|
||||
|
||||
- name: Deploy rpmeta HW pools config
|
||||
ansible.builtin.template:
|
||||
src: rpmeta-hw-pools.yaml.j2
|
||||
dest: /etc/copr/rpmeta-hw-pools.yaml
|
||||
owner: root
|
||||
group: copr
|
||||
mode: "0640"
|
||||
when: rpmeta_enabled | default(false) | bool and rpmeta_hostname is defined
|
||||
notify:
|
||||
- Restart copr-backend
|
||||
tags:
|
||||
- config
|
||||
|
||||
- name: Create messaging config directory
|
||||
ansible.builtin.file: dest=/etc/copr/msgbuses state=directory owner=copr group=copr mode=0700
|
||||
when: copr_messaging
|
||||
|
|
|
|||
|
|
@ -122,6 +122,13 @@ pulp_content_url={{ pulp_content_url }}
|
|||
sentry_dsn={{ copr_sentry_dsn }}
|
||||
{% endif %}
|
||||
|
||||
{% if rpmeta_enabled | default(false) | bool and rpmeta_hostname is defined %}
|
||||
rpmeta_enabled=true
|
||||
rpmeta_url=https://{{ rpmeta_hostname }}
|
||||
rpmeta_timeout={{ rpmeta_timeout | default(5) }}
|
||||
rpmeta_hw_pools_config=/etc/copr/rpmeta-hw-pools.yaml
|
||||
{% endif %}
|
||||
|
||||
|
||||
[builder]
|
||||
# default is 1800, this probably has no effect!
|
||||
|
|
|
|||
40
roles/copr/backend/templates/rpmeta-hw-pools.yaml.j2
Normal file
40
roles/copr/backend/templates/rpmeta-hw-pools.yaml.j2
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# Hardware specs of base builder machines per architecture.
|
||||
# Used by copr-backend to call rpmeta with the correct HW info.
|
||||
# Update when builder instance types change.
|
||||
#
|
||||
# x86_64: AWS c7i.xlarge (4 vCPU / 7.6 GiB / 143 GiB swap)
|
||||
# aarch64: AWS c7g.xlarge (4 vCPU / 7.6 GiB / 143 GiB swap)
|
||||
# ppc64le: POWER9 hypervisors in Fedora Community Cage (5 cores / 15 GiB / 140 GiB swap)
|
||||
# s390x: IBM Cloud z15 (2 vCPU / 7.8 GiB / 143 GiB swap)
|
||||
|
||||
x86_64:
|
||||
cpu_model_name: "Intel(R) Xeon(R) Platinum 8488C"
|
||||
cpu_arch: "x86_64"
|
||||
cpu_model: "143"
|
||||
cpu_cores: 4
|
||||
ram: 7.6
|
||||
swap: 143.0
|
||||
|
||||
aarch64:
|
||||
cpu_model_name: "Neoverse-V1"
|
||||
cpu_arch: "aarch64"
|
||||
cpu_model: "1"
|
||||
cpu_cores: 4
|
||||
ram: 7.6
|
||||
swap: 143.0
|
||||
|
||||
ppc64le:
|
||||
cpu_model_name: "POWER9 (architected), altivec supported"
|
||||
cpu_arch: "ppc64le"
|
||||
cpu_model: "2.2 (pvr 004e 1202)"
|
||||
cpu_cores: 5
|
||||
ram: 15.0
|
||||
swap: 140.0
|
||||
|
||||
s390x:
|
||||
cpu_model_name: "IBM z15"
|
||||
cpu_arch: "s390x"
|
||||
cpu_model: "8562"
|
||||
cpu_cores: 2
|
||||
ram: 7.8
|
||||
swap: 143.0
|
||||
Loading…
Add table
Add a link
Reference in a new issue