new Xen 3.1 ebuilds
This commit is contained in:
		
							
								
								
									
										3
									
								
								app-emulation/xen-tools/files/digest-xen-tools-3.1.0
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								app-emulation/xen-tools/files/digest-xen-tools-3.1.0
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | ||||
| MD5 b7ae1f652b071862ae4c90b72d549627 xen-3.1.0-src.tgz 6831094 | ||||
| RMD160 2fd65a3b81e522d0ed2d62fd11e5977167f1ceb3 xen-3.1.0-src.tgz 6831094 | ||||
| SHA256 b5d7cea6deeee1439e8883fed4b3f1a8e4f675b4af8148178721f99bd76676b7 xen-3.1.0-src.tgz 6831094 | ||||
							
								
								
									
										22
									
								
								app-emulation/xen-tools/files/python-path.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								app-emulation/xen-tools/files/python-path.patch
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,22 @@ | ||||
| --- xen-3.1.0-src/tools/misc/xen-python-path	2007-05-18 16:45:21.000000000 +0200 | ||||
| +++ xen-3.1.0-src/tools/misc/xen-python-path.new	2007-05-21 14:24:56.000000000 +0200 | ||||
| @@ -30,12 +30,13 @@ | ||||
|   | ||||
|  for p in ['python%s' % sys.version[:3], 'python']: | ||||
|      for l in ['/usr/lib64', '/usr/lib']: | ||||
| -        d = os.path.join(l, p) | ||||
| -        if os.path.exists(os.path.join(d, AUXBIN)): | ||||
| -            sys.path.append(d) | ||||
| -            import xen.util.auxbin | ||||
| -            print os.path.join(xen.util.auxbin.libpath(), p) | ||||
| -            sys.exit(0) | ||||
| +        for k in  ['', 'site-packages/']: | ||||
| +            d = os.path.join(l, p, k) | ||||
| +            if os.path.exists(os.path.join(d, AUXBIN)): | ||||
| +                sys.path.append(d) | ||||
| +                import xen.util.auxbin | ||||
| +                print os.path.join(xen.util.auxbin.libpath(), p) | ||||
| +                sys.exit(0) | ||||
|   | ||||
|  print >>sys.stderr, "Cannot find Xen Python modules." | ||||
|  sys.exit(1) | ||||
							
								
								
									
										5
									
								
								app-emulation/xen-tools/files/xen-consoles.logrotate
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								app-emulation/xen-tools/files/xen-consoles.logrotate
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| /var/log/xen-consoles/*.log { | ||||
| 	rotate 7 | ||||
| 	missingok | ||||
| 	compress | ||||
| } | ||||
							
								
								
									
										42
									
								
								app-emulation/xen-tools/files/xend-init
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								app-emulation/xen-tools/files/xend-init
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,42 @@ | ||||
| #!/sbin/runscript | ||||
| # Copyright 1999-2005 Gentoo Foundation | ||||
| # Distributed under the terms of the GNU General Public License v2 | ||||
| # $Header: /var/cvsroot/gentoo-x86/app-emulation/xen-tools/files/xend-init,v 1.1 2006/03/24 23:55:01 agriffis Exp $ | ||||
|  | ||||
| opts="start stop status restart" | ||||
|  | ||||
| depend() { | ||||
| 	need net | ||||
| 	before xendomains sshd ntpd nfs nfsmount rsyncd portmap dhcp | ||||
| } | ||||
|  | ||||
| await_daemons_up() { | ||||
| 	for ((i=0; i<5; i++)); do | ||||
| 		sleep 1 | ||||
| 		/usr/sbin/xend status && return 0 | ||||
| 	done | ||||
| 	return 1 | ||||
| } | ||||
|  | ||||
| start() { | ||||
| 	ebegin "Starting Xen control daemon" | ||||
| 	/usr/sbin/xend start | ||||
| 	/usr/sbin/xend status || await_daemons_up | ||||
| 	eend $? | ||||
| } | ||||
|  | ||||
| stop() { | ||||
| 	if [ "$(xm list | wc -l)" -gt 2 ]; then | ||||
| 		ebegin "  Stopping all domains" | ||||
| 		/usr/sbin/xm shutdown --all --wait >/dev/null | ||||
| 		eend $? | ||||
| 	fi | ||||
|  | ||||
| 	ebegin "Stopping Xen control daemon" | ||||
| 	/usr/sbin/xend stop | ||||
| 	eend $? | ||||
| } | ||||
|  | ||||
| status() { | ||||
| 	/usr/sbin/xend status | ||||
| } | ||||
							
								
								
									
										61
									
								
								app-emulation/xen-tools/files/xend.initd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								app-emulation/xen-tools/files/xend.initd
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,61 @@ | ||||
| #!/sbin/runscript | ||||
| # Copyright 1999-2005 Gentoo Foundation | ||||
| # Distributed under the terms of the GNU General Public License v2 | ||||
| # $Header: /var/cvsroot/gentoo-x86/app-emulation/xen-tools/files/xend.initd,v 1.1 2007/05/02 04:10:04 marineam Exp $ | ||||
|  | ||||
| opts="start stop status restart" | ||||
|  | ||||
| depend() { | ||||
| 	need net | ||||
| 	before xendomains sshd ntp-client ntpd nfs nfsmount rsyncd portmap dhcp | ||||
| } | ||||
|  | ||||
| await_daemons_up() { | ||||
| 	for ((i=0; i<5; i++)); do | ||||
| 		sleep 1 | ||||
| 		/usr/sbin/xend status && return 0 | ||||
| 	done | ||||
| 	return 1 | ||||
| } | ||||
|  | ||||
| is_privileged_domain() { | ||||
| 	grep -qsE '^control_d$' /proc/xen/capabilities | ||||
| 	return $? | ||||
| } | ||||
|  | ||||
| start() { | ||||
| 	if is_privileged_domain ; then | ||||
| 		ebegin "Starting Xen control daemon" | ||||
| 		/usr/sbin/xend start | ||||
| 		/usr/sbin/xend status || await_daemons_up | ||||
| 		eend $? | ||||
| 	else | ||||
| 		eerror "Can't start xend - this is not a privileged domain." | ||||
| 		return 1 | ||||
| 	fi | ||||
| } | ||||
|  | ||||
| stop() { | ||||
| 	if [ "$(xm list | wc -l)" -gt 2 ]; then | ||||
| 		ebegin "  Stopping all domains" | ||||
| 		/usr/sbin/xm shutdown --all --wait >/dev/null | ||||
| 		eend $? | ||||
| 	fi | ||||
|  | ||||
| 	ebegin "Stopping Xen control daemon" | ||||
| 	/usr/sbin/xend stop | ||||
| 	eend $? | ||||
|  | ||||
| 	# This needs more testing (bug #149321) | ||||
| 	#ebegin "Stopping xenconsoled" | ||||
| 	#kill $(</var/run/xenconsoled.pid) | ||||
| 	#eend $? | ||||
|  | ||||
| 	#ebegin "Stopping xenstored" | ||||
| 	#kill $(</var/run/xenstore.pid) | ||||
| 	#eend $? | ||||
| } | ||||
|  | ||||
| status() { | ||||
| 	is_privileged_domain && /usr/sbin/xend status | ||||
| } | ||||
							
								
								
									
										15
									
								
								app-emulation/xen-tools/files/xendomains-screen.confd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app-emulation/xen-tools/files/xendomains-screen.confd
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | ||||
| # When SCREEN="yes", domains in AUTODIR have their consoles connected to a | ||||
| # screen session named SCREEN_NAME, with output logged to individual files  | ||||
| # named after each domain and written to /var/log/xen-consoles/ . These files | ||||
| # are rotated (using app-admin/logrotate) every time xendomains is started. | ||||
|  | ||||
| SCREEN="yes" | ||||
| SCREEN_NAME="xen" | ||||
|  | ||||
| # Number of seconds between writes to screen's logfiles. | ||||
| # | ||||
| # Lower values mean more disk activity and hence a possible performance | ||||
| # impact, but higher values mean a greater chance of loosing some output | ||||
| # in the event of a crash. | ||||
|  | ||||
| SCREEN_LOG_INTERVAL="1" | ||||
							
								
								
									
										7
									
								
								app-emulation/xen-tools/files/xendomains.confd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								app-emulation/xen-tools/files/xendomains.confd
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,7 @@ | ||||
| # /etc/conf.d/xendomains | ||||
|  | ||||
| # Directory of domains to boot. AUTODIR should contain one or more symlinks | ||||
| # to domain config files in /etc/xen | ||||
|  | ||||
| AUTODIR=/etc/xen/auto | ||||
|  | ||||
							
								
								
									
										96
									
								
								app-emulation/xen-tools/files/xendomains.initd
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										96
									
								
								app-emulation/xen-tools/files/xendomains.initd
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,96 @@ | ||||
| #!/sbin/runscript | ||||
| # Copyright 1999-2006 Gentoo Foundation | ||||
| # Distributed under the terms of the GNU General Public License v2 | ||||
| # $Header: /var/cvsroot/gentoo-x86/app-emulation/xen-tools/files/xendomains.initd,v 1.2 2007/05/02 04:10:04 marineam Exp $ | ||||
|  | ||||
| opts="start stop status restart" | ||||
|  | ||||
| depend() { | ||||
| 	need xend | ||||
| 	after dhcp | ||||
| } | ||||
|  | ||||
| get_domname() { | ||||
| 	local name_from_file=$(sed -rn 's/^name\W*=\W*\"?([[:alnum:]_\.-]+)\"?\W*;?/\1/p' "${1}" | tail -n 1) | ||||
|  | ||||
| 	if [[ -z ${name_from_file} ]] ; then | ||||
| 		basename "${1}" | ||||
| 	else | ||||
| 		echo ${name_from_file}	 | ||||
| 	fi | ||||
| } | ||||
|  | ||||
| is_running() { | ||||
| 	/usr/sbin/xm list "${1}" >/dev/null 2>&1 | ||||
| } | ||||
|  | ||||
| using_screen() { | ||||
| 	[[ "${SCREEN}" == "yes" || "${SCREEN}" == "YES" ]]	 | ||||
| } | ||||
|  | ||||
| set_screen_cmd() { | ||||
| 	screen_cmd="screen -q -r ${SCREEN_NAME:=xen} -X" | ||||
| } | ||||
|  | ||||
| start() { | ||||
| 	set_screen_cmd | ||||
|  | ||||
| 	einfo "Starting Xen domains from ${AUTODIR:=/etc/xen/auto}" | ||||
| 	if using_screen ; then | ||||
| 		ebegin "Creating screen session to hold domain consoles" | ||||
| 		(  screen -d -m -S ${SCREEN_NAME} -t dom0 \ | ||||
| 		&& ${screen_cmd} zombie dr \ | ||||
| 		&& logrotate -f /etc/xen/xen-consoles.logrotate \ | ||||
| 		&& ${screen_cmd} logfile  /var/log/xen-consoles/%t.log \ | ||||
| 		&& ${screen_cmd} logfile flush ${SCREEN_LOG_INTERVAL:-1} \ | ||||
| 		&& ${screen_cmd} log on \ | ||||
| 		&& ${screen_cmd} deflog on ) >/dev/null | ||||
| 		if [[ $? -ne 0 ]] ; then | ||||
| 			eend 1 | ||||
| 			return 1 | ||||
| 		else | ||||
| 			eend | ||||
| 		fi | ||||
| 	fi | ||||
| 	# Create all domains with config files in AUTODIR. | ||||
| 	for dom in $(ls "${AUTODIR}/"* 2>/dev/null); do | ||||
| 		name=$(get_domname ${dom}) | ||||
| 		if ! is_running ${name} ; then | ||||
| 			ebegin "  Starting domain ${name}" | ||||
| 			if using_screen ; then | ||||
| 				${screen_cmd} screen -t ${name} xm create ${dom} -c | ||||
| 			else | ||||
| 				xm create --quiet ${dom} | ||||
| 			fi | ||||
| 			eend $? | ||||
| 		else | ||||
| 			einfo "  Not starting domain ${name} - already running" | ||||
| 		fi | ||||
| 	done | ||||
| } | ||||
|  | ||||
| stop() { | ||||
| 	set_screen_cmd | ||||
|  | ||||
| 	einfo "Shutting down Xen domains from ${AUTODIR:=/etc/xen/auto}" | ||||
| 	# Stop all domains with config files in AUTODIR. | ||||
| 	for dom in $(ls "${AUTODIR}/"* 2>/dev/null); do | ||||
| 		name=$(get_domname ${dom}) | ||||
| 		if is_running ${name} ; then | ||||
| 			ebegin "  Stopping domain ${name}" | ||||
| 				xm shutdown --wait ${name} >/dev/null | ||||
| 			eend $? | ||||
| 		else | ||||
| 			einfo "  Not stopping domain ${name} - not running" | ||||
| 		fi | ||||
| 	done | ||||
| 	if using_screen ; then | ||||
| 		ebegin "Closing screen session ${SCREEN_NAME}" | ||||
| 		${screen_cmd} quit | ||||
| 		eend $? | ||||
| 	fi | ||||
| } | ||||
|  | ||||
| status() { | ||||
| 	/usr/sbin/xm list | ||||
| } | ||||
		Reference in New Issue
	
	Block a user