59 Commits

Author SHA1 Message Date
Derek Higgins
d6c9d6caed Replace use of Q_USE_PROVIDERNET_FOR_PUBLIC
This is being removed from devstack in
I23e1b98bd2839b79226b55700ee404a8fda83f83

Change-Id: I81b8cc348900837b876216065d7a2bf4a3665b8b
2019-01-18 13:26:03 +00:00
Zuul
5e0496ceb3 Merge "Change multinode jobs to default to local boot" 2018-12-06 15:45:41 +00:00
Zuul
b2c78d74cd Merge "Slim down grenade jobs" 2018-12-06 15:35:38 +00:00
Julia Kreger
2f991522e7 Change multinode jobs to default to local boot
When validations occur, we raise an exception internally
which can lead to confusing and misleading log messages
when whole disk images are utilized with the standing
default of network booting on neutron.

We've long discussed changing it, so why not start.

Change-Id: I68bb1b9bf8c14ba686eb1c9d2755badf84481f91
2018-12-05 10:21:38 -08:00
Julia Kreger
74ea2bdf5a Slim down grenade jobs
As we can't extend our grenade job timeout past 3 hours,
and we have some fairly log running jobs, that essentially
means we need to find time that is not absolutely necessary
in the entire test run in order to reduce load.

Disabling cleaning for the grenade tests as well as
setting a regex for the basic server ops as opposed to
basic network ops which can take as much as 3x the amount
of time that the basic test takes.

Change-Id: Ib795e6dc3ad1f484f79bee81a5bcfdb8c3434fa1
2018-11-29 10:52:06 -08:00
Derek Higgins
c67b46e350 Switch ironic-tempest-...-tinyipa-multinode to zuulv3
And rename to ironic-tempest-dsvm-ipa-wholedisk-direct-tinyipa-multinode

Change-Id: I6ab7bfa0343e0c8df5814d26e62864f3c66cf7b1
2018-11-19 16:30:45 +00:00
Matt Riedemann
a77abba198 Revert "Add openstack/placement as a required project for ironic-grenade*"
This reverts commit e1272cb19b2d8d5fc660f3f81de72058c1b96e13.

This is handled generically now with this change and its dependency:

  https://review.openstack.org/#/c/606853/

Change-Id: I8fff93c920bc39202fa12cbff612005cf1339865
2018-10-24 08:47:51 -04:00
Zuul
d2c9bba6f9 Merge "Switch ironic-tempest-dsvm-functional-python3 to zuulv3" 2018-10-04 17:02:02 +00:00
Zuul
f60de6433e Merge "Switch ironic-tempest-dsvm-functional-python2 to zuulv3" 2018-10-01 15:20:52 +00:00
Matt Riedemann
e1272cb19b Add openstack/placement as a required project for ironic-grenade*
In order to get openstack/placement installed as part of the
ironic grenade jobs, we have to list it as a required project.

Needed by https://review.openstack.org/604454/

Change-Id: I3922ef15ef8b4517f653a37ca137ba30c8ca5643
2018-09-30 11:48:17 -04:00
Derek Higgins
f34799b3fa Switch ironic-tempest-dsvm-functional-python3 to zuulv3
Change-Id: Ib9d79e4b9ce770b1eb7e572dffe704e4f3568611
2018-09-25 10:54:09 +01:00
Derek Higgins
86e9c7e0f9 Switch ironic-tempest-dsvm-functional-python2 to zuulv3
Change-Id: I01fadd61b0469512f512026c81f5ce782a3c6dd5
2018-09-25 10:54:05 +01:00
Derek Higgins
e63360caf2 Remove ironic experimental jobs
These have existed since the jobs were migrated into
this repository (almost a year). They don't currently
work and I don't think they are being worked on, so
remove them to avoind trying to port them to zuulv3
native jobs.

Change-Id: Ied056b91d78b5644ac5d87020325b65af1d86ff4
2018-09-24 12:12:52 +01:00
Derek Higgins
9a01311944 Switch ironic-tempest-dsvm-ironic-inspector too zuulv3
Change-Id: I666407340eae5396069697ef026b66c43dc54ec9
2018-08-10 13:02:37 +01:00
Derek Higgins
e1ab512274 Switch ironic-tempest-dsvm-bfv too zuulv3
Change-Id: I6a70780f77a4c6a806b81deea600ac4b551a1bd2
2018-08-10 13:02:37 +01:00
Derek Higgins
253ce25ef2 Switch ironic-tempest-dsvm-ipa-partition-pxe_ipmitool-tinyipa-python3
Switch ironic-tempest-dsvm-ipa-partition-pxe_ipmitool-tinyipa-python3
to zuulv3 native.

Also ensure phygmi and virtualbmc are always installed with python2
as pyghmi is still not compatible with python3.

Depends-On: I413ea7ec5db3316f985c38900aa46b8cdfd5d138
Change-Id: I11ad26c354bcbc2a0ed8e2bc78c9403dbcf85326
2018-07-31 09:20:35 +01:00
Derek Higgins
90f7a89016 Switch ironic-tempest-dsvm-ipa-partition-uefi-pxe_ipmitool-tinyipa
Switch ironic-tempest-dsvm-ipa-partition-uefi-pxe_ipmitool-tinyipa
to zuulv3 native

Change-Id: I5235edb4e0e98d255fa4787493c96ffcf7c8b33a
2018-07-26 10:35:41 +01:00
Derek Higgins
7ea0ff45bd Switch ironic-tempest-dsvm-ipa-wholedisk-bios-pxe_snmp-tinyipa
Switch ironic-tempest-dsvm-ipa-wholedisk-bios-pxe_snmp-tinyipa
to zuulv3 native.

Change-Id: I0daef9b62cedc5de50d5b51d6ae79046160750d1
2018-07-26 10:35:30 +01:00
Derek Higgins
d11700c3e9 Switch ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa
Switch ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa to zuulv3 native

Change-Id: I343c05727dbd1fd06f3a2c2beb1b7d6fe8d218bf
2018-07-26 10:35:20 +01:00
Derek Higgins
0b87e6140b Switch ironic-tempest-dsvm-pxe_ipmitool-postgres
Switch ironic-tempest-dsvm-pxe_ipmitool-postgres to zuulv3 native

Change-Id: I618f11871258b9052eea725325656a05b2cb7478
2018-07-26 10:35:01 +01:00
Dao Cong Tien
dd4a4d4111 Update CI jobs for rescue mode
Sets rescue interface to 'agent' for testing rescue mode in most jobs.
The rescue mode is tested in test_baremetal_server_ops.

Also adds support for the new config option in ironic tempest plugin
default_rescue_interface.

Story: #1526449
Depends-On: I6b62724711ddbe17b59dad30283e544272d9c1f3
Change-Id: Ica26aa96978d22a681d69e7e1e4acd72182a4981
2018-07-12 16:13:02 -07:00
Derek Higgins
b61ebd4015 Switch ironic-tempest-dsvm-ipa-partition-redfish-tinyipa
Switch ironic-tempest-dsvm-ipa-partition-redfish-tinyipa
to zuulv3 native

Change-Id: I3f993e7e872b4b57556413c94502ce7df235b0e2
2018-06-29 15:56:38 +01:00
Derek Higgins
f8163fab38 Switch ironic-dsvm-standalone to zuulv3 native
Move ironic-dsvm-standalone away from using the legacy
format converted fromt the project-config repository.

Also enables 3 more tempest jobs(BaremetalAgentIpmitool*)
that were being skipped as agent_ipmitool wasn't configured.

Change-Id: Ic01bf1849620c6d095f130e445c92888548d00c5
2018-06-29 15:56:35 +01:00
Dmitry Tantsur
1a07137118 Remove the ipmitool classic drivers
This change removes pxe_ipmitool and agent_ipmitool. Some tests
and documentation bits are removed, since we no longer have any
classic drivers to provide examples.

The Inspector.create_if_enabled method is no longer used and was
removed. The [inspector]enabled option will be deprecated in
a follow-up.

IRONIC_ENABLED_DRIVERS is removed from devstack to prevent
devstack-gate from injecting the removed drivers into it.
A temporary migration from queens is updated to disable all
classic drivers. It will be removed when the enabled_drivers
option is completely removed.

Change-Id: Iab247e3b3336f90446ef0687edb340cf8282a925
2018-06-27 13:08:42 +02:00
Zuul
f55a39989d Merge "Consolidate the setting of ironic-extra-vars" 2018-06-13 11:13:54 +00:00
Zuul
0fdd8c3195 Merge "Remove dulicate uses for zuul-cloner" 2018-06-13 10:59:02 +00:00
Zuul
30a9872cf6 Merge "Remove the "fake" and "fake_soft_power" classic drivers" 2018-06-09 00:53:27 +00:00
Derek Higgins
500ca21046 Consolidate the setting of ironic-extra-vars
Only use a single shell task to set ironic-extra-vars in each playbook. In
the old project config directory these sections had names like
"ironic-deploy-with-IPA", "ironic-ipxe-disabled" ... but the names have been
lost so keeping them seperate make no sense.

Change-Id: I06176a1cb4a213670b04c5a0e7d8d4a1f3ee94e7
2018-06-07 11:32:29 +01:00
Derek Higgins
a64e119d1f Remove dulicate uses for zuul-cloner
No need to have this code duplicated in each job.

Change-Id: I5dae53962c0ab6ff1e4fa8c6d800abd12b293940
2018-06-07 10:23:02 +01:00
Dmitry Tantsur
d95197628c Remove the "fake" and "fake_soft_power" classic drivers
The grenade configuration is updated to disable the fake driver.

Change-Id: Ica2b466a1a22ca2e5d1362377692cc39ef53ce2c
2018-06-06 16:15:49 +02:00
Dmitry Tantsur
2e7b2bad5b Stop using pxe_ipmitool in grenade
Change-Id: I1673d0adf1128ef65aac7c89fa9b321449156217
2018-06-05 15:37:22 +02:00
Zuul
e44f0dd69b Merge "[devstack] Switch ironic to uWSGI" 2018-05-16 22:36:02 +00:00
Dmitry Tantsur
ee04f565f1 Move API (functional) tests to separate jobs
It becomes increasingly harder to maintain functional tests using the fake
hardware type and integration tests in the same jobs. This change creates
two new jobs (for Python 2 and Python 3) and makes API tests run only in them.

Change-Id: I3570323b22d8d4f19635f26733b3ae92bd0c661d
2018-04-27 18:12:14 +02:00
Vasyl Saienko
b27396db66 [devstack] Switch ironic to uWSGI
This patch switches ironic API to run under uwsgi,
and drops support for running ironic API under mod_wsgi
from ironic's devstack plugin.

It also effectively moves all jobs except grenade ones to
run ironic-api under UWSGI as we start to honor the devstack's
ENABLE_HTTPD_MOD_WSGI_SERVICES variable (which is True by default).

The new variable in devstack plugin to toggle deployment with uwsgi
is IRONIC_USE_WSGI, which defaults to (now confusingly named)
IRONIC_USE_MOD_WSGI for backward compatibility.

Related-Bug: #1719260
Co-Authored-By: anascko <ovoshchana@mirantis.com>

Change-Id: I9ef3aa48db6efe8e2216af785cc13fdb7f754a02
2018-04-17 19:22:12 +03:00
Zuul
34e9d7d630 Merge "Gate: run ironic tests in the regular multinode job" 2018-03-28 16:46:07 +00:00
Dmitry Tantsur
5f03daf21f Gate: run ironic tests in the regular multinode job
We don't specify any regex for this job, so it runs some tests.
They only include test_network_basic_ops, which does not check that
multitenancy is in effect. We have a test for it in ironic-tempest-plugin,
but it does not run anywhere. There is a neutron test for the same,
but it's not a smoke test and it has been skipped for quite some time.

This change switches this job to the run the following tests:
* all ironic tests (that are not skipped for any reason)
* multinode tests from Nova

Unfortunately, this patch uncovers that we don't run any tests for
network attach/detach in practice. The devstack plugin has to be updated
first to support more than one port per node. A TODO is left in the playbook.

Change-Id: I46d94c29f858977604c0a3430257eca2bee977e3
2018-03-28 12:19:12 +02:00
Zuul
c70bc0bd2e Merge "Stop running standalone tests for classic drivers" 2018-03-21 09:35:54 +00:00
Dmitry Tantsur
261df514f7 Gate: stop setting IRONIC_ENABLED_INSPECT_INTEFACES=inspector
First, this is already handled by the ironic-inspector devstack plugin.
Second, this list does not include the fake implementation, and since
we enabled fake-hardware, the conductor no longer starts.

Change-Id: I705ec9d03d33623bd908e1a48f428062041b5d89
2018-03-16 17:08:58 +01:00
Zuul
6da5caa593 Merge "Use node traits during upgrade" 2018-03-13 16:35:26 +00:00
Mark Goddard
cef19cbf0a Use node traits during upgrade
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
2018-03-12 16:20:36 +00:00
John L. Villalovos
b6c521c797 zuul: Remove duplicated TEMPEST_PLUGIN entry
We don't need to have two TEMPEST_PLUGINS entry of the same value of
/opt/stack/new/ironic-tempest-plugin. One is enough.

Change-Id: I9527b0da0dae1552a320e5257d6f36f9d9446906
2018-03-12 12:17:59 +00:00
Mark Goddard
c8ae2457c7 Register traits on nodes in devstack
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
2018-02-23 18:59:11 +00:00
Zuul
03cd5ab5b6 Merge "Clean up CI playbooks" 2018-02-22 21:14:25 +00:00
Julia Kreger
93f376f345 Disable .pyc files for grenade multinode
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
2018-02-20 03:09:45 +00:00
Dmitry Tantsur
06426493a0 Stop running standalone tests for classic drivers
They are pending removal this cycle anyway. Removing them will free
up CI resources for more standalone tests in the near future.

Depends-On: I90f8b42113d6621c7af644fdb4c76d5f3dde318e
Change-Id: Icdcc4f0ddd336cc44dbfabc2b1a3c21b3c270803
2018-02-13 17:18:26 +01:00
Dmitry Tantsur
5233ef0f96 Clean up CI playbooks
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
2018-02-12 14:07:00 +01:00
Sam Betts
3625bda6f8 Revert grenade jobs to classic drivers
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
2018-02-07 16:26:41 +00:00
Sam Betts
dcc5546b49 Use zuul.override_checkout instead of custom branch_override var
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
2018-02-05 11:07:55 +00:00
Zuul
d6c5927c38 Merge "Switch the CI to hardware types" 2018-01-31 04:30:36 +00:00
Julia Kreger
904f44522b Be more sane about cleaning
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
2018-01-24 12:57:05 -08:00