diff options
author | BigfootACA | 2021-03-19 23:59:22 +0800 |
---|---|---|
committer | BigfootACA | 2021-03-19 23:59:22 +0800 |
commit | 51ecd2fa7341e4d29bf6e919da9b6789f38472e7 (patch) | |
tree | e514b58280bb02a3119a7a09b224686e27066b8e /PKGBUILD | |
download | aur-51ecd2fa7341e4d29bf6e919da9b6789f38472e7.tar.gz |
upload to github
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 274 |
1 files changed, 274 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..2dae125cfcbd --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,274 @@ +# Maintainer: BigfootACA <bigfoot@classfun.cn> + +_pyname=neutron +pkgbase=openstack-$_pyname +pkgname=(openstack-$_pyname{,-doc}) +pkgver=17.1.1 +pkgrel=1 +pkgdesc="OpenStack Networking Service" +arch=('any') +url="https://docs.openstack.org/neutron/latest/" +license=('Apache') +depends=( + haproxy + sudo + python + python-pbr + python-paste + python-pastedeploy + python-routes + python-debtcollector + python-decorator + python-eventlet + python-pecan + python-httplib2 + python-requests + python-jinja + python-keystonemiddleware + python-netaddr + python-netifaces + python-neutron-lib + python-neutronclient + python-tenacity + python-sqlalchemy + python-webob + python-keystoneauth1 + python-alembic + python-stevedore + python-oslo-cache + python-oslo-concurrency + python-oslo-config + python-oslo-context + python-oslo-db + python-oslo-i18n + python-oslo-log + python-oslo-messaging + python-oslo-middleware + python-oslo-policy + python-oslo-privsep + python-oslo-reports + python-oslo-rootwrap + python-oslo-serialization + python-oslo-service + python-oslo-upgradecheck + python-oslo-utils + python-oslo-versionedobjects + python-osprofiler + python-os-ken + python-ovs-wrapper + python-ovsdbapp + python-psutil + python-pyroute2 + python-pyopenssl + python-novaclient + python-openstacksdk + python-designateclient + python-os-xenapi + python-os-vif + python-futurist + python-tooz +) +makedepends=( + python-setuptools + python-sphinx + python-sphinx-feature-classification + python-openstackdocstheme + python-oslotest + python-reno +) +checkdepends=( + python-hacking + bandit + python-coverage + python-fixtures + python-flake8-import-order + python-subunit + python-testtools + python-testresources + python-testscenarios + python-webtest + python-oslotest + python-stestr + python-reno + python-ddt + python-astroid + python-pylint + python-isort + python-pymysql + python-bashate +) +source=( + https://pypi.io/packages/source/${_pyname::1}/$_pyname/$_pyname-$pkgver.tar.gz + 0000-Finish-the-new-DB-engine-facade-migration.patch + 0001-Arch-Rootwrap-Path.patch + openstack-neutron-dhcp-agent.service + openstack-neutron-l3-agent.service + openstack-neutron-linuxbridge-agent.service + openstack-neutron-linuxbridge-cleanup.service + openstack-neutron-metering-agent.service + openstack-neutron-metadata-agent.service + openstack-neutron-netns-cleanup.service + openstack-neutron-ovs-cleanup.service + openstack-neutron-server.service + neutron-dist.conf + sudoers.conf + sysusers.conf + tmpfiles.conf +) +md5sums=('0283ec5cf4e8b2618777978bf276e7c4' + 'd331c9e3095d6b9001fb6bbe88998c57' + 'b5f58a9fe03abe3ac0c5b90249c9870d' + '6c4b505df881dcf0a281b9114a54254c' + '9e1241abb06716283f2fea1f5211595d' + '46c6be76ff13aed512e7e2df8f7b85d0' + '6098500febe69351c9704d0c0e62b413' + '356ac213aee3f74edd308bd4316c366b' + '5ad1a5b58a55807eecc561048f119f45' + '51b0cca95f4f70c0b500d3213cadc909' + '7e65d44244ad9c165cae647637202f64' + '7388dee422e1ace5cbe07e40584fafc7' + 'b1e073aeb87d46ba69c183d1256b4883' + '04ca03ff0f88a3a358949559434112d4' + 'e51c63b54d8111d7cd9009ede40e5da3' + '1fe5e7e568a0659dcc43b3ecf68b5f55') +sha256sums=('acd89f4e592a277ec77f0747060f2fdf2e7fede2e573ee23afc87d46983d0230' + 'd9792643a47dddb01c40b0313694bfd4a51d4eaf2c83d8dbc5a6e913ebe41c42' + 'e385701d170eed1cf22b69abc7175d5db71e47717a228e6fbbe68b340f0498ae' + '8344bea72f4acf0364f1f0a8ff7db616ebead43ae326e6c87ddfb9df38d23b9b' + '3f859b88563c0e6adab6c7b3b7920a8a6da23244bdfcdbc89470c3bcc75b1d37' + '7fa619b78f56d9202b73ed231ab2871159e8f911e21566c0ab3c47e37d46b064' + 'b165440ca522d514668b82e219b802ce7c089f7bd837bef0eff5f1598af2ecf6' + 'a106c372706aff65076f3374003d5b41ec08e2093dbba0f2c95a7a18e85a7e52' + '342699fa9891bba5e5adea645b9a63999cb2c4ce8aaaf7024a963b254892dbcc' + '1a9116d10c794c0329d516dc033efdb85deedc8cb16ffada0cd8c2b8e7e6fb8e' + '3543bc3ff6768a5ddc6970bc81aeecb892a6666f38b088bdfaf022a477ec08df' + '6888a7a720f08cc084381ec2c70338032278620b11d1fe205925534b24573952' + 'a94957b70240d1fdbd3215ca6a04b5b3fa5f5211a6c49a634eb16306dd0a416e' + 'ac52e466878aa6e60e51c0ec5d56667ece4a7d0b64972ce65f0cc70a43ad5a2b' + '6a3f7e9b1780e70ab4dbcc8181f0dc7d1c1e9115e835a00a618e043158d291b5' + '7a68828a7a12383411ba49c6c1343f34c07bf2d4edd6ee2b955cb70e694a4f90') +sha512sums=('cd707d4adaa6a6b606940370606fcef61a35af0d1f1108f24891d2f88611f4f2812c061d3b7a9540d4b6df882615a9366d39273184a791a911775e7c9f4402b8' + 'dfd2fb7fdd791394722bb75eb654e2bd485e152b3713957839b02c2fbf84dcf64617dfa2942f5c1fa328cb750b1302f64a48fdabf0ec2baafbca750be856c7a4' + '4f443b5bc7a177b620fffc4a28198a418e529071f23d24cbd8f3751304318b76a0f9ea1c5d793bf7f163dffb2024a51f11934cf4ecb777d0d9658c094a9e6d20' + 'cb15ed133af39682d4ae827645643582d3235f5051041d712933cd4c68f9c59102744c4fc48fe9abdd984a4fea6080520bd51537ecd9474f3bf01456ae358d77' + '6aa70136ec28037913ffda90b1c22968c1333601d77d6b61332d6055fa4b6862bc2c00ee4a932a39c23b6c0fb4416db4665efc600328c8c29520757967e59a64' + 'e9e8b4ce76e61525daf49f7a4253a74ed86192aeec53e4bdd35e5920d51166b8b985f6029ee6b40a400b4ee8f63e1eb62632651310b8543ad228658a6f49d81f' + 'aad6455e06caf6a0fb68c7661a8cfc7fc0350af11e27813d3d5e707fe514aeb2088beeb5a9dd7a71fefaaeea7d7792cc431c764bb29d3351985a2f7c7c7e45ae' + '76d5d945fdfc3c9d5d687910bc013ed42ac8cbe059f2878942e3c1d05790f6144725f1db3d037722b2d182262990b06c5ef04f3eb44947f57b9d104270fb9393' + '288a2a8bfcd2d6a5d2998e37ea394abcf13cfc6e7fffa78b51e278000bae0b3cf44f4501c1c66b25902ef316803500ab07576d8ee4584786ac36b951bd15c9d6' + '32cc13231a7fd104b7b0fdf85f2454f2b99d3ae7f1d8b768e3554de1badb0c3370448754252f797a44df56af3e6641e352d29637a0fec5b58561a8c3976b97f8' + '621ccbc4dc639739bf3b768da1502aa3086d48be556a73691ee5d08595e69e68b9875e993813a6bdf8cb600f8a0444653aa4c5a616165e2d73472702384ee2a3' + '14033dae211892668ad460b28d3573f149f4fb295b74391ebfb442281c685a1e4180f3edc5af68a291209458aba7cf2784fa33e387c66af5516dbb3225b4178a' + '8c118b83af7eb27e829ced64da3a2a2961d063663ea1cc7b69c205019dfa2e7bb59560d4ad000fbc3ef219a2548d377ec29aabf20413ea6ce0f4c832d85ff89d' + '7b83dc29ec88512042c3083d274b13b557b2bb17497f01f3dce02b9120f497d579df3a5d41c270a2ab75b6f7de44a4be8b70dcab3313ea1d72e5e0452042a5f2' + '6cbafe78012219d879bbc3573509a5415ef57ebcabf4350180958188881d087c027c4a5247e483a8340016f1977a46f7d0db5928fde4d4afffe2c31fffbba884' + '13d9f6fd366d58f33b457b38e677f3bc0cd8276de01345763f96a84fde408ae7e73212c967b863682add4e2c93b0d6642c5215b49e229226dbc94654f03189e3') + +export PBR_VERSION=$pkgver + +prepare(){ + for i in "${source[@]}" + do case "${i}" in + ?*.patch) + msg2 "Apply patch ${i}" + patch -Np1 <"${i}" + ;; + esac + done +} + +build(){ + cd $_pyname-$pkgver + export PYTHONPATH="${PWD}" + python setup.py build + sphinx-build -b html doc/source doc/build/html +} + +#check(){ +# cd $_pyname-$pkgver +# export PYTHONPATH="${PWD}" +# stestr run +#} + +_package_pkg(){ + optdepends=( + "python-openstackclient: OpenStack CLI Client" + "${pkgbase}-doc: Documents for ${pkgdesc}" + ) + backup=( + etc/neutron/dhcp_agent.ini + etc/neutron/l3_agent.ini + etc/neutron/metadata_agent.ini + etc/neutron/metering_agent.ini + etc/neutron/neutron.conf + etc/neutron/neutron_ovn_metadata_agent.ini + etc/neutron/policy.yaml + etc/neutron/policy.json + etc/neutron/api-paste.ini + etc/neutron/rootwrap.conf + etc/neutron/plugins/ml2/linuxbridge_agent.ini + etc/neutron/plugins/ml2/macvtap_agent.ini + etc/neutron/plugins/ml2/ml2_conf.ini + etc/neutron/plugins/ml2/openvswitch_agent.ini + etc/neutron/plugins/ml2/sriov_agent.ini + etc/neutron/rootwrap.d/privsep.filters + etc/neutron/rootwrap.d/openvswitch-plugin.filters + etc/neutron/rootwrap.d/linuxbridge-plugin.filters + etc/neutron/rootwrap.d/l3.filters + etc/neutron/rootwrap.d/iptables-firewall.filters + etc/neutron/rootwrap.d/ipset-firewall.filters + etc/neutron/rootwrap.d/ebtables.filters + etc/neutron/rootwrap.d/dibbler.filters + etc/neutron/rootwrap.d/dhcp.filters + etc/neutron/rootwrap.d/debug.filters + ) + cd $_pyname-$pkgver + export PYTHONPATH=${PWD} + _DATADIR="$pkgdir/usr/share" + _CONFDIR="$pkgdir/etc" + _DOCDIR="$_DATADIR/doc" + DATADIR="$_DATADIR/$_pyname" + DOCDIR="$_DOCDIR/$_pyname" + LIBDIR="$pkgdir/usr/lib" + CONFDIR="$_CONFDIR/$_pyname" + python setup.py install --root "$pkgdir" --optimize=1 + mv "$pkgdir"{/usr,}/etc + for i in "${source[@]}" + do case "${i}" in + ?*.service)install -Dm644 "$srcdir/$i" "$pkgdir/usr/lib/systemd/system/$i" + esac + done + for i in etc/oslo-config-generator/*;do oslo-config-generator --config-file="$i";echo "$i";done + for i in etc/oslo-policy-generator/*;do oslopolicy-sample-generator --config-file="$i";echo "$i";done + install -vDm644 ${srcdir}/neutron-dist.conf -t "$DATADIR" + install -vDm644 ${srcdir}/sudoers.conf "$pkgdir"/etc/sudoers.d/$_pyname + install -vDm644 ${srcdir}/tmpfiles.conf "$pkgdir"/usr/lib/tmpfiles.d/$_pyname.conf + install -vDm644 ${srcdir}/sysusers.conf "$pkgdir"/usr/lib/sysusers.d/$_pyname.conf + install -vDm644 etc/neutron/plugins/ml2/* -t "$CONFDIR/plugins/ml2" + install -vDm644 etc/neutron/rootwrap.d/* -t "$CONFDIR/rootwrap.d" + install -vDm644 etc/*.*.sample -t "$DATADIR" + install -vDm644 etc/*.*.sample -t "$CONFDIR" + install -vDm644 etc/rootwrap.conf -t "$DATADIR" + install -vDm644 etc/api-paste.ini -t "$DATADIR" + install -vDm644 etc/rootwrap.conf -t "$CONFDIR" + install -vDm644 etc/api-paste.ini -t "$CONFDIR" + mkdir -vp "$CONFDIR/conf.d/"{common,neutron-{server,{dhcp,l3,metadata,metering,linuxbridge,openvswitch}-agent,{linuxbridge,netns,ovs}-cleanup}} + echo '{}' >"$CONFDIR/policy.json" + for i in $(find "$CONFDIR" -name '*.*.sample') + do mv -v "$i" "${i//.sample}" + done + chmod 0750 "$pkgdir"/etc/sudoers.d + chmod 0440 "$pkgdir"/etc/sudoers.d/$_pyname +} + +_package_doc(){ + pkgdesc="${pkgdesc} Documents" + depends=() + cd $_pyname-$pkgver + mkdir -p "${pkgdir}/usr/share/doc" + cp -r doc/build/html "${pkgdir}/usr/share/doc/${pkgname}" + rm -r "${pkgdir}/usr/share/doc/${pkgname}/.doctrees" +} + +eval "package_${pkgbase}(){ _package_pkg; }" +eval "package_${pkgbase}-doc(){ _package_doc; }" |