From 9f9cc231452670048bb9338a8c196d5c694011aa Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Mon, 18 Apr 2022 04:45:57 +0200 Subject: [PATCH] sys-cluster/openstack-meta: new package, add 2020.2.0 Signed-off-by: Alessandro Barbieri --- sys-cluster/openstack-meta/metadata.xml | 30 +++++ .../openstack-meta-2020.2.0.ebuild | 112 ++++++++++++++++++ 2 files changed, 142 insertions(+) create mode 100644 sys-cluster/openstack-meta/metadata.xml create mode 100644 sys-cluster/openstack-meta/openstack-meta-2020.2.0.ebuild diff --git a/sys-cluster/openstack-meta/metadata.xml b/sys-cluster/openstack-meta/metadata.xml new file mode 100644 index 0000000000..bdc2716f4f --- /dev/null +++ b/sys-cluster/openstack-meta/metadata.xml @@ -0,0 +1,30 @@ + + + + + co-maintainers welcome + lssndrbarbieri@gmail.com + Alessandro Barbieri + + + Installs Openstack block storage service Cinder + Installs the dependencies for the nova volume service + Installs the dependencies for the neutron dhcp service + Installs Openstack VM services Glance + haproxy backend support + Installs Openstack orchestration engine Heat + Allow using an iSCSI remote storage server as pool for disk image storage + Installs Openstack authentication, authorization and service catalog Keystone + Allow using the Logical Volume Manager (sys-fs/lvm2) as pool for disk image storage + Installs dependencies needed for using memcached as a backend + Installs dependencies needed for using mongo as a backend + Installs Openstack virtual network Neutron + Installs Openstack fabric controller Nova + Installs dependencies for nova novncproxy service + Installs openvswitch for the neutron openvswitch support + Installs Openstack HTTP service manager for cloud resources Placement + Installs the rabbitmq server + Installs Openstack object/blob store Swift + + + diff --git a/sys-cluster/openstack-meta/openstack-meta-2020.2.0.ebuild b/sys-cluster/openstack-meta/openstack-meta-2020.2.0.ebuild new file mode 100644 index 0000000000..2720fdc9f6 --- /dev/null +++ b/sys-cluster/openstack-meta/openstack-meta-2020.2.0.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_8 ) + +inherit linux-info python-r1 + +DESCRIPTION="A openstack meta-package for installing the various openstack pieces" +HOMEPAGE="https://openstack.org" + +LICENSE="metapackage" +SLOT="0" +IUSE=" + cinder glance heat keystone neutron nova placement swift + compute dhcp haproxy infiniband ipv6 iscsi ldap lvm memcached mongo mysql novncproxy openvswitch postgres rabbitmq sqlite +" +KEYWORDS="~amd64" + +DEPEND="" +RDEPEND=" + ${PYTHON_DEPS} + + cinder? ( + sys-cluster/cinder[${PYTHON_USEDEP}] + iscsi? ( + sys-block/tgt + sys-block/open-iscsi + ) + lvm? ( sys-fs/lvm2 ) + memcached? ( net-misc/memcached ) + ) + glance? ( app-admin/glance[${PYTHON_USEDEP}] ) + heat? ( sys-cluster/heat[${PYTHON_USEDEP}] ) + keystone? ( + sys-auth/keystone[${PYTHON_USEDEP}] + || ( + www-servers/uwsgi[python,${PYTHON_USEDEP}] + www-apache/mod_wsgi[${PYTHON_USEDEP}] + www-servers/gunicorn[${PYTHON_USEDEP}] + ) + ldap? ( + >=dev-python/python-ldap-3.1.0[${PYTHON_USEDEP}] + >=dev-python/ldappool-2.3.1[${PYTHON_USEDEP}] + ) + memcached? ( >=dev-python/python-memcached-1.56[${PYTHON_USEDEP}] ) + mongo? ( >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}] ) + ) + neutron? ( + sys-cluster/neutron[${PYTHON_USEDEP}] + dhcp? ( net-dns/dnsmasq[dhcp-tools] ) + haproxy? ( net-proxy/haproxy ) + ipv6? ( + net-misc/radvd + >=net-misc/dibbler-1.0.1 + ) + openvswitch? ( net-misc/openvswitch ) + ) + nova? ( + sys-cluster/nova[${PYTHON_USEDEP}] + compute? ( + app-cdr/cdrtools + sys-fs/dosfstools + app-emulation/qemu + ) + memcached? ( + net-misc/memcached + >=dev-python/python-memcached-1.58[${PYTHON_USEDEP}] + ) + novncproxy? ( www-apps/novnc ) + openvswitch? ( net-misc/openvswitch ) + rabbitmq? ( net-misc/rabbitmq-server ) + ) + placement? ( sys-cluster/placement[${PYTHON_USEDEP}] ) + swift? ( + sys-cluster/swift[${PYTHON_USEDEP}] + memcached? ( net-misc/memcached ) + ) + + mysql? ( >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}] ) + postgres? ( >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}] ) + sqlite? ( >=dev-python/sqlalchemy-1.4.23[sqlite,${PYTHON_USEDEP}] ) +" + +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + cinder? ( || ( mysql postgres sqlite ) ) + glance? ( || ( mysql postgres sqlite ) ) + heat? ( || ( mysql postgres sqlite ) ) + keystone? ( || ( mysql postgres sqlite ) ) + neutron? ( || ( mysql postgres sqlite ) ) + nova? ( || ( mysql postgres sqlite ) ) + placement? ( || ( mysql postgres sqlite ) ) +" + +pkg_pretend() { + linux-info_pkg_setup + CONFIG_CHECK_MODULES="" +# if use tcp; then +# CONFIG_CHECK_MODULES+="SCSI_ISCSI_ATTRS ISCSI_TCP " +# fi + if use infiniband; then + CONFIG_CHECK_MODULES+="INFINIBAND_ISER " + CONFIG_CHECK_MODULES+="INFINIBAND_IPOIB INFINIBAND_USER_MAD INFINIBAND_USER_ACCESS" + fi + if linux_config_exists; then + for module in ${CONFIG_CHECK_MODULES}; do + linux_chkconfig_present ${module} || ewarn "${module} needs to be enabled" + done + fi +}