in same cases it is required to avoid update all existing packages,
doing so can result in release update which is currently not possible
unless you not include "base" element.
"base" element used for most distribution (rhel, debain), and is
necessary for most cloud operations, this patch add
"DIB_AVOID_PACKAGES_UPDATE" parameter to skip updating all packages.
usecases for this patch can be:
* Avoid release update when building old release ex. RHEL7.5.
* build on network-less environment.
usage:
DIB_AVOID_PACKAGES_UPDATE=1
or
DIB_AVOID_PACKAGES_UPDATE=0
Change-Id: I71192b23c8f0bc48b348fe7377bf8a2399b53792
This fixes a regression in I041a141366099093805e6052b1bbf64efd277e1e
where we starting skipping the removal of old files for image-based
builds (confusingly named centos7 rather than centos for historical
reasons). Fix the check
Change-Id: I74688a9e91d833b5d654056431729bed0585616c
As described inline, we only want to remove the system package files
on centos; it causes problems on Fedora where some system tools expect
these to be there.
But there is an additional bug -- pip actually removes the system
package files anyway. To work around this, reinstall the system
package.
Closes-Bug: #1813232
Change-Id: I041a141366099093805e6052b1bbf64efd277e1e
As described in the comments, it seems the transition between
dbus-daemon -> dbus-broker in Fedora 29 has made it so the packages
can get into a state where neither service is enabled.
Explicitly install and enable dbus-broker for F29
Change-Id: I06753043a75be2f635653899c6c251b9fbdd7c67
setuptools is required by python3-setools (a dependency of
policycoreutils-python) but is not in setools RPM dependency list in
Fedora 28. See [1] for DIB output.
This is a temporary workaround. It was fixed in Fedora rawhide and
Fedora 29 [2], but Fedora 28 is still unresolved.
[1] http://logs.openstack.org/81/600381/10/check/octavia-v2-dsvm-scenario-\
fedora-latest/4ac1e5c/controller/logs/dib-build/amphora-x64-haproxy.\
qcow2_log.txt.gz#_2019-01-21_10_15_49_816
[2] https://bugzilla.redhat.com/show_bug.cgi?id=1623371
Change-Id: Ie8c827d8217d885c3031c4f45aa2556951b01e83
The path $TMP_BUILD_DIR/mnt becomes the / inside the chroot during
the chroot phases of diskimage-builder. Previously this path was being
created using the account running diskimage-builder. This account may
not be valid inside the chroot. This causes path validation, when running
on a Ubuntu bionic host, to fail.
This patch chown's the $TMP_BUILD_DIR/mnt to root.root to make sure
that / is owned by a valid account inside the chroot.
Change-Id: Ifedc136baa67c7952942aed2c8cb1041902fef91
Closes-Bug: 1811113
Change order of default tox envlist in order of likeliness to fail on a
new change and add py37 and py36.
Change-Id: I9d21561991c1d956a62de72c906cf91305ce5328
There is an use of get_image_element_array on the environment.d
phase, for the iscsi-boot element.
This function is not available on that step. So moving the check
at next step, extra-data-d, where it is available.
Change-Id: I89cfe565492142c2f7962109360fcbcebadfd469
semanage is provided by package policycoreutils-python-utils in Fedora.
The tool is a requirement of element rpm-distro.
Change-Id: I46425ec8467caf8c4e0bd47ae89412a3b8d9b3b4
This plumbs through an "--use-nm" flag to glean which instructs it to
setup interface bringup with NetworkManager rather than legacy network
enablement scripts.
In this case, install the NetworkManager package. In the non-nm case,
also install the network-scripts for Fedora 29 -- this has stopped
being installed by default (it's been deprecated since forever).
As noted in the docs, this is currently really only relevant on the
supported rpm distros which are using the ifcfg-rh NetworkManager
plugin to effectively re-use old config files. However,
NetworkManager has similar plugins for other platforms, so support can
be expanded if changes are proposed.
Depends-On: https://review.openstack.org/618964
Change-Id: I4d76e88ce25e5675fd5ef48924acd09915a62a4b
Provide a "when" option that provides for not installing packages
based on a = or != match on an environment variable.
Unit tests are added.
Change-Id: Ifa824dccaff69fd447f45d54cb4a3083bcabdd86
This reverts commit db2d26a75f331e99f6e39d9e6775fc5f48c0cc90.
The bad upstream RPM has been removed, and the job no longer fails.
The jobs are part of the template, so don't need to be explicitly
listed as they were previously, however.
Related-Change: https://review.openstack.org/619625
Change-Id: I138b7f6bdef1d955a6e0babf228543ab2530159a
It looks like we dropped running these probably when we moved the
elements around. For testtools to find the test scripts we need to
add the __init__.py files to make the directories look like modules.
Also prevent copying any .pyc or cache files in as hooks.
Change-Id: I66d5f6ee62cc4d9ee14c64e819b4db57d035d09f
I'm not sure why, but run_ramdisk_element_test is not using the same
interface as run_disk_element_test, despite being called the same way.
Update it so we are capturing logs.
Change-Id: I41b6a3f2d6e5466b340677c6252b7646c1dc2663
This has been broken for a few days due to upstream issues. Will
restore when working
Change-Id: I2c1d0a7b64f9bb263358970127adbfa36f7c1a46
Related-Change: https://review.openstack.org/619625
Related-Bug: #1804475
I noticed that pylint environment doesn't work with Python 3.7; I
guess the pinned version has become incompatible. From the history
the pin is only for Python 2.7 compatability, so just restrict it to
that (with the basepython for the environment set to python3, it's
questionable if we still support pylint with 2.7, but anyway).
Change-Id: I6a916c8422239a4e1b47dcf28a4569f1637cae7a
This allows nodes with remote devices configured via iBFT to be
correctly used during Ironic introspection and deployment,
at least for non-multipath configurations.
The new element is added as a dependency for ironic-agent.
Change-Id: If3dac6504d26535593f12e851092065b688ef696
install-packages is running before install.d phase, there is a chance
that installing a package like "container-selinux" will failed the
build, moving "selinux-permissive" to run at pre-install stage make
more sense.
Change-Id: I32f988be725d4b385c3765c47a00cd57c53d7d71