Commit Graph

4339 Commits

Author SHA1 Message Date
Zuul
2eb1c9161f Merge "simple-init: also remove en* interfaces from the images" 2020-11-23 15:42:30 +00:00
Zuul
39807fc2f5 Merge "Add support for vlan interfaces in dhcp-all-interfaces.sh" 2020-11-23 15:27:12 +00:00
Zuul
f52ad7c839 Merge "Fix python-stow-versions" 2020-11-23 05:15:54 +00:00
Dmitry Tantsur
1462b80781 simple-init: also remove en* interfaces from the images
Modern distros use more creative interface naming, e.g. CentOS 8
adds both eth0 and ens3 (!). Remove everything.

Change-Id: Ibdebdb09ea790787840cf9b817d4eb549ef18249
2020-11-22 20:17:42 +01:00
Dmitry Tantsur
19378bbd9d Fix dynamic-login with grub2
Grub2 messes up arguments with double quotes in them, changing from
key="value" to "key=value" [1]. Support this format as well.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=950760

Change-Id: Icf4c9f86009d29a342d6e0e21644af680066b0b2
2020-11-20 15:00:54 +01:00
Dmitriy Rabotyagov
d0ce0d34e5 Run autoremove on post-install step
Autoremove can touch packages, that are assumed to be present
for post-install step.

A good example is dkms, which is dropped in
install.d, but dkms element try to use it in post-install step.
This results in the following log [1]

[1] http://paste.openstack.org/show/797809/

Change-Id: I635af230c6b250fee273039935cf19506e83b3d1
2020-11-17 09:23:35 +00:00
Dmitriy Rabotyagov
75a5415dbc Fix python-stow-versions
DIB_PYTHON_PREFIX variable was neither defined nor needed.

Change-Id: I36ebe5a6dee511c0c89cc251e9ec340ec7ed915d
2020-11-17 09:23:32 +00:00
Ian Wienand
8a12243517 Remove dib-block-device console entrypoint
This is never called externally to dib, so doesn't need to be an
entrypoint.  Call it from within dib using the running python
executable and from the lib/ directory; this means we do not need to
have the virtualenv activated to run disk-image-create.

Change-Id: Ie9b551824792864402b0c63ccc350dc5c92dcc3f
2020-11-09 16:43:19 +11:00
Ian Wienand
6f73e123d0 Remove entry-point for element-info
This is really an internal dib tool.  Move it to the lib directory,
and call it with the python we are running under.

This is one less reason to require the virtualenv to be activated when
you run 'disk-image-create'.

Change-Id: Id689683a0b1fdcb446b04ba967284a216133d743
2020-11-09 16:39:35 +11:00
Bob Fournier
5d23d8e6b0 Add support for vlan interfaces in dhcp-all-interfaces.sh
Provide ability to run dhcp client on VLAN interfaces created on
top of an Ethernet interface.  See also
<https://storyboard.openstack.org/#!/story/2008298>`__ for further details.

Change-Id: Ic3ffd7b8e23b1e996cfe6c79ce0ff47e521f30be
2020-11-03 10:04:17 -05:00
Nicolas Hicher
c160538465 yum-minimal: Add centos-stream-repos package for centos-8-stream
centos-repos package is not available on centos-8-stream:

2020-11-02 15:35:20.962 | No Match for argument centos-repos
2020-11-02 15:35:20.992 | No Match for argument centos-release-stream

The build fails later on install_pkg_manager sed command:

2020-11-02 15:35:22.903 | sed: can't read
/var/cache/nodepool/dib_tmp/dib_build.iPSHptNW/mnt/etc/yum.repos.d/*repo: No
such file or directory

This change ensure centos-stream-repos package is installed to provide
/etc/yum.repos.d/*repo files

This change replace 'centos-release-stream' package with the new
'centos-stream-release' package [1]

[1] https://lists.centos.org/pipermail/centos-devel/2020-September/056069.html

Change-Id: I6c397bf7b5797a02e5f006c18ee63c9cdf66b38c
2020-11-03 09:09:03 -05:00
azvyagintsev
f6315c9757 Allow processing 'focal' ubuntu release in lvm
* Those would unlock ubuntu-focal builds

Change-Id: I628d17bfcf07fdff7d2290be7db0701095486bbf
2020-10-28 16:55:49 +02:00
likui
17ba68b25a Remove the unused coding style modules
Python modules related to coding style checks (listed in blacklist.txt in
openstack/requirements repo) are dropped from lower-constraints.txt
they are not needed during installation.

Change-Id: I94a87c4a7d0c2d5104e092d3b17ea42e0dd6bbaa
2020-10-27 11:37:19 +08:00
Zuul
061cc48583 Merge "Ensure yum-utils is installed in epel element" 2020-10-13 09:56:57 +00:00
likui
ddb67363a3 Add Python3 Wallaby unit tests
This change ensures unit testing is in place for all of the tested
runtimes for Wallaby.

See also the Project Testing Interface (PTI) in OpenStack Governance.

[1] https://governance.openstack.org/tc/reference/project-testing-interface.html

Change-Id: I5d80c7e1566a7a3d544b2b3822c77d9f1b7f16d3
2020-10-10 13:27:24 +08:00
Javier Pena
f13eb1bcea Ensure yum-utils is installed in epel element
We are running yum-config-manager/dnf config-manager in the epel
element. Even though the yum-utils package is declared in the
package-installs.yaml file, the package-installs pre-install.d
script is executed after the one in the epel element, so image
build fails.

This commit ensures yum-utils or dnf-plugins-core are installed
before running the command.

Change-Id: Ib292b0b2b31bd966e0c5e8f2b2ce560bba89c45c
2020-10-08 09:49:57 +02:00
Lon Hohberger
91ce15afd1 Fix runtime error if DIB_DNF_MODULE_STREAMS is not set
Initial patch for I78d7bcf214a45245e2073428120fcbdd968e1acd
works without the envvar set, however, 'set -eu' causes it to break
if unset.

This makes the module configuration variable not required to be
set, consistent with other DIB scripts.

Change-Id: I5ca80f518d0371a18c107c061dc923876463af57
Signed-off-by: Lon Hohberger <lhh@redhat.com>
2020-10-07 07:28:46 -04:00
Zuul
580256f374 Merge "Disable growpart in cloud-init-disable-resizefs" 2020-10-07 08:41:03 +00:00
Michal Nasiadka
520e12ec29 Disable growpart in cloud-init-disable-resizefs
This disables growpart module in cloud-init, not resizing / partition
to maximum disk free size by default.

Change-Id: I69984a9141fa8abb12dc5d51bd334f9280deca67
2020-10-06 14:03:57 +02:00
Zuul
8a8786a736 Merge "Test opensuse 15 builds with 15.2" 2020-09-28 16:41:23 +00:00
Clark Boylan
3e1fd684f7 Remove unused fedora-30 job
We don't seem to be using this job anymore and fedora-30 is EOL. Lets
delete the job.

Change-Id: Id3030488625179b6bf4e186fcd8953ff8d6a578c
2020-09-25 11:33:44 -07:00
Clark Boylan
c7c48dfdeb Test opensuse 15 builds with 15.2
15.2 is the latest 15 release and is what we should test with.

Change-Id: I824c6bef9ad9b288cb766d05879a587263916a9e
2020-09-25 08:47:11 -07:00
Zuul
6c788f5a09 Merge "Revert "Avoid disabling rhel-7-server-rh-common-rpms"" 2020-09-24 16:57:09 +00:00
Zuul
cbeca0babd Merge "Add support for CentOS 8 Stream cloud image" 2020-09-24 14:55:23 +00:00
Zuul
e64e4e7a4e Merge "Remove install unnecessary package" 2020-09-24 14:55:21 +00:00
Zuul
7ef82de0db Merge "rhel-common: Provide method to select module streams" 2020-09-24 14:32:19 +00:00
zhangboye
d7621706fe Remove install unnecessary package
The docs  requirements migrated to doc/requirements.txt
we need not install things from requirements.txt.

Change-Id: Iddb46304a6c7611f3e8e993561537fe2e5d02bcf
2020-09-23 14:17:08 +08:00
yatinkarel
0c341f5820 Revert "Avoid disabling rhel-7-server-rh-common-rpms"
Originally it was added for missing python-cheetah dep
for openstack-nova. Nova has removed usage of it long
ago with [1]. rhel-7-server-rh-common-rpms should be
disabled once it's usage is over as it packages from
it can conflict with other openstack repos.

If some package which is needed by OpenStack Packages
is missing then instead of adding rhel-7-server-rh-common-rpms
repo consideration should be to add it in RDO.

[1] https://review.opendev.org/#/c/40205

This reverts commit c7219a5a60.

Change-Id: Iad3a1c353c10bb35f9c9ef4076b65f5c84b803b2
2020-09-21 10:35:22 +05:30
Dmitry Tantsur
77fac28078 Rename duplicating 10-debian-minimal.bash
This file is present in both dpkg and debian-minimal element,
causing a failure to build anything with debian.

Change-Id: I8213d581a79bb432281f31955a44418e4047d9e1
2020-09-18 14:52:56 +10:00
Zuul
1355421ce8 Merge "bootloader: remove dangling grubenv links" 2020-09-17 01:01:42 +00:00
Zuul
58034ef253 Merge "Install gzip instead of busybox-gzip on suse" 2020-09-17 00:36:55 +00:00
Zuul
8eb20d2faf Merge "Install grep before busybox on suse distros" 2020-09-16 19:22:59 +00:00
Lon Hohberger
5299371957 rhel-common: Provide method to select module streams
Some OpenStack releases on RHEL require specific modules
in order to function correctly.  This adds the ability
to set DIB_DNF_MODULE_STREAMS which then are selected
prior to package installation.

Change-Id: I78d7bcf214a45245e2073428120fcbdd968e1acd
Signed-off-by: Lon Hohberger <lhh@redhat.com>
2020-09-16 08:43:30 -04:00
Zuul
3d4e8d749d Merge "Move centos python3 installation after RHEL subscription" 2020-09-16 08:50:23 +00:00
Zuul
d8108885df Merge "Copy apt gpg keys directly into trusted.gpg.d" 2020-09-16 08:34:32 +00:00
Zuul
32441d052d Merge "update various gentoo bits" 2020-09-16 08:34:31 +00:00
Clark Boylan
c091227f4e Install gzip instead of busybox-gzip on suse
e2fsprogs pulls in info which needs gzip. But that conflicts with the
preexisting busybox-gzip. Install normal gzip to ensure that things can
proceed without conflict.

Change-Id: I3bed5bc141eaa0f3a15bfbf9da3e2d6e7c964a76
2020-09-14 16:00:47 -07:00
Clark Boylan
45688b20a2 Install grep before busybox on suse distros
busybox-grep is pulled in by the base image and it conflicts with rsync
package installs because rsync needs grep proper. Install grep proper
prior to installing the base distro to avoid this issue later when
trying to install rsync.

Change-Id: I2ec2bf39a2af214443a93776231657b25035e54f
2020-09-14 11:57:40 -07:00
Ian Wienand
8f12d9530e bootloader: remove dangling grubenv links
The rhel8.2 .qcow2 images have moved from a single xfs partition into
an EFI style layout with separate /boot/efi partition.

This means the root partition has /boot/grub2/grubenv as a symlink to
../efi/EFI/redhat/grubenv, which is dangling when we are running the
bootloader element as /boot/efi is blank.  grub-install tries to call
rename() in the process of re-writing this file, which fails and bails
out dib.

Remove this symlink if it exists

Change-Id: I5591144a3617dbae148b0c5d2a6a404942ffcd4e
Parital-Bug: #1893029
Redhat-Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1871669
2020-09-08 18:04:42 +10:00
Noam Angel
e9b1997267 Move centos python3 installation after RHEL subscription
I088fc4284e889147ca9a375d4a159264cff53484 tried to slot the python3
install between the 00-dnf-update and before 01-package-installs;
however it also needs to run *after* the RHEL subscription
00-rhel-registration.

Thus a better place for it is 01-00-centos-python3, which will order
it after subscription and package updates, but before any use of
package-installs.

To avoid confusion over naming, move 00-0-dnf-update back to just
00-dnf-update.

Change-Id: Ib7c82895769e4889d47e10c4b37e06a42c053903
2020-09-07 11:22:55 +10:00
Matthew Thode
8cc08418d7 Copy apt gpg keys directly into trusted.gpg.d
This avoids having to have gnupg2/apt-key dependencies in the base,
and is now well supported by modern Debuntu.

Signed-off-by: Matthew Thode <mthode@mthode.org>
Change-Id: I7065b2fab6125d9635ef99ff65d374b8b6b4c3a2
2020-08-28 15:58:07 +10:00
Xinliang Liu
fd850475ea Make iscsi-boot element support centos 8
This patch makes iscsi-boot element support not only just
DISTRO_NAME centos7 but also centos and centos-minimal.

Change-Id: I8db8b01f35b2e572666badd8d2316d24a5e4287a
2020-08-25 09:28:27 +00:00
Matthew Thode
97e4627d87
update various gentoo bits
Update an rc-update call to only be made if running openrc instead of
all gentoo profiles (systemd does not have rc-update).

Add python3-pyyaml package mappings.

Update serial console to support multiple arches.

Update open-iscsi and open-isns keywords (looks like upstream merged
some musl fixes).

Update the kernel and initramfs file name globs for the
gentoo-kernel-bin usage.

Change-Id: I259bffed3a3e3f92be2210ead6bdfa383917d457
Signed-off-by: Matthew Thode <mthode@mthode.org>
2020-08-24 10:21:35 -05:00
Clark Boylan
788224cfe0 Don't remove packages that are requested to be installed
Recently the source-repositories element was updated [0] to set git as a
build-only dep. This is fine if you don't request to install git
elsewhere as a regular package install [1]. If you mix the two then git
gets uninstalled when you expect it to be installed.

Address this by checking if a package is already requested to be
installed when we find a removal or build-only request. Similarly remove
a package from the uninstall list if we ask for it to be installed
normally. This means that explicit installs override any cleanup
actions.

[0] https://review.opendev.org/#/c/745678/1/diskimage_builder/elements/source-repositories/package-installs.yaml
[1] https://opendev.org/openstack/project-config/src/branch/master/nodepool/elements/infra-package-needs/package-installs.yaml#L22

Change-Id: Idc1aa86f10cddcd4549066d8ea1d6df6fd906bac
2020-08-21 08:30:22 -07:00
Zuul
d140cc239a Merge "Revert "source-repositories: git is a build-only dependency"" 2020-08-20 20:37:48 +00:00
Paul Belanger
f093244611 Revert "source-repositories: git is a build-only dependency"
This breaks having git as a package-install in other elements. And results in diskimage-builder always erasing git on the image.

This reverts commit 3c65025559.

Change-Id: Ifb18c4243aa08055d98602aa4fdb30b16dae061d
2020-08-19 19:22:05 +00:00
Zuul
c2d719528e Merge "update gentoo to allow building arm64 images" 2020-08-19 04:35:28 +00:00
Zuul
c088aed379 Merge "Do not install python2 packages in ubuntu focal" 2020-08-18 11:28:06 +00:00
Zuul
e1995088af Merge "Remove glance-registry" 2020-08-18 08:12:17 +00:00
Zuul
ddfc22ea1c Merge "Update name of ipa job" 2020-08-18 08:04:53 +00:00