Now that the queens branch has support for node traits in the devstack
plugin [1], we can apply node traits when testing upgrades from queens
or later.
[1] https://review.openstack.org/551938
Change-Id: I99b9487d849ecd5241657d6ca91c2e9f9f7dfcf8
Related-Bug: #1722194
Related-Bug: #1750027
This change adds support for assiging traits to nodes in the ironic
devstack plugin. The set of traits added is configured by
IRONIC_DEFAULT_TRAITS, which defaults to a single trait - CUSTOM_GOLD
Using nodes with traits during testing ensures that we are exercising
node traits code paths in the Ironic CI.
Node traits are not used for upgrade testing, as the queens devstack
plugin does not currently register traits. Once this change is
backported to queens, we can enable traits during upgrade testing.
Change-Id: I18b9dbf8a5b16e36e0cc14f290b12ffdd634364a
Related-Bug: #1722194
Related-Bug: #1750027
Ironic's grenade multinode suffers from some of unique issues.
* Nova can never be upgraded as there is a static pin that increments
higher. As such, newer nova can never run with older ironic.
* As Nova cannot be upgraded, it is left running throughout the test
sequence.
The above two conditions result in possible breaking package upgrades
as the python environments are shared between the old and new
installations.
In order to better isolate the running processes, as would be in
most actual production environments, we need to minimize underlying
inter-reactions due to python library upgrades.
Credit goes to Jim Rollenhagen for coming up with this idea, once the
massive conundrum was fully explained. Thanks Jim!
Partial-Bug: #1744139
Change-Id: Ifdd119d9cdde2ead6c3e36862cc77da67d10f7d1
The job scripts are purged of shell conditions that are never true
and variables that no longer have effect.
The resourceclasses job is removed completely, as all jobs now run
with resource classes.
Change-Id: I66a5e4f5f7214bcf9aeab8ee8d46a323610ff333
This reverts the grenade job driver changes from commit
fa850c80cbc701f1252dabcd3f514bca0148f54d. Local config settings in the
grenade jobs are used for the previous version (old) devstack plugin in
the grenade run. So the local config defined here must match how we want
the old devstack setup, not the current (new) devstack.
Change-Id: I3d5aa1da6879a0c624b5196632886da32e12d7d7
To override the branch correctly in both zuulv3's playbook loading we
have to use override_checkout in the job. This variable already gives us
the information we need to set the override branch, so use that instead
of the custom branch_override variable so we don't have to define it
twice in the job.
Change-Id: Iec7be918f75e3400197748385b287fb945d761ac
Seems that by default we now run cleaning
on all jobs. However, this is extremely wasteful
and time consuming. Also, if a cloud is IO resource
constrained, it can result in jobs failing erroneously
due to unpredictable IO performance, particularly with
the multinode jobs.
As such, slightly extend the wait timeout before we
fail for nodes not being ready, and flag multinode
jobs not to run cleaning.
Change-Id: I12011743fa197caef08a3d6d1297d662dfa7640a
Note that the job names are not changed to reduce the diff of this
patch. They will be renamed in later changes.
For the direct deploy, copy Swift temporary URL configuration from
devstack-gate (it hardcoded agent_* there).
Also clean up no-op conditions on drivers left from the times when
the job definitions were parametrized.
Change-Id: Ib0297f8936bba9449a02fb1a878981ab55687ef9
Partial-Bug: #1690185
We can not use DEVSTACK_GATE_TLSPROXY=1 when building stable/ocata.
Update it to not set it if we have BRANCH_OVERRIDE or the ZUUL_BRANCH
set to stable/ocata.
This will allow us to build stable/ocata from the
openstack/ironic-tempest-plugin gate jobs.
Change-Id: Id487b997a9d83c5daf2f9284a4e80e1f90fe6ce2
To be able to run a job on a different branch add the ability to
specify a 'branch_override' value. We will use this in the
openstack/ironic-tempest-plugin testing to be able to check changes
against our stable branches.
Change-Id: I939ab8c410b39658b4209a41a91c3339802d134b
Follow-on patch will delete the
openstack/ironic/ironic_tempest_plugin/ directory. But this will need
to be done after this patch has been backported to the stable
branches, otherwise the stable branches will break.
Change-Id: I31bb088679ea122efaa91d362e613edb74c14254
This patch moves the legacy ironic CI jobs into the ironic tree instead
of storing them in openstack-infra/openstack-zuul-jobs to give us
control as we migrate the legacy jobs to the new ansible roles.
Change-Id: Ib728fadbdab2eb9f1ba5112297a32dbdbfd1d5fd