summaryrefslogtreecommitdiff
path: root/devstack
diff options
context:
space:
mode:
authorJulia Kreger <juliaashleykreger@gmail.com>2021-09-21 12:33:40 -0700
committerJulia Kreger <juliaashleykreger@gmail.com>2021-09-24 09:44:50 -0700
commitc1e355011c96309fb6b44f1ee00a24232fe756ca (patch)
tree85753db49e7345f0ad873b296806ab5d3bd77f09 /devstack
parent81dffa5e4e10937178244b64d5b27134a3bd7579 (diff)
downloadironic-c1e355011c96309fb6b44f1ee00a24232fe756ca.tar.gz
Remove legacy rpm install list and use bindep
The legacy rpm install list is out of date and includes packages which no longer exist in newer distribution builds. This functionality was entirely replaced by bindep, which is *the* authortative file for things like this. The major difference is the separate bindep file can't include mysql, or we break devstack \o/. Change-Id: Ic86f6efdf75fc2871c03e21b7f9166192b0f212c
Diffstat (limited to 'devstack')
-rw-r--r--devstack/files/bindep.txt99
-rw-r--r--devstack/files/rpms/ironic25
2 files changed, 99 insertions, 25 deletions
diff --git a/devstack/files/bindep.txt b/devstack/files/bindep.txt
new file mode 100644
index 000000000..a9abbe3b0
--- /dev/null
+++ b/devstack/files/bindep.txt
@@ -0,0 +1,99 @@
+# NOTE(TheJulia): This is a special bindep file which is independent of the
+# project bindep file which is for general usage. This binde pfile is
+# intended for execution from Devstack.
+# The *primary* purpose being, devstack manages sql dependency mangement
+# and credential setup, so they can't be included here or it is installed
+# prematurely.
+
+# these are needed to run ironic with default ipmitool and (i)PXE boot drivers
+ipmitool [default]
+ipxe [platform:dpkg default]
+ipxe-bootimgs [platform:rpm default]
+socat [default]
+xinetd [default]
+tftpd-hpa [platform:dpkg default]
+tftp-server [platform:rpm default]
+# Starting with Debian Jessie (and thus in Ubuntu Xenial too),
+# pxelinux package provides the pxelinux.0 boot loader,
+# but such package is absent from Debian Wheezy / Ubuntu Trusty.
+# Also, in Debian Wheezy / Ubuntu Trusty 'syslinux' depends on syslinux-common,
+# but only recommends it in Jessie/Xenial.
+# Make sure syslinux-common is installed for those distros as it provides
+# *.c32 modules for syslinux
+# TODO remove distro pinning when Wheezy / Trusty are EOLed (May 2019)
+# or DevStack stops supporting those.
+# In the mean time, new Debian-based release codenames will have to be added
+# as distros can not be pinned with 'if-later-than' specified.
+pxelinux [platform:ubuntu-xenial platform:debian-jessie default]
+syslinux [platform:rpm platform:ubuntu-trusty platform:debian-wheezy default]
+syslinux-common [platform:ubuntu-xenial platform:debian-jessie default]
+socat [default]
+# Grub2 files for boot loadingusing PXE/GRUB2
+shim-signed [platform:dpkg default]
+grub-efi-amd64-signed [platform:dpkg default]
+
+# these are needed to create and access VMs when testing with virtual hardware
+libvirt-bin [platform:dpkg devstack]
+libvirt [platform:rpm devstack]
+libvirt-dev [platform:dpkg devstack]
+libvirt-devel [platform:rpm devstack]
+qemu [platform:dpkg devstack build-image-dib]
+qemu-kvm [platform:dpkg platform:rpm devstack]
+qemu-utils [platform:dpkg devstack build-image-dib]
+qemu-system-data [platform:dpkg devstack]
+sgabios [platform:rpm devstack]
+ipxe-qemu [platform:dpkg devstack]
+edk2-ovmf [platform:rpm devstack]
+ovmf [platform:dpkg devstack]
+ipxe-roms-qemu [platform:rpm devstack]
+openvswitch [platform:rpm devstack]
+iptables [devstack]
+net-tools [platform:rpm devstack]
+
+# these are needed to compile Python dependencies from sources
+python-dev [platform:dpkg test]
+python3-all-dev [platform:dpkg !platform:ubuntu-precise test]
+python3-devel [platform:rpm test]
+build-essential [platform:dpkg test]
+libssl-dev [platform:dpkg test]
+libffi-dev [platform:dpkg test]
+libffi-devel [platform:rpm test]
+# these are needed by infra for python-* jobs
+libpq-dev [platform:dpkg test]
+libpq-devel [platform:rpm test]
+postgresql
+postgresql-client [platform:dpkg]
+# postgresql-devel [platform:rpm]
+postgresql-server [platform:rpm]
+mariadb [platform:rpm]
+mariadb-server [platform:rpm]
+# mariadb-devel [platform:rpm]
+dev-db/mariadb [platform:gentoo]
+# gettext and graphviz are needed by doc builds only. For transition,
+# have them in both doc and test.
+# TODO(jaegerandi): Remove test once infra scripts are updated.
+# this is needed for compiling translations
+gettext [test doc]
+# this is needed to build the FSM diagram
+graphviz [!platform:gentoo test doc]
+# libsrvg2 is needed for sphinxcontrib-svg2pdfconverter in docs builds.
+librsvg2-tools [doc platform:rpm]
+librsvg2-bin [doc platform:dpkg]
+
+# these are needed to build a deploy ramdisk
+
+# NOTE apparmor is an undeclared dependency for docker on ubuntu,
+# see https://github.com/docker/docker/issues/9745
+apparmor [platform:dpkg imagebuild]
+gnupg [imagebuild]
+squashfs-tools [platform:dpkg platform:redhat imagebuild]
+squashfs [platform:suse imagebuild]
+libguestfs0 [platform:dpkg imagebuild]
+libguestfs [platform:rpm imagebuild]
+python-guestfs [platform:dpkg imagebuild]
+# for TinyIPA build
+wget [imagebuild]
+python-pip [imagebuild]
+unzip [imagebuild]
+sudo [imagebuild]
+gawk [imagebuild]
diff --git a/devstack/files/rpms/ironic b/devstack/files/rpms/ironic
deleted file mode 100644
index 469f7fe6b..000000000
--- a/devstack/files/rpms/ironic
+++ /dev/null
@@ -1,25 +0,0 @@
-docker-io
-ipmitool
-iptables
-ipxe-bootimgs
-gnupg
-libguestfs
-libguestfs-tools
-libvirt
-libvirt-python
-qemu-system-x86
-net-tools
-openssh-clients
-openvswitch
-sgabios
-shellinabox
-syslinux
-syslinux-nonlinux # dist:rhel8
-tftp-server
-xinetd
-squashfs-tools
-libvirt-devel
-socat
-edk2-ovmf # dist:f24,f25
-ipxe-roms-qemu
-jq