sys-cluster/swift: 2.19.0 rocky bump
authorMatthew Thode <prometheanfire@gentoo.org>
Thu, 30 Aug 2018 17:16:50 +0000 (12:16 -0500)
committerMatthew Thode <prometheanfire@gentoo.org>
Thu, 30 Aug 2018 17:16:50 +0000 (12:16 -0500)
Package-Manager: Portage-2.3.48, Repoman-2.3.10

sys-cluster/swift/Manifest
sys-cluster/swift/swift-2.19.0.ebuild [new file with mode: 0644]
sys-cluster/swift/swift-2018.1.9999.ebuild
sys-cluster/swift/swift-2018.2.9999.ebuild [new file with mode: 0644]

index 555ec0d2310b8b62dd2c947f7b98c78425a53ded..3ead59429473392d0c8623dc81ff13828c9f3b66 100644 (file)
@@ -1,2 +1,3 @@
 DIST swift-2.16.0.tar.gz 2466084 BLAKE2B 9077e9745628ebd87f998ae963d19420e0410e29e02f8671dfb95b764d2bc4e5d97bd985e6d5d40496d152c6b931a03a789b372f94ad1b39cd17d3f0a6c9e658 SHA512 db67ee43931872dae9c8f7ff5732d0e075922e73a3660815f1ccb11a2310b94f887e293e9e5d4b1dda13c687365b7433ea9c575b209892f488647aed1a6f9696
 DIST swift-2.17.0.tar.gz 2527561 BLAKE2B baf8d2363bfd39062263542ddd01702e5f5847f3bbd2d227234da44ba742fa7e2bb6954569aab12082de67cfd785496a5530a0fc7613a0ad28d88bd62dbec9f8 SHA512 d5b13a63f549f1118eb1a27505a7444e09bedb532eed8e1ea34d370163dde2ce3e3911b9e4d6bea0d96f0a5c7d99bb103ed80ee8a547051fa29e9b4a09cced16
+DIST swift-2.19.0.tar.gz 2977206 BLAKE2B 05f53e7deb7948924ed36f7fcef164dd72254a90329e88a20ffae1f97ca632967d2e4de34a95c29008f8d636ec95b6860238f77f28b2f9f7ebe78ddb8c784a6c SHA512 fa6f08bacb7488762efaf8dd067cacd82adbc0ca773ee9b9c4a23d05d448eea9d79af2c9fbd619f4a458634e0af3cc3ce8fb8eb0d7cf0c10c7d3c28955000afd
diff --git a/sys-cluster/swift/swift-2.19.0.ebuild b/sys-cluster/swift/swift-2.19.0.ebuild
new file mode 100644 (file)
index 0000000..6e4ce71
--- /dev/null
@@ -0,0 +1,122 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 eutils linux-info user
+
+DESCRIPTION="A highly available, distributed, and eventually consistent object/blob store"
+HOMEPAGE="https://launchpad.net/swift"
+if [[ ${PV} == *9999 ]];then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/openstack/swift.git"
+       EGIT_BRANCH="stable/pike"
+else
+       SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
+       KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="proxy account container object +memcached"
+REQUIRED_USE="|| ( proxy account container object )"
+
+CDEPEND=">=dev-python/pbr-1.8.0[${PYTHON_USEDEP}]"
+DEPEND="
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       ${CDEPEND}"
+
+RDEPEND="
+       ${CDEPEND}
+       >=dev-python/dnspython-1.14.0:0[${PYTHON_USEDEP}]
+       >=dev-python/eventlet-0.17.4[${PYTHON_USEDEP}]
+       !~dev-python/eventlet-0.23.0[${PYTHON_USEDEP}]
+       >=dev-python/greenlet-0.3.1[${PYTHON_USEDEP}]
+       >=dev-python/netifaces-0.5[${PYTHON_USEDEP}]
+       !~dev-python/netifaces-0.10.0[${PYTHON_USEDEP}]
+       !~dev-python/netifaces-0.10.1[${PYTHON_USEDEP}]
+       >=dev-python/pastedeploy-1.3.3[${PYTHON_USEDEP}]
+       >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+       dev-python/pyxattr[${PYTHON_USEDEP}]
+       >=dev-python/PyECLib-1.3.1[${PYTHON_USEDEP}]
+       >=dev-python/cryptography-1.6.0[${PYTHON_USEDEP}]
+       !~dev-python/cryptography-2.0[${PYTHON_USEDEP}]
+       >=dev-python/ipaddress-1.0.16[${PYTHON_USEDEP}]
+       memcached? ( net-misc/memcached )
+       net-misc/rsync[xattr]"
+
+pkg_pretend() {
+       linux-info_pkg_setup
+       CONFIG_CHECK="~EXT3_FS_XATTR ~SQUASHFS_XATTR ~CIFS_XATTR ~JFFS2_FS_XATTR
+       ~TMPFS_XATTR ~UBIFS_FS_XATTR ~EXT2_FS_XATTR ~REISERFS_FS_XATTR ~EXT4_FS_XATTR
+       ~ZFS"
+       if linux_config_exists; then
+               for module in ${CONFIG_CHECK}; do
+                       linux_chkconfig_present ${module} || ewarn "${module} needs to be enabled"
+               done
+       fi
+}
+
+pkg_setup() {
+       enewuser swift
+       enewgroup swift
+}
+
+src_prepare() {
+       sed -i 's/xattr/pyxattr/g' requirements.txt || die
+       sed -i '/^hacking/d' test-requirements.txt || die
+       distutils-r1_python_prepare_all
+}
+
+src_test () {
+       # https://bugs.launchpad.net/swift/+bug/1249727
+       find . \( -name test_wsgi.py -o -name test_locale.py -o -name test_utils.py \) -delete || die
+       SKIP_PIP_INSTALL=1 PBR_VERSION=0.6.0 sh .unittests || die
+}
+
+python_install_all() {
+       distutils-r1_python_install_all
+       keepdir /etc/swift
+       insinto /etc/swift
+
+       newins "etc/swift.conf-sample" "swift.conf"
+       newins "etc/rsyncd.conf-sample" "rsyncd.conf"
+       newins "etc/mime.types-sample" "mime.types-sample"
+       newins "etc/memcache.conf-sample" "memcache.conf-sample"
+       newins "etc/drive-audit.conf-sample" "drive-audit.conf-sample"
+       newins "etc/dispersion.conf-sample" "dispersion.conf-sample"
+
+       if use proxy; then
+               newinitd "${FILESDIR}/swift-proxy.initd" "swift-proxy"
+               newins "etc/proxy-server.conf-sample" "proxy-server.conf"
+               if use memcached; then
+                       sed -i '/depend/a\
+    need memcached' "${D}/etc/init.d/swift-proxy"
+               fi
+       fi
+       if use account; then
+               newinitd "${FILESDIR}/swift-account.initd" "swift-account"
+               newins "etc/account-server.conf-sample" "account-server.conf"
+       fi
+       if use container; then
+               newinitd "${FILESDIR}/swift-container.initd" "swift-container"
+               newins "etc/container-server.conf-sample" "container-server.conf"
+       fi
+       if use object; then
+               newinitd "${FILESDIR}/swift-object.initd" "swift-object"
+               newins "etc/object-server.conf-sample" "object-server.conf"
+               newins "etc/object-expirer.conf-sample" "object-expirer.conf"
+       fi
+
+       fowners root:swift "/etc/swift" || die "fowners failed"
+       fperms 0750 /etc/swift
+}
+
+pkg_postinst() {
+       elog "Openstack swift will default to using insecure http unless a"
+       elog "certificate is created in /etc/swift/cert.crt and the associated key"
+       elog "in /etc/swift/cert.key.  These can be created with the following:"
+       elog "  * cd /etc/swift"
+       elog "  * openssl req -new -x509 -nodes -out cert.crt -keyout cert.key"
+}
index 2cf086833fec43be5dec48dfa7f15506c13f8ffc..39349853cf67e249513bbfb7d9506ad1dc4acca5 100644 (file)
@@ -11,7 +11,7 @@ HOMEPAGE="https://launchpad.net/swift"
 if [[ ${PV} == *9999 ]];then
        inherit git-r3
        EGIT_REPO_URI="https://github.com/openstack/swift.git"
-       EGIT_BRANCH="stable/pike"
+       EGIT_BRANCH="stable/queens"
 else
        SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
        KEYWORDS="~amd64 ~arm64 ~x86"
diff --git a/sys-cluster/swift/swift-2018.2.9999.ebuild b/sys-cluster/swift/swift-2018.2.9999.ebuild
new file mode 100644 (file)
index 0000000..fc811ca
--- /dev/null
@@ -0,0 +1,122 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 eutils linux-info user
+
+DESCRIPTION="A highly available, distributed, and eventually consistent object/blob store"
+HOMEPAGE="https://launchpad.net/swift"
+if [[ ${PV} == *9999 ]];then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/openstack/swift.git"
+       EGIT_BRANCH="stable/rocky"
+else
+       SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
+       KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="proxy account container object +memcached"
+REQUIRED_USE="|| ( proxy account container object )"
+
+CDEPEND=">=dev-python/pbr-1.8.0[${PYTHON_USEDEP}]"
+DEPEND="
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       ${CDEPEND}"
+
+RDEPEND="
+       ${CDEPEND}
+       >=dev-python/dnspython-1.14.0:0[${PYTHON_USEDEP}]
+       >=dev-python/eventlet-0.17.4[${PYTHON_USEDEP}]
+       !~dev-python/eventlet-0.23.0[${PYTHON_USEDEP}]
+       >=dev-python/greenlet-0.3.1[${PYTHON_USEDEP}]
+       >=dev-python/netifaces-0.5[${PYTHON_USEDEP}]
+       !~dev-python/netifaces-0.10.0[${PYTHON_USEDEP}]
+       !~dev-python/netifaces-0.10.1[${PYTHON_USEDEP}]
+       >=dev-python/pastedeploy-1.3.3[${PYTHON_USEDEP}]
+       >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+       dev-python/pyxattr[${PYTHON_USEDEP}]
+       >=dev-python/PyECLib-1.3.1[${PYTHON_USEDEP}]
+       >=dev-python/cryptography-1.6.0[${PYTHON_USEDEP}]
+       !~dev-python/cryptography-2.0[${PYTHON_USEDEP}]
+       >=dev-python/ipaddress-1.0.16[${PYTHON_USEDEP}]
+       memcached? ( net-misc/memcached )
+       net-misc/rsync[xattr]"
+
+pkg_pretend() {
+       linux-info_pkg_setup
+       CONFIG_CHECK="~EXT3_FS_XATTR ~SQUASHFS_XATTR ~CIFS_XATTR ~JFFS2_FS_XATTR
+       ~TMPFS_XATTR ~UBIFS_FS_XATTR ~EXT2_FS_XATTR ~REISERFS_FS_XATTR ~EXT4_FS_XATTR
+       ~ZFS"
+       if linux_config_exists; then
+               for module in ${CONFIG_CHECK}; do
+                       linux_chkconfig_present ${module} || ewarn "${module} needs to be enabled"
+               done
+       fi
+}
+
+pkg_setup() {
+       enewuser swift
+       enewgroup swift
+}
+
+src_prepare() {
+       sed -i 's/xattr/pyxattr/g' requirements.txt || die
+       sed -i '/^hacking/d' test-requirements.txt || die
+       distutils-r1_python_prepare_all
+}
+
+src_test () {
+       # https://bugs.launchpad.net/swift/+bug/1249727
+       find . \( -name test_wsgi.py -o -name test_locale.py -o -name test_utils.py \) -delete || die
+       SKIP_PIP_INSTALL=1 PBR_VERSION=0.6.0 sh .unittests || die
+}
+
+python_install_all() {
+       distutils-r1_python_install_all
+       keepdir /etc/swift
+       insinto /etc/swift
+
+       newins "etc/swift.conf-sample" "swift.conf"
+       newins "etc/rsyncd.conf-sample" "rsyncd.conf"
+       newins "etc/mime.types-sample" "mime.types-sample"
+       newins "etc/memcache.conf-sample" "memcache.conf-sample"
+       newins "etc/drive-audit.conf-sample" "drive-audit.conf-sample"
+       newins "etc/dispersion.conf-sample" "dispersion.conf-sample"
+
+       if use proxy; then
+               newinitd "${FILESDIR}/swift-proxy.initd" "swift-proxy"
+               newins "etc/proxy-server.conf-sample" "proxy-server.conf"
+               if use memcached; then
+                       sed -i '/depend/a\
+    need memcached' "${D}/etc/init.d/swift-proxy"
+               fi
+       fi
+       if use account; then
+               newinitd "${FILESDIR}/swift-account.initd" "swift-account"
+               newins "etc/account-server.conf-sample" "account-server.conf"
+       fi
+       if use container; then
+               newinitd "${FILESDIR}/swift-container.initd" "swift-container"
+               newins "etc/container-server.conf-sample" "container-server.conf"
+       fi
+       if use object; then
+               newinitd "${FILESDIR}/swift-object.initd" "swift-object"
+               newins "etc/object-server.conf-sample" "object-server.conf"
+               newins "etc/object-expirer.conf-sample" "object-expirer.conf"
+       fi
+
+       fowners root:swift "/etc/swift" || die "fowners failed"
+       fperms 0750 /etc/swift
+}
+
+pkg_postinst() {
+       elog "Openstack swift will default to using insecure http unless a"
+       elog "certificate is created in /etc/swift/cert.crt and the associated key"
+       elog "in /etc/swift/cert.key.  These can be created with the following:"
+       elog "  * cd /etc/swift"
+       elog "  * openssl req -new -x509 -nodes -out cert.crt -keyout cert.key"
+}