tripleo-quickstart/config/release/tripleo-ci/CentOS-8/master.yml

207 lines
8.2 KiB
YAML

# name and tags
devmode: true
overcloud_as_undercloud: true
release: master
distro_ver: centos8
distro_deps_repo_name: deps
dlrn_hash_tag: "{{ job.provider_dlrn_hash_tag_branch[release]|default('current-tripleo') }}"
dlrn_hash_tag_newest: current
# job.build_container_images is defined in zuul as a
# direct var. adding build_container_images as tqe
# var so that we can turn this on/off per release w/o
# changing zuul and breaking jobs via inheritance.
docker_registry_host: >-
{% if job is defined and
job.build_container_images is defined and
job.build_container_images|default(false)|bool or
build_container_images|default(false)|bool -%}
127.0.0.1:5001
{%- elif job.consumer_job | default(false) | bool -%}
{{ job.registry_ip_address_branch[release] }}:5001
{%- else -%}
{{ job.alt_container_registry|default('docker.io') }}
{%- endif -%}
docker_registry_namespace: "tripleo{{ release }}"
docker_image_tag: "{{ dlrn_hash|default(dlrn_hash_tag) }}"
docker_openshift_tag: v3.11.0
promote_source: current-tripleo
# images
images:
- name: overcloud-full
url: "{{ overcloud_image_url }}"
type: tar
- name: ipa_images
url: "{{ ipa_image_url }}"
type: tar
inject_images:
- "ironic-python-agent.initramfs"
- "ironic-python-agent.kernel"
- "overcloud-full.qcow2"
- "overcloud-full.initrd"
- "overcloud-full.vmlinuz"
dlrn_baseurl: "https://trunk.rdoproject.org/{{ distro_ver }}-{{ release }}"
overcloud_image_url: "https://images.rdoproject.org/{{ distro_ver }}/{{ release }}/rdo_trunk/{{ promote_source }}/overcloud-full.tar"
ipa_image_url: "https://images.rdoproject.org/{{ distro_ver }}/{{ release }}/rdo_trunk/{{ promote_source }}/ironic-python-agent.tar"
# repo setup
repo_cmd_before: |
sudo rm -rf /etc/yum.repos.d/delorean*;
sudo rm -rf /etc/yum.repos.d/*.rpmsave;
sudo rm -rf /etc/yum.repos.d/epel*;
sudo dnf clean all;
sudo dnf config-manager --disable "*" || true;
# In https://review.opendev.org/c/765834 a release specific gating-repo is created.
# The release specifc gating repo is copied to gating.repo for consistency across ci
# The original file is backed up for logging purposes. Upgrade jobs will run with
# two releases.
sudo cp -f /etc/yum.repos.d/gating-repo-{{ release }}.repo /etc/yum.repos.d/gating.repo || true;
sudo sed -i -e "s/gating-repo-{{ release }}/gating-repo/" /etc/yum.repos.d/gating.repo || true;
sudo mv /etc/yum.repos.d/gating-repo-{{ release }}.repo /etc/yum.repos.d/gating-repo-{{ release }}.repo_previous || true;
sudo dnf config-manager --enable gating-repo || true;
if [ -e /etc/ci/mirror_info.sh ]; then
source /etc/ci/mirror_info.sh
else
# Otherwise, fallback to official mirrors provided by CentOS.
export NODEPOOL_CENTOS_MIRROR={{ lookup('env','NODEPOOL_CENTOS_MIRROR')|default('http://mirror.centos.org/centos', true) }}
export NODEPOOL_RDO_PROXY=https://trunk.rdoproject.org
fi
{% if dlrn_hash_path_newest is defined and dlrn_hash_path_newest %}
export DLRN_PATH_TAG_NEWEST="current/{{ dlrn_hash_path_newest }}"
{% elif dlrn_hash_tag_newest is match("^[a-zA-Z0-9]{32}$") %}
export DLRN_PATH_TAG_NEWEST="current/{{ dlrn_hash_tag_newest[:2] }}/{{ dlrn_hash_tag_newest[2:4] }}/{{ dlrn_hash_tag_newest }}"
{% else %}
export DLRN_PATH_TAG_NEWEST="{{ dlrn_hash_tag_newest }}"
{% endif %}
{% if dlrn_hash_path is defined and dlrn_hash_path %}
export DLRN_PATH_TAG="{{ promote_source }}/{{ dlrn_hash_path }}"
{% elif dlrn_hash_tag is match("^[a-zA-Z0-9]{32}$") %}
export DLRN_PATH_TAG="{{ promote_source }}/{{ dlrn_hash_tag[:2] }}/{{ dlrn_hash_tag[2:4] }}/{{ dlrn_hash_tag }}"
{% else %}
export DLRN_PATH_TAG="{{ dlrn_hash_tag }}"
{% endif %}
rdo_dlrn=`curl --silent https://trunk.rdoproject.org/{{ distro_ver }}-{{ release }}/${DLRN_PATH_TAG_NEWEST}/delorean.repo -S 2>>~/dlrn_repo_curl_errors.log | grep baseurl | grep "component/tripleo" | cut -d= -f2`
if [[ -z "$rdo_dlrn" ]]; then
echo "Failed to parse dlrn hash"
exit 1
fi
export RDO_DLRN_REPO=${rdo_dlrn/https:\/\/trunk.rdoproject.org/$NODEPOOL_RDO_PROXY}
repos:
# RDO repos
- type: file
filename: delorean.repo
down_url: "https://trunk.rdoproject.org/{{ distro_ver }}-{{ release }}/${DLRN_PATH_TAG}/delorean.repo"
# name of delorean-tripleo-component-current? naming is hard
- type: generic
reponame: delorean-current
filename: delorean-current.repo
baseurl: $RDO_DLRN_REPO
priority: 10
includepkgs:
- ansible-role-container-registry
- ansible-role-tripleo*
- ansible-tripleo-ipsec
- instack
- instack-undercloud
- openstack-tripleo-*
- os-apply-config
- os-collect-config
- os-net-config
- os-refresh-config
- puppet-oslo
- puppet-cinder
- puppet-heat
- puppet-neutron
- puppet-nova
- puppet-glance
- puppet-horizon
- puppet-ironic
- puppet-keystone
- puppet-mistral
- puppet-openstacklib
- puppet-swift
- puppet-tripleo
- puppet-zaqar
- python*-tripleo*
- python*-paunch*
- paunch-services
- tripleo-ansible
- ansible-config_template
- type: file
filename: delorean-master-deps.repo
down_url: "https://trunk.rdoproject.org/{{ distro_ver }}-{{ release }}/delorean-deps.repo"
# CentOS related repos
- type: generic
reponame: quickstart-centos-base
filename: quickstart-centos-base.repo
baseurl: ${NODEPOOL_CENTOS_MIRROR}/8-stream/BaseOS/x86_64/os/
- type: generic
reponame: quickstart-centos-appstreams
filename: quickstart-centos-appstreams.repo
baseurl: ${NODEPOOL_CENTOS_MIRROR}/8-stream/AppStream/x86_64/os/
- type: generic
reponame: quickstart-centos-powertools
filename: quickstart-centos-powertools.repo
baseurl: ${NODEPOOL_CENTOS_MIRROR}/8-stream/PowerTools/x86_64/os/
- type: generic
reponame: quickstart-centos-highavailability
filename: quickstart-centos-highavailability.repo
baseurl: ${NODEPOOL_CENTOS_MIRROR}/8-stream/HighAvailability/x86_64/os/
- type: generic
reponame: quickstart-centos-extras
filename: quickstart-centos-extras.repo
baseurl: ${NODEPOOL_CENTOS_MIRROR}/8-stream/extras/x86_64/os/
- type: generic
reponame: quickstart-centos-ceph-pacific
filename: quickstart-centos-ceph-pacific.repo
baseurl: ${NODEPOOL_CENTOS_MIRROR}/8/storage/x86_64/ceph-pacific/
- type: generic
reponame: quickstart-centos-opstools
filename: quickstart-centos-opstools.repo
baseurl: ${NODEPOOL_CENTOS_MIRROR}/8/opstools/x86_64/collectd-5/
repo_cmd_after: |
# Replace trunk.rdoproject.org to nodepool proxy
sudo sed -i -e "s|https://trunk.rdoproject.org|$NODEPOOL_RDO_PROXY|g" /etc/yum.repos.d/delorean.repo
sudo sed -i -e "s|https://trunk.rdoproject.org|$NODEPOOL_RDO_PROXY|g" /etc/yum.repos.d/delorean-master-deps.repo
sudo sed -i -e "s|http://mirror.centos.org/centos|$NODEPOOL_CENTOS_MIRROR|g" /etc/yum.repos.d/delorean-master-deps.repo
# note potential name change - FIX ME
sudo sed -i -e "s|https://trunk.rdoproject.org|$NODEPOOL_RDO_PROXY|g" /etc/yum.repos.d/delorean-current.repo
sudo sed -i -e "s|priority=1|priority=20|g" /etc/yum.repos.d/delorean.repo
{% if not enable_opstools_repo|default(false)|bool %}sudo yum-config-manager --save --setopt quickstart-centos-opstools.enabled=0;
{%endif %}
# sudo dnf config-manager --disable rdo-qemu-ev;
sudo rpm -e epel-release || true;
sudo dnf remove -y rdo-release centos-release-ceph-* centos-release-openstack-* || true;
sudo rm -rf /etc/yum.repos.d/CentOS-OpenStack-*.repo /etc/yum.repos.d/CentOS-Ceph-*.repo;
sudo rm -rf /etc/yum.repos.d/*.rpmsave;
sudo dnf repolist;
sudo dnf module list;
sudo dnf module disable container-tools:rhel8 -y;
sudo dnf module enable container-tools:3.0 -y;
sudo dnf clean metadata
{% if repo_setup_run_update|default(true)|bool %}
sudo dnf update -y
{% endif %}
undercloud_rpm_dependencies: >-
python3-tripleoclient
ceph-ansible
# baseos settings
baseos_undercloud_image_url: https://cloud.centos.org/centos/8-stream/x86_64/images/CentOS-Stream-GenericCloud-8-20201217.0.x86_64.qcow2
baseos_image: centos
baseos_image_type: qcow2
baseos_md5sum: "70d5c374156f2ab92c058b6a6150f55e CentOS-Stream-GenericCloud-8-20201217.0.x86_64.qcow2"