Add content provider job, which builds containers using `current` dlrn
tag on same release branch as regular content-provider job.
Apart from new content provider job, the change adds new variable called
`minor_update`, which enables to consume containers created by new
content provider job in depended multinode-oooq-container-updates job.
minor_update variable is used in featureset068.
The featureset is activated in jobs for wallaby branch and onwards.
Train job uses featureset038 as previously.
Related-Bug: #2015993
Change-Id: I7a7713be0cd15321d5b16f6b8ca85f06d296219f
This is not taking into account the mixed OS job where we
need to use registry_ip_address_distro instead of
registry_ip_address_branch.
The _branch is still default, and we override with _distro when
it is in use (i.e. when it has more than one key). The current
code causes related-bug because we end up trying to install
tripleoclient from the *8* content provider for the *9*
undercloud.
Related-Bug: 1983004
Change-Id: Ic77a58ce04153d9ee70772284a13fe1c37d9350f
Includes changes to pass the registry_distro var through to the toci
playbook executions. Also adds the registry_ip_address_distro and
_hash_distro into the content provider return data for use by the
mixed-os-job. See topic at [1] for related reviews.
The new job is in the tripleo-multinode-container-minimal-pipeline
layout so it will run across the tripleo repos (wallaby only).
[1] https://review.opendev.org/q/topic:oooci_mixed_rhel
Change-Id: I1690fbece3ef8d40cef01ef0d10f5f5edbfe2747
playbooks/tripleo-ci/post-artifact-mult.yml and
playbooks/tripleo-ci/post-artifact-sa.yml are used in post-run
to collect zuul artifacts.
Both are defined in multinode and standalone CentOS 8 base jobs.
While doing Zuul job reparenting, We found that It cannot be used
in different jobs defined in downstream or RDO. As zuul looks for
playbook in the project where zuul jobs are defined.
In order to reuse it in downstream and RDO, we are converting it
into role and call it in starting as a part of post.yaml playbook.
It also removes it from post-run.
Signed-off-by: Chandan Kumar (raukadah) <chkumar@redhat.com>
Change-Id: Ibae7eaa6e6e91c88ac233c8fd52550e89bf2defc
This patch moves setup-compose-repos.yml playbook[1] to tripleo-ci repo
to be used on its base jobs.
This playbook is responsible for configuring and enabling CentOS compose
repos based on a provided compose URL.
It has no effect if 'dependency' var is not set to 'compose-repos'.
'centos_compose_url', if omitted, will be set by default to the latest
CentOS compose (for Stream 8 or 9).
With this change, the playbook can be deleted from previous repo.
The playbook is renamed to centos-compose-repos.yml
[1] https://github.com/rdo-infra/rdo-jobs/blob/master/playbooks/dependency/setup-compose-repos.yml
Change-Id: I09cf2d74638f9c056e62fdaaa2ff41047fce925d
Signed-off-by: Douglas Viroel <dviroel@redhat.com>
Adds a new role tripleo-build-jobs-repos that is used by
container and image build pre playbooks to setup repos with
the repo-setup role for Centos9.
Depends-On 817161 modifies the release files to use the c9 stream
repos and carries workaround until a better fix is merged like [1]
or similar.
[1] https://review.opendev.org/c/opendev/base-jobs/+/820018
Depends-On: https://review.opendev.org/c/openstack/tripleo-quickstart/+/817161
Change-Id: I39fc32cf1249b4f14bdc35a4af7a1f8784c19801
In [1] we are wiring up a role from the tripleo-quickstart repo.
There is already a 'common' role in t-q. Because of the name
clash we can rename the tripleo-ci common role.
[1] https://review.opendev.org/c/openstack/tripleo-ci/+/818222
Change-Id: I2bf7cebcefc19888058e368783a77ff8b524c998
libvirt/qemu are rebased to newer version in
AppStream repo than advanced-virtualization, and
likely due to that jobs started failing. Somehow
jobs are passing in releases before wallaby even
with newver version.
This patch is a temporary fix to
exclude libvirt/qemu from AppStream repo.
Change-Id: Iac4425d655df2f519f5b467e3754dad08ac9b1f5
Related-Bug: #1950916
The job definitions are added at [1] and the new
single-centos-9-node nodeset is added in the parent at [2]
Also fixes issue with the 'release' var which is not present
in the check/gate version of these jobs so we try to discover
it using the relevant build-containers tasks.
This also disables the image_sanity check for overcloud-full
because of related-bug.
Finally adds wallaby to the branches negative match for c9
build jobs as we aren't ready for W yet.
Related-Bug: 1950453
[1] https://review.opendev.org/c/openstack/tripleo-ci/+/813618
[2] https://review.opendev.org/c/openstack/tripleo-ci/+/816821
Change-Id: I5c78c975afa3efb2c478339cacd006e064b24e71
In [1] a release job was added for tripleo-operator. Now we need
to add the same for the tripleo-repos collection. This proposes
we move the playbook, secret and job definition to here so that
both jobs can share them. Then the jobs can be wired up into their
respective repo zuul layout files.
Once we are happy with testing (this needs to merge so we can test)
we can merge [2] and remove the duplication in t-o-a.
[1] https://review.opendev.org/c/openstack/tripleo-operator-ansible/+/803588
[2] https://review.opendev.org/c/openstack/tripleo-operator-ansible/+/810259
Change-Id: I09b24c4782db2e7cad117fb98a70a1c3d36a4301
In order to build openstack containers on centos stream 9,
build-containers role and playbooks has went through following
changes.
* Make sure /etc/nodepool dir exists in pre
* Moved all required repos config in pre9.yaml to avoid multiple
failure in main container build inline.
* Added support for unqualified-search-registries
* Added support for passing tcib_extra[1] vars needed for EL9
* use container-tools:latest for c9
* Use tripleo yum config module to generate the tripleo-repos via
compose_url and compose_id.
[1]. https://review.opendev.org/c/openstack/python-tripleoclient/+/807098
Signed-off-by: Ronelle Landy <rlandy@redhat.com>
CoAuthored-by: Chandan Kumar (raukadah) <chkumar@redhat.com>
Change-Id: Ic3923fd02875b02adbc0fdf46dace180685e76ef
Container-tools module needs to be set before
the podman login step.
Going forward, this should be done with tripleo-repos.
This review also removes unnused container stein
jobs from check and gate.
Closes-Bug: #1942078
Change-Id: I448a8d6d2dad94cb413a8f82adb85867c043f5b7
Add code comments on why content-provider check
can fail. The context was not clear to me, so
a little code comment may help others.
Related-Bug: #1918320
Change-Id: I9ba4c22544f0ddd1efb4a798d75ac133bfbb846d
These tasks were still running for centos7 based
build-containers and provider jobs, this patch fixes
the conditions for use_kolla to default to true like
it's other usage as default needs to be assumed same.
For provider job decide based on OS version to avoid
injecting additinal use_kolla var in provider jobs.
Change-Id: Iabaf3d0939ccf15694e3774c92883d6a30524b13
When job fails in pre playbooks and goes to
logs collection, it fails because doesn't
find logs directory.
Closes-Bug: #1913077
Change-Id: I3140b910312ad35b550f69d05311d3ab79adfdb1
Signed-off-by: Amol Kahat <amolkahat@gmail.com>
Wire-up build-report post playbook on content provider jobs,
and use podman to check built images (buildah was inconsitent).
This change also advertises zuul artifacts using zuul_return and
change the build work dir to ansible user home.
Change-Id: Ie7c26c28e38035783ec1c5f87b3b6bdd6381376a
The gating repo needs to be release aware.
This is REQUIRED for upgrade jobs where the release
changes during the course of the job.
This is also nice for transparency to ensure
the gating repo is set to the correct content-provider
related-review: https://review.opendev.org/c/763747
Please see the bug for more details
Partial-Bug: #1907122
Change-Id: I10d932e00f0639af8151f66f0751e48dae7b71ba
We should never use registry_ip_address var instead relying on
registry_ip_address_branch to avoid related-bug.
This removes registry_ip_address from returned zuul data and
updates the last few references to it.
For the install-built-repo pre-run play we can't rely on
release to determine the right ip_address_branch. This re-uses
logic from the build-containers role after moving it to its own
tasks file to prevent duplication.
Change-Id: Id594d301d18bc33753e56ef3b7519e36a396cd82
Related-Bug: 1904565
* Collect the logs of container workspace
* tripleo-ansible will be automatically installed by
python-tripleoclient package.
* Set tripleo_common_path for packages.
* Make sure docker service is running and docker user
and group exists
* Added insecure registeries
* serve quickstart-centos repos on http server
* set container_cli_opts only when use_buildah is used.
Depends-On: https://review.opendev.org/#/c/752419/
Change-Id: Ia3c09a33ca92ed68cbaa3baf5f37ad61751a8a89
Signed-off-by: Chandan Kumar (raukadah) <chkumar@redhat.com>
When we have ipv6 VMs in cloud, use private ipv4 address for
publishing in provider jobs. Infra guarantees all dependent jobs
will run on the same cloud, so they will have access to private
address of the same cloud.
Change-Id: If68dd7f506557a2e4389d3aa95959247bed50d9b
Add variables in branch inside the names. Upgrades job will use it
for detection target and deploy IP addresses and DLRN hashes.
Change-Id: I6aadd80a509135a0f860255c77e590818521f489
In case promotion hash changed during the providers run, we pin
dlrn hash of provider and pass it to consumers to use it.
Change-Id: I0989b78edb2b4d424fd2a55336ba7048128ecb15
There should be an option to force job failure when running it
in reproducer to leave the node by Zuul autohold.
See also I0b984b3b166fae2a742b41c0152afe64a94e03d1
Change-Id: I388c17e0a61d4c53a4222510b86b41f645705d21
Provide the new template for a pipeline:
provider job builds containers and repository,
while consumer standalone jobs use this repository and containers
registry, without using docker.io or building package itself.
Depends-On: https://review.opendev.org/746719
Depends-On: https://review.opendev.org/748424
Fix for SA errors:
Depends-On: https://review.opendev.org/#/c/748360/
Change-Id: I52e0a425f8933c0fae99224aec842d4695e91362
NetworkManager is restarting unexpectedly during
deployments of TripleO. Ensure the service is
disabled prior to deployment
Partial-Bug: #1885286
Change-Id: I67501aaaf34c8fdfa09da37e0e0a3eb6982cff3a
Ported from fix for periodic jobs because we have the same problem
in upstream: https://review.rdoproject.org/r/#/c/28041/
Change-Id: Iabb6b20e703c4680d2edeb0abad235a1190fe1e2
https://review.opendev.org/#/c/715427/ wrongly added
the pip constraints to be used in ci jobs, this patch fixes it.
Change-Id: I99117b02fb598a08f87fc46b4a4141207e2d5c20
In usual jobs we don't fail jobs if logs collection failed, only
print the message. And that's totally fine, because job should
test TripleO and not logs collection.
But for repos like collect-logs role the logs collection
functionality is critical and when job pass in CI it's possible
that logs collection failed in the patch. Because logs are core
functionality in these repos we should fail the job if logs
collection failed on patch.
For that add variable fail_logs_collection that is false by
default and will be true only for jobs running on logs collection
repository.
In order not to reset whole gate and fail other patches, don't
fail jobs in gate because of logs collection.
Change-Id: I3a946d170c0cb90476e8b23ef0d619fd8d7fcae6