From d2c1f8d33cf0f6f1c67649b9e8d1cf3b3c55058d Mon Sep 17 00:00:00 2001 From: Diego Elio Pettenò Date: Wed, 19 Oct 2011 17:51:49 +0000 Subject: Revision bump to fix two issues with the init script reported by Alexander Y. Fomichev (bug #387675 and #387679). (Portage version: 2.2.0_alpha69/cvs/Linux x86_64) --- app-emulation/lxc/ChangeLog | 9 ++- app-emulation/lxc/files/lxc.initd | 10 ++- app-emulation/lxc/lxc-0.7.5-r2.ebuild | 111 ---------------------------------- app-emulation/lxc/lxc-0.7.5-r3.ebuild | 111 ++++++++++++++++++++++++++++++++++ 4 files changed, 126 insertions(+), 115 deletions(-) delete mode 100644 app-emulation/lxc/lxc-0.7.5-r2.ebuild create mode 100644 app-emulation/lxc/lxc-0.7.5-r3.ebuild (limited to 'app-emulation') diff --git a/app-emulation/lxc/ChangeLog b/app-emulation/lxc/ChangeLog index 992a2ecc8361..01e666fe8b5e 100644 --- a/app-emulation/lxc/ChangeLog +++ b/app-emulation/lxc/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-emulation/lxc # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/ChangeLog,v 1.28 2011/09/28 21:47:46 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/ChangeLog,v 1.29 2011/10/19 17:51:49 flameeyes Exp $ + +*lxc-0.7.5-r3 (19 Oct 2011) + + 19 Oct 2011; Diego E. Pettenò -lxc-0.7.5-r2.ebuild, + +lxc-0.7.5-r3.ebuild, files/lxc.initd: + Revision bump to fix two issues with the init script reported by Alexander Y. + Fomichev (bug #387675 and #387679). *lxc-0.7.5-r2 (28 Sep 2011) diff --git a/app-emulation/lxc/files/lxc.initd b/app-emulation/lxc/files/lxc.initd index 7275826025a1..fd70c72b3879 100644 --- a/app-emulation/lxc/files/lxc.initd +++ b/app-emulation/lxc/files/lxc.initd @@ -1,7 +1,7 @@ #!/sbin/runscript # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/files/lxc.initd,v 1.8 2011/09/28 21:47:46 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/files/lxc.initd,v 1.9 2011/10/19 17:51:48 flameeyes Exp $ CONTAINER=${SVCNAME#*.} @@ -113,15 +113,19 @@ stop() { init_pid=$(lxc-info -n ${CONTAINER} --pid | cut -d: -f 2) + if [ "${init_pid}" = "-1" ]; then + ewarn "${CONTAINER} doesn't seem to be running." + return 0 + fi + ebegin "Shutting down system in ${CONTAINER}" kill -INT ${init_pid} eend $? TIMEOUT=${TIMEOUT:-30} i=0 - while [ -n "${missingprocs}" -a $i -lt ${TIMEOUT} ]; do + while [ -n "$(pgrep -P ${init_pid})" -a $i -lt ${TIMEOUT} ]; do sleep 1 - missingprocs=$(pgrep -P ${init_pid}) i=$(expr $i + 1) done diff --git a/app-emulation/lxc/lxc-0.7.5-r2.ebuild b/app-emulation/lxc/lxc-0.7.5-r2.ebuild deleted file mode 100644 index 991e418a521f..000000000000 --- a/app-emulation/lxc/lxc-0.7.5-r2.ebuild +++ /dev/null @@ -1,111 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/lxc-0.7.5-r2.ebuild,v 1.1 2011/09/28 21:47:46 flameeyes Exp $ - -EAPI="4" - -MY_P="${P/_/-}" - -inherit eutils linux-info versionator flag-o-matic - -DESCRIPTION="LinuX Containers userspace utilities" -HOMEPAGE="http://lxc.sourceforge.net/" -SRC_URI="http://lxc.sourceforge.net/download/lxc/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" - -KEYWORDS="~amd64 ~ppc64 ~x86" - -LICENSE="LGPL-3" -SLOT="0" -IUSE="examples vanilla" - -RDEPEND="sys-libs/libcap" - -DEPEND="${RDEPEND} - app-text/docbook-sgml-utils - >=sys-kernel/linux-headers-2.6.29" - -# For init script, so protect with vanilla, they are not strictly -# needed. -RDEPEND="${RDEPEND} - vanilla? ( - sys-apps/util-linux - app-misc/pax-utils - )" - -CONFIG_CHECK="~CGROUPS - ~CPUSETS ~CGROUP_CPUACCT - ~RESOURCE_COUNTERS ~CGROUP_MEM_RES_CTLR - ~CGROUP_SCHED - - ~NAMESPACES - ~IPC_NS ~USER_NS ~PID_NS - - ~DEVPTS_MULTIPLE_INSTANCES - ~CGROUP_FREEZER - ~UTS_NS ~NET_NS - ~VETH ~MACVLAN" - -ERROR_DEVPTS_MULTIPLE_INSTANCES="CONFIG_DEVPTS_MULTIPLE_INSTANCES: needed for pts inside container" - -ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers" - -ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info" -ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network" - -ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking" -ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking" - -DOCS=(AUTHORS CONTRIBUTING MAINTAINERS NEWS TODO README doc/FAQ.txt) - -src_configure() { - append-flags -fno-strict-aliasing - - econf \ - --localstatedir=/var \ - --bindir=/usr/sbin \ - --docdir=/usr/share/doc/${PF} \ - --with-config-path=/etc/lxc \ - --with-rootfs-path=/usr/lib/lxc/rootfs \ - --with-linuxdir="${KERNEL_DIR}" \ - --enable-doc \ - $(use_enable examples) -} - -src_install() { - default - - rm -r "${D}"/usr/sbin/lxc-{setcap,ls} \ - "${D}"/usr/share/man/man1/lxc-ls.1 \ - || die "unable to remove extraenous content" - - keepdir /etc/lxc /usr/lib/lxc/rootfs - - find "${D}" -name '*.la' -delete - - use vanilla && return 0 - - # Gentoo-specific additions! - newinitd "${FILESDIR}/${PN}.initd" ${PN} - keepdir /var/log/lxc -} - -pkg_postinst() { - if ! use vanilla; then - elog "There is an init script provided with the package now; no documentation" - elog "is currently available though, so please check out /etc/init.d/lxc ." - elog "You _should_ only need to symlink it to /etc/init.d/lxc.configname" - elog "to start the container defined into /etc/lxc/configname.conf ." - elog "For further information about LXC development see" - elog "http://blog.flameeyes.eu/tag/lxc" # remove once proper doc is available - elog "" - fi - ewarn "With version 0.7.4, the mountpoint syntax came back to the one used by 0.7.2" - ewarn "and previous versions. This means you'll have to use syntax like the following" - ewarn "" - ewarn " lxc.rootfs = /container" - ewarn " lxc.mount.entry = /usr/portage /container/usr/portage none bind 0 0" - ewarn "" - ewarn "To use the Fedora, Debian and (various) Ubuntu auto-configuration scripts, you" - ewarn "will need sys-apps/yum or dev-util/debootstrap." -} diff --git a/app-emulation/lxc/lxc-0.7.5-r3.ebuild b/app-emulation/lxc/lxc-0.7.5-r3.ebuild new file mode 100644 index 000000000000..4b0e7913a9f8 --- /dev/null +++ b/app-emulation/lxc/lxc-0.7.5-r3.ebuild @@ -0,0 +1,111 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/lxc-0.7.5-r3.ebuild,v 1.1 2011/10/19 17:51:49 flameeyes Exp $ + +EAPI="4" + +MY_P="${P/_/-}" + +inherit eutils linux-info versionator flag-o-matic + +DESCRIPTION="LinuX Containers userspace utilities" +HOMEPAGE="http://lxc.sourceforge.net/" +SRC_URI="http://lxc.sourceforge.net/download/lxc/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +KEYWORDS="~amd64 ~ppc64 ~x86" + +LICENSE="LGPL-3" +SLOT="0" +IUSE="examples vanilla" + +RDEPEND="sys-libs/libcap" + +DEPEND="${RDEPEND} + app-text/docbook-sgml-utils + >=sys-kernel/linux-headers-2.6.29" + +# For init script, so protect with vanilla, they are not strictly +# needed. +RDEPEND="${RDEPEND} + vanilla? ( + sys-apps/util-linux + app-misc/pax-utils + )" + +CONFIG_CHECK="~CGROUPS + ~CPUSETS ~CGROUP_CPUACCT + ~RESOURCE_COUNTERS ~CGROUP_MEM_RES_CTLR + ~CGROUP_SCHED + + ~NAMESPACES + ~IPC_NS ~USER_NS ~PID_NS + + ~DEVPTS_MULTIPLE_INSTANCES + ~CGROUP_FREEZER + ~UTS_NS ~NET_NS + ~VETH ~MACVLAN" + +ERROR_DEVPTS_MULTIPLE_INSTANCES="CONFIG_DEVPTS_MULTIPLE_INSTANCES: needed for pts inside container" + +ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers" + +ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info" +ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network" + +ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking" +ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking" + +DOCS=(AUTHORS CONTRIBUTING MAINTAINERS NEWS TODO README doc/FAQ.txt) + +src_configure() { + append-flags -fno-strict-aliasing + + econf \ + --localstatedir=/var \ + --bindir=/usr/sbin \ + --docdir=/usr/share/doc/${PF} \ + --with-config-path=/etc/lxc \ + --with-rootfs-path=/usr/lib/lxc/rootfs \ + --with-linuxdir="${KERNEL_DIR}" \ + --enable-doc \ + $(use_enable examples) +} + +src_install() { + default + + rm -r "${D}"/usr/sbin/lxc-{setcap,ls} \ + "${D}"/usr/share/man/man1/lxc-ls.1 \ + || die "unable to remove extraenous content" + + keepdir /etc/lxc /usr/lib/lxc/rootfs + + find "${D}" -name '*.la' -delete + + use vanilla && return 0 + + # Gentoo-specific additions! + newinitd "${FILESDIR}/${PN}.initd" ${PN} + keepdir /var/log/lxc +} + +pkg_postinst() { + if ! use vanilla; then + elog "There is an init script provided with the package now; no documentation" + elog "is currently available though, so please check out /etc/init.d/lxc ." + elog "You _should_ only need to symlink it to /etc/init.d/lxc.configname" + elog "to start the container defined into /etc/lxc/configname.conf ." + elog "For further information about LXC development see" + elog "http://blog.flameeyes.eu/tag/lxc" # remove once proper doc is available + elog "" + fi + ewarn "With version 0.7.4, the mountpoint syntax came back to the one used by 0.7.2" + ewarn "and previous versions. This means you'll have to use syntax like the following" + ewarn "" + ewarn " lxc.rootfs = /container" + ewarn " lxc.mount.entry = /usr/portage /container/usr/portage none bind 0 0" + ewarn "" + ewarn "To use the Fedora, Debian and (various) Ubuntu auto-configuration scripts, you" + ewarn "will need sys-apps/yum or dev-util/debootstrap." +} -- cgit v1.2.3-65-gdbad