In order to have Ironic installed using Python 3 when running under a
Python 3 test job, we need to enable it as a Python 3 package.
The Python 3 job still doesn't pass. But this is needed as part of the
work.
Change-Id: I6a766bbb4250d76d458db8783631e4bd834859f3
To support multi-node grenade jobs we need to move enabling of the
ironic devstack plugin out of the ironic grenade settings file
devstack/upgrade/settings. But if we add enabling of the ironic devstack
plugin to project-config it will cause the gate to break as the plugin
will be enabled twice.
This checks to see if the ironic devstack plugin has already been
enabled:
* If it has already been enabled it will not enable it again.
* If it has not yet been enabled it will enable it.
This will allow us to update project-config to enable the ironic
devstack plugin and not break the gate.
After all the changes have landed we will propose a follow-up patch to
remove all this additonal logic and the enabling of the ironic devstack
plugin.
Change-Id: I09ed78ef918eb0359045350e89d42c6df9f3e490
Adds handling of running ironic API under Apache as WSGI app to
devstack plugin.
New variable IRONIC_USE_MOD_WSGI (False by default) is added.
Another new variable IRONIC_WSGI_DIR (default is distro specific) is
also added, which specifies location for WSGI scripts.
Change-Id: I9c5ad56e1acd292ff0f9cc9b460125fc420abda5
Closes-Bug: #1513005
Make the sentry variable _IRONIC_DEVSTACK_LIB a global variable so
that it will work as expected.
When variables use the 'declare' directive, it is by default a local
variable. While other variables have global scope.
For example:
declare -A AN_ARRAY # local in scope
foo=1 # global in scope
declare -A -g SPAM # global in scope because of -g
This causes errors to occur as some of the variables will be local only
and others will be global.
The issue that can occur is that when sourcing devstack/lib/ironic a
second time the sentry _IRONIC_DEVSTACK_LIB will not be set but all
the other variables from devstack/lib/ironic will already have been
set as they are by default global variables. And the purpose of
_IRONIC_DEVSTACK_LIB is to prevent the file from being sourced twice.
Change-Id: I24b6ebb89f3d950d39b0665346b4c17bf05d0a0b
We set global variables in Ironic devstack plugin like
DEFAULT_IMAGE_NAME. Ensure that grenade uses them by
sourcing lib/ironic from upgrade/settings.
Set IRONIC_DEPLOY_DRIVER by default to pxe_ipmitool. As we no longer
add IRONIC_DEPLOY_DRIVER to IRONIC_ENABLED_DRIVERS and defaults are
conflicting.
Closes-Bug: #1663371
Change-Id: I462ac792ad7920beff64c15a7c005406fcfa5cce
When running grenade with multitenancy, we are able to boot instances
in the network neutron has created in its upgrade phase, and we don't
have to change that setup.
Change-Id: I1038548ad4f93788fca3e2b7dd8ed93da0ce7702
Adding a README file to be put into the ironic-bm-logs/ directory that
explains the virtual bare-metal log files.
Change-Id: If4fc6b53273d39c65db0251957795d214440118d
Currently only the default interfaces are supported.
Also fail devstack if the deploy driver is neither in enabled_drivers
not in enabled_hardware_types, as we no longer can easily detect which
list to append it to automagically.
Change-Id: I055497963f05833bf065ab396fff9b628357fc08
Partial-Bug: #1524745
For multinode setup we enroll IRONIC_VM_COUNT VMs on each of nodes.
As result on subnode we expecting to have 2 * IRONIC_VM_COUNT resources.
Change-Id: I5f939b0e4a8169e27c3b338ed2857efbe7263ecd
IRONIC_IPMIINFO_FILE was replaced by IRONIC_HWINFO_FILE in the
Newton release [1].
This removes support for IRONIC_IPMIINFO_FILE.
[1] Commit b61d9c076b4ce69312bc5e5303d58522e40352fe
Change-Id: I2770d1f594449466738a670e28ddedbcc7ba2eb0
Adds a variable IRONIC_USE_RESOURCE_CLASSES, which defaults to False. If
true, it will set a resource_class for each node. This enables the
code path in nova that registers the resource class with the placement
engine and uses it in inventory.
Change-Id: I785264eae0dc8ebe29f58a9e73f33000ae70ebb1
Partial-Bug: #1647813
Ironic is needed to have libvirtd perms to manage VMs. When nova is
enabled all needed perms are granted in nova devstack plugin.
This patch ensures that stack user is added to libvirt group when nova
is not enabled.
Change-Id: If65002d775c9ff001f5a8e27ed1f6af1f8b4cf40
We are going to test both wholedisk and partition cases in single setup.
Download both partition and wholedisk images.
Change-Id: Ib6ee953e1a5f35ca80ed2b8196cfe668f413bf29
The logic of setting DEFAULT_IMAGE_NAME was moved to ironic
devstack plugin but original variable DEFAULT_IMAGE_NAME is
not set, while it is used by grenade.
This patch fixes setting DEFAULT_IMAGE_NAME in ironic devstack
plugin.
Change-Id: I245ca8acba14b550efe355e8a3afc8c81cdc4a23
In addition to the normal bare-metal console logs that devstack
generates, create a "no ansi" version of the log that will be easier to
view/parse when viewing the logfiles.
Change-Id: Ic321db38f694d82362a6b1be91f891a06fb18c11
Created a new Python module ironic.drivers.ipmi to contain all
supported IPMI-related drivers (both new and old).
Backward compatible aliases are left at old locations.
Change-Id: I526b8505d08b25b668af76d3fcd8f2feab31e420
Partial-Bug: #1524745
*_SSH driver is going to be deprecated, this patch change default
enabled driver list to fake,pxe_ipmool,agent_ipmitool
Change-Id: I5508ab8c11b3bbcee543f4e4d3587f5dd5ae430a
This patch is fixing the cleanup_nodes.sh script to take in account
undefining nodes with NVRAM set (UEFI mode). The --nvram option is now
being passed to the "virsh undefine" command, this will undefine nodes
with (and without) NVRAM set.
Change-Id: Idbc2d0d1765cad969e68544109bd44963cadc06c
Closes-Bug: #1659335
Inspector relying on this variables for devstack deploy
optimization, it uses same Ironic images for introspection,
as result there is no need to download images twice.
Change-Id: Idf5f61eb922480af2220d6e12c7668b0c756d813
Nested KVM has many benefits, but when it doesn't work it fails jobs.
This change defaults Ironic to using QEMU emulation, if someone wants
their local devstack to autodetect, they should set
IRONIC_VM_ENGINE="auto", or force KVM by setting
IRONIC_KVM_ENGINE="kvm".
Change-Id: I0367561ead972679250fc48d0f21b2c208e77e60
This should prove that the loading and registration of hardware types
works properly in CI.
Change-Id: I6cd50fd94fe1a6ca5304f907a662fcc7c52d8fd8
Partial-Bug: #1524745
This patch is adding support for DevStack to configure nodes and
environment (Ubuntu and Fedora) to deploy nodes in UEFI mode.
A new configuration called IRONIC_BOOT_MODE was added to DevStack and
supports two values: "bios" and "uefi". Defaults to "bios".
Partial-Bug: #1625616
Change-Id: I4e9247c6a91c707db08247a8ac04b1f146cd3714
we need to make sure before we bring up vlan interface on
"configure_ironic_provision_network:723" that OVS_PHYSICAL_BRIDGE is up.
otherwise we can fail (RTNETLINK answers: Network is down)
This issue discover on a unique configurations I run different biridges
for external network (PUBLIC_BRIDGE) and internal bridge
(OVS_PHYSICAL_BRIDGE) so devstack don't seem to bring up ovs bridge.
Change-Id: I80f29075cff47c96ac70c13717dcf13475065f83
This patch introduce new devstack variables to set min and max Ironic
API version to allow skip tempest tests.
TEMPEST_BAREMETAL_MIN_MICROVERSION
TEMPEST_BAREMETAL_MAX_MICROVERSION
Update release documentation.
Related-Bug: #1655888
Change-Id: Id6d36280f622549a2877aab99c11e4008af67fe7
This patch is moving the logic setting the default images from DevStack
into the Ironic tree. A TODO was left inline pointing out we can
refactor the logic there after we get this merged and the devstack code
removed.
Change-Id: Id828b41dc44113ce1cd094ce5fc245989699d4ff
Now all configuration are present in Ironic tempest plugin
and those are going to be removed from tempest in
Id518a6d87d0949737cd1c50cb6a83149b85e5f85
Currently devstack set those in tempest configuration, but it
will be good to move those to ironic devstack plugin.
If826321ebc0c20ea372d206d49383f3826c9b547 removes the same from
devstack.
Few are not moved as nobody use those or already deleted-
driver_enabled
deploy_img_dir
node_uuid
Change-Id: I73c649625d106fc7f068e12e21eaacba8f43cbbb
This reverts commit be6f34c3388365f93c84671f07af7a1cffb6efd8
Now that the openstack/nova commit
3c217acb9c55d647ca362320d697e80d7cfa5ceb has landed. The issue is now
fixed and we can revert this change.
Change-Id: I6729706b13d49a277a2f037ea7ef00211d4a4ca9
Related-Bug: #1651678