commit: af987525f62793627bc60536124382b05fd1b478 Author: Samuel Bernardo <samuelbernardo.mail <AT> gmail <DOT> com> AuthorDate: Thu Dec 6 08:12:33 2018 +0000 Commit: Samuel Bernardo <samuelbernardo.mail <AT> gmail <DOT> com> CommitDate: Thu Dec 6 08:12:33 2018 +0000 URL: https://gitweb.gentoo.org/repo/user/ssnb.git/commit/?id=af987525
update opennebula and correct tmpfilesd /run path Signed-off-by: Samuel Bernardo <samuelbernardo.mail <AT> gmail.com> app-emulation/opennebula/Manifest | 4 +- .../opennebula/files/tmpfilesd.opennebula.conf | 2 +- app-emulation/opennebula/opennebula-5.6.1.ebuild | 186 +++++++++++++++++++++ 3 files changed, 190 insertions(+), 2 deletions(-) diff --git a/app-emulation/opennebula/Manifest b/app-emulation/opennebula/Manifest index 5ac0c80..9c675dd 100644 --- a/app-emulation/opennebula/Manifest +++ b/app-emulation/opennebula/Manifest @@ -16,7 +16,7 @@ AUX opennebula.initd 913 BLAKE2B 3ab4d3c1d1d8644e909422b89526f23e168c8b0f4d08495 AUX opennebula.service 1210 BLAKE2B 8962a8688ee72892c9ebcfd61972ac139799e55f036e36afb505c935c4563c903b39eb78c24e332df36e8234039bed73a01139c5cc3645d7327ccde7cc1a4bf0 SHA512 34758f99f97cc9cac2edfd84e45072dc466a7a8fb4f4d7df5d83f8643aaa93cfca100e8740cb71406b85d9ca52a59757c9fff234a27b3dd8fd078d3e4a0ebce6 AUX sunstone-server.confd 166 BLAKE2B 88409cce348709fa0dc1794dadefef623245ca838ce4e4cffea3f99deebf93f969b12761ec3761e12c5677a937e4cb3ccf112ad5b1811c1f986fff4d87b11ec4 SHA512 fe70685cd1aad949c8f46c85764ff62f67b55477879b5d125f2f5ed176d13171762e9ef953b6d5cd6e27d4fb9f503b9fe7ac4ef0fa1f9790f86f9698d3b82079 AUX sunstone-server.initd 788 BLAKE2B e49f736213f0575d9a040058eff5accd36b00070ed767bb0de39fb0e8e9ae05ed5b34ddf2ae224530b04fd506e7b1f2a4c73ec69ac608b4a5d231bc07653ae6b SHA512 fa2d6ee6e86e2497adc7792e67140810761c7403ffec3a9def57e7568180c99f17561381462648c8cbe43b12e4b36a146e48973de979b321002c1a566beb727e -AUX tmpfilesd.opennebula.conf 85 BLAKE2B f9a99645c91bd1c700f2bcb8c2fb7b2d775d3e362b69c664c5aac43b3d771fb1394fefe68b6ddd734e8e625133f3d965d8a14b38da414b355d3a662567d81225 SHA512 d9ce8bd7b6be43e3129acf51eb6b17b06cecd06e4d92a064a168b0296ae3b5703b80255806e0e7f8e533d291e3e65f38cc4a4372a4d811eae725775fdd54e44a +AUX tmpfilesd.opennebula.conf 81 BLAKE2B 468a40c6d3be093a4adbee5662559f2a00764b1e6f06ff5df46b3ff14cd9a94ea56c213da1f9c727090587f6626d69f38548bf140175e5c56495c60f9d3332c9 SHA512 ae6d06a91877b7135697c2f6202e182bbd0166ee2568b587c915582da5bada4ca1dfb70e13586ad69eebcd6f802cd00de3f7d362b1bfd552fe0837bf729d5edd AUX websocket.py.diff 274 BLAKE2B f2c961bb29bc745a0b6fee43fa77a2ccdd26454dfcb50a0f8e3b24505f2b0df3fc6efacf30216434e76bdca0789eeff6377172d96f6f97f0a2be54d7a5a854ca SHA512 37536922c0160ee36b115f8ccfce54f2eef589f1a10df8022316247e996ccf542e193f7af13c8c00f89ab4993008a5d6f31561ccafbc0e6e4dd14eeb9ac2ea29 AUX websocketproxy.py.diff 291 BLAKE2B 5ceb2e09830119b11b4ad319eeef3167d28808457b2f1a3e869225e4ddf87f05e6fcce377f9f9742435b173dee1f82cdf4fcf7fedf2a23f5eee4448fc5e8e540 SHA512 3c176c8709d28a2b506cb915bc00947b031e621267650b7282e26ffaf810f3a5aa128576c9cebd7cec0f320f6a173a4f8aa723898d7d5fdcf7710d484da1416a DIST opennebula-4.14.2.tar.gz 9283555 BLAKE2B 4e9dfdfc3f4ea6270003540bb97ecbaee7d26ce3cfcf08e85244d91658bfe3bdb8181111d6661b982bd8445409d743359ef5deb5d47afac7fec7de5ee93b2836 SHA512 ed572bf1a6e0a4eecb85c1f2beb1f686e6729f74a354f41dbb5113fd089af06013f63d022ee8c068234e5be64df818771a0ba0c452ffbf4fd096dd16cf878926 @@ -24,10 +24,12 @@ DIST opennebula-5.4.1.tar.gz 14652947 BLAKE2B 299cc960debea0032e597b027ae73ff96c DIST opennebula-5.4.13.tar.gz 14579822 BLAKE2B 66c6267a6b4ef5754f1f782245ef0708ab2ac1efd2a28f212ea44c5c5e4d5745b6dca64e42e5a5d675fc55abca5fbf9e5dcf8fc4101a5d6e091ad315c2f44322 SHA512 4e92e1c94d621fec99fd65d63f0ec64dba972e615726a589be6487a0d6782dbf4fd0d368525555deccefcc4c9af28309efc175102e2ac9ea3306edc4e9ed5611 DIST opennebula-5.4.6.tar.gz 14537181 BLAKE2B 7240dbd209e7aec7c7ccecb95420b1b07761dcf0f1fa5f348101193e42a7af03def090d9ec6a60d32632e4ea31a5dfd03f7ee534a0e96b9e17255d8215f06f49 SHA512 440db6e15499740622c4a25cb8e28f2b718b6d2dfcb7d181f0fab927c03bc8d0ceb241bf08e03f068d73fc795ebe831b4102bebffb37f6aa320713bea66ef3ba DIST opennebula-5.6.0.tar.gz 26357668 BLAKE2B 0bf79201bdac6dc2380507bd7981520948daaa9db7f5e42164c40aecc283b858bc7dc9a8072ebbf4b8632b1746010d2483547bcd343a98718373c774c45ddbb0 SHA512 157e96f8551c5bbc89490373e167638f3a416c0abacfecfe42dc9ef4d88659512be4f03e34a285dff37ea37eab45937a9a58eda9cdf2123161ca22a88f6defe2 +DIST opennebula-5.6.1.tar.gz 26297534 BLAKE2B 1216502af4c5e0385e111d79f522cded875f8435de45d16280395bdef2ee638a664793426ecb71152ebace178fccfe50496708fb9f1a85870402030036e06500 SHA512 4978b227fd2bf19a8e56e17bb01defdff6a07f426f361befc4b7e5f0381fd5e255c29915fbf5465fdb0eccdaca3d7ec86a8f57c7629832899dfd671210cfff46 EBUILD opennebula-4.14.2.ebuild 5992 BLAKE2B d9858fe197615ac54b61ca1637acec8bd991f7b975f95d75bb45161db6953148faa300557109213ba7f0844d9cb0c7774b5900b2c9a5afb3021edbb7412b73eb SHA512 cc18db5d7480f2067d95deb6a61df6c0a40a11ab9e4f6e2491fccdac34f349d527b6ffeedb2d2d2f04c3dba210c2a1316c635b4f69064a69bfd378ea0c4f9ebe EBUILD opennebula-5.4.1.ebuild 5394 BLAKE2B be801a88a64fb6c2345845bdb389a41b7f29664a8421639977058ea6e6b419fda65db70328fbf74782859e52979e52807bd77c1e3ce71a64d456e2b8e831d12b SHA512 a4fd17509e5363838e699abbb609c9ff33de519949aa61121ffc7551405e3204dd7e6f2e0c764fc80c4a8d3f7b68693fe92ffd54c47f36095d949758b653e1dd EBUILD opennebula-5.4.13.ebuild 5394 BLAKE2B 9298d0c8dd1deb510b5de5e74fac171da4a706f4346c0178425340d6d5c2bbcc4eed45d461ba0f5fa4db88abab73f6cad97472ef26f5d0523689444703281bfd SHA512 bbe4e1977788043a79270b1b3d1a9b5478df4781b7fbe75bc6df6f03d1427d5bcf6840bc34ccb18233c2aaf4234c9bd6648f020910baaa68582ca68f712becef EBUILD opennebula-5.4.15.ebuild 7414 BLAKE2B 75dcddeebbef2092d80d087a7e6186599a23c03970171bbfc31b757f54c256c5a511c8f2212f26e499db530fd7008dc5c15beb6aa71e0000bcd9a3838e0756c0 SHA512 3483dcea0b1d20dc9542cd48d4a1ea59d17a22b6a654f47bf4634b06868a37a432c1a0c3ce4615d347508f9c1114d931633b236b256def42682780452c47b4a5 EBUILD opennebula-5.4.6.ebuild 5394 BLAKE2B be801a88a64fb6c2345845bdb389a41b7f29664a8421639977058ea6e6b419fda65db70328fbf74782859e52979e52807bd77c1e3ce71a64d456e2b8e831d12b SHA512 a4fd17509e5363838e699abbb609c9ff33de519949aa61121ffc7551405e3204dd7e6f2e0c764fc80c4a8d3f7b68693fe92ffd54c47f36095d949758b653e1dd EBUILD opennebula-5.6.0.ebuild 5394 BLAKE2B 9298d0c8dd1deb510b5de5e74fac171da4a706f4346c0178425340d6d5c2bbcc4eed45d461ba0f5fa4db88abab73f6cad97472ef26f5d0523689444703281bfd SHA512 bbe4e1977788043a79270b1b3d1a9b5478df4781b7fbe75bc6df6f03d1427d5bcf6840bc34ccb18233c2aaf4234c9bd6648f020910baaa68582ca68f712becef +EBUILD opennebula-5.6.1.ebuild 5394 BLAKE2B 9298d0c8dd1deb510b5de5e74fac171da4a706f4346c0178425340d6d5c2bbcc4eed45d461ba0f5fa4db88abab73f6cad97472ef26f5d0523689444703281bfd SHA512 bbe4e1977788043a79270b1b3d1a9b5478df4781b7fbe75bc6df6f03d1427d5bcf6840bc34ccb18233c2aaf4234c9bd6648f020910baaa68582ca68f712becef MISC metadata.xml 471 BLAKE2B fecada7f873a86295bd66aa16126682170731bb4cd87dc2cfc7f46503d1d10880cc92f87c388dc6b2d3e8a4d4cba73c4b88a97ce8d23c2254b0d91cb3f820779 SHA512 0be6058785693cef097e2b3ffcffbc7b0011719afcaaf4d10116f490dc23291bdbb9e91f42977c82ef002967a4cbd56f1bebe1f1e61a053a659250a54d7d67d1 diff --git a/app-emulation/opennebula/files/tmpfilesd.opennebula.conf b/app-emulation/opennebula/files/tmpfilesd.opennebula.conf index e5fcf81..fee9c8b 100644 --- a/app-emulation/opennebula/files/tmpfilesd.opennebula.conf +++ b/app-emulation/opennebula/files/tmpfilesd.opennebula.conf @@ -1,2 +1,2 @@ -d /var/run/one 0775 oneadmin oneadmin 10d +d /run/one 0775 oneadmin oneadmin 10d d /var/lock/one 0775 oneadmin oneadmin 10d diff --git a/app-emulation/opennebula/opennebula-5.6.1.ebuild b/app-emulation/opennebula/opennebula-5.6.1.ebuild new file mode 100644 index 0000000..d3aef85 --- /dev/null +++ b/app-emulation/opennebula/opennebula-5.6.1.ebuild @@ -0,0 +1,186 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 +USE_RUBY="ruby22 ruby23 ruby24 ruby25" + +inherit user eutils multilib ruby-ng systemd + +MY_P="opennebula-${PV/_/-}" + +DESCRIPTION="OpenNebula Virtual Infrastructure Engine" +HOMEPAGE="http://www.opennebula.org/" +SRC_URI="http://downloads.opennebula.org/packages/${PN}-${PV}/${PN}-${PV}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="qemu +mysql xen sqlite +extras systemd" + +RDEPEND=">=dev-libs/xmlrpc-c-1.18.02[abyss,cxx,threads] + dev-lang/ruby + extras? ( dev-libs/openssl + dev-ruby/libxml + net-misc/curl + dev-libs/libxslt + dev-libs/expat + dev-ruby/uuidtools + dev-ruby/amazon-ec2 + dev-ruby/webmock + dev-ruby/mysql + dev-ruby/mysql2 + dev-ruby/parse-cron + dev-ruby/sequel + dev-ruby/treetop + dev-ruby/xml-simple + dev-ruby/zendesk_api + dev-libs/log4cpp ) + mysql? ( virtual/mysql ) + dev-db/sqlite + net-misc/openssh + || ( app-cdr/cdrkit app-cdr/cdrtools ) + sqlite? ( dev-ruby/sqlite3 ) + qemu? ( app-emulation/libvirt[libvirtd,qemu] ) + xen? ( app-emulation/xen-tools )" +DEPEND="${RDEPEND} + >=dev-util/scons-1.2.0-r1 + dev-ruby/nokogiri" + +# make sure no eclass is running tests +RESTRICT="test" + +S="${WORKDIR}/${PN}-${PV}" + +ONEUSER="oneadmin" +ONEGROUP="oneadmin" + +pkg_setup () { + enewgroup ${ONEGROUP} + enewuser ${ONEUSER} -1 /bin/bash /var/lib/one ${ONEGROUP} +} + +src_unpack() { + default +} + +src_prepare() { + sed -i -e 's|chmod|true|' install.sh || die "sed failed" +} + +src_configure() { + : +} + +src_compile() { + + local myconf + use extras && myconf+="new_xmlrpc=yes " + use mysql && myconf+="mysql=yes " || myconf+="mysql=no " + scons \ + ${myconf} \ + $(sed -r 's/.*(-j\s*|--jobs=)([0-9]+).*/-j\2/' <<< ${MAKEOPTS}) \ + || die "building ${PN} failed" +} + +src_install() { + DESTDIR=${T} ./install.sh -u ${ONEUSER} -g ${ONEGROUP} || die "install failed" + + cd "${T}" + + # installing things for real + dobin bin/* + + keepdir /var/{lib,run}/${PN} || die "keepdir failed" + + dodir /usr/$(get_libdir)/one + dodir /var/lock/one + dodir /var/log/one + dodir /var/lib/one + dodir /var/run/one + dodir /var/tmp/one + # we have to preserve the executable bits + cp -a lib/* "${D}/usr/$(get_libdir)/one/" || die "copying lib files failed" + + insinto /usr/share/doc/${PF} + doins -r share/examples + + dodir /var/lib/one + dodir /var/lib/one/vms + dodir /usr/share/one + dodir /etc/tmpfiles.d + # we have to preserve the executable bits + cp -a var/remotes "${D}/var/lib/one/" || die "copying remotes failed" + cp -a share/* "${D}/usr/share/one/" || die "copying share failed" + + doenvd "${FILESDIR}/99one" + + newinitd "${FILESDIR}/opennebula.initd" opennebula + newinitd "${FILESDIR}/sunstone-server.initd" sunstone-server + newinitd "${FILESDIR}/oneflow-server.initd" oneflow-server + newconfd "${FILESDIR}/opennebula.confd" opennebula + newconfd "${FILESDIR}/sunstone-server.confd" sunstone-server + newconfd "${FILESDIR}/oneflow-server.confd" oneflow-server + + use systemd && systemd_dounit "${FILESDIR}"/opennebula{,-sunstone,-econe,-oneflow,-onegate}.service + + insinto /etc/one + insopts -m 0640 + doins -r etc/* + doins "${FILESDIR}/one_auth" + + insinto /etc/tmpfiles.d + doins "${FILESDIR}/tmpfilesd.opennebula.conf" + +} + +pkg_postinst() { + + + chown -R oneadmin:oneadmin ${ROOT}var/{lock,lib,log,run,tmp}/one + chown -R oneadmin:oneadmin ${ROOT}usr/share/one + chown -R oneadmin:oneadmin ${ROOT}etc/one + chown -R oneadmin:oneadmin ${ROOT}usr/lib/one + + local onedir="${EROOT}var/lib/one" + if [ ! -d "${onedir}/.ssh" ] ; then + einfo "Generating ssh-key..." + umask 0027 || die "setting umask failed" + mkdir "${onedir}/.ssh" || die "creating ssh directory failed" + ssh-keygen -q -t dsa -N "" -f "${onedir}/.ssh/id_dsa" || die "ssh-keygen failed" + cat > "${onedir}/.ssh/config" <<EOF +UserKnownHostsFile /dev/null +Host * + StrictHostKeyChecking no +EOF + cat "${onedir}/.ssh/id_dsa.pub" >> "${onedir}/.ssh/authorized_keys" || die "adding key failed" + chown -R ${ONEUSER}:${ONEGROUP} "${onedir}/.ssh" || die "changing owner failed" + fi + + if use qemu ; then + elog "Make sure that the user ${ONEUSER} has access to the libvirt control socket" + elog " /var/run/libvirt/libvirt-sock" + elog "You can easily check this by executing the following command as ${ONEUSER} user" + elog " virsh -c qemu:///system nodeinfo" + elog "If not using using policykit in libvirt, the file you should take a look at is:" + elog " /etc/libvirt/libvirtd.conf (look for the unix_sock_*_perms parameters)" + elog "Failure to do so may lead to nodes hanging in PENDING state forever without further notice." + echo "" + elog "Should a node hang in PENDING state even with correct permissions, try the following to get more information." + elog "In /tmp/one-im execute the following command for the biggest one_im-* file:" + elog " ruby -wd one_im-???" + echo "" + elog "OpenNebula doesn't allow you to specify the disc format." + elog "Unfortunately the default in libvirt is not to guess and" + elog "it therefores assumes a 'raw' format when using qemu/kvm." + elog "Set 'allow_disk_format_probing = 0' in /etc/libvirt/qemu.conf" + elog "to work around this until OpenNebula fixes it." + fi + + elog "If you wish to use the sunstone server, please issue the command" + #elog "/usr/share/one/install_gems as oneadmin user" + elog "gem install sequel thin json rack sinatra builder treetop zendesk_api mysql parse-cron" + + +} +