public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/openrc:openrc-0.13.x commit in: sh/
@ 2014-10-16 17:41 William Hubbs
  0 siblings, 0 replies; 5+ messages in thread
From: William Hubbs @ 2014-10-16 17:41 UTC (permalink / raw
  To: gentoo-commits

commit:     43d727dc3f17bc9a1d020ed2a5684d4a26bb620a
Author:     Andrew Gregory <andrew.gregory.8 <AT> gmail <DOT> com>
AuthorDate: Mon Aug 25 19:46:28 2014 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Oct 13 20:39:36 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=43d727dc

tmpfiles.sh: add support for C action

Recursively copies files or directories.  Added by systemd in 849958d1.

---
 sh/tmpfiles.sh.in | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/sh/tmpfiles.sh.in b/sh/tmpfiles.sh.in
index 41f86cf..6e7be42 100755
--- a/sh/tmpfiles.sh.in
+++ b/sh/tmpfiles.sh.in
@@ -80,6 +80,17 @@ _c() {
 	fi
 }
 
+_C() {
+	# recursively copy a file or directory
+	local path=$1 mode=$2 uid=$3 gid=$4 age=$5 arg=$6
+	if [ ! -e "$path" ]; then
+		dryrun_or_real cp -r "$arg" "$path"
+		_restorecon "$path"
+		[ $uid != '-' ] && dryrun_or_real chown "$uid" "$path"
+		[ $gid != '-' ] && dryrun_or_real chgrp "$gid" "$path"
+		[ $mode != '-' ] && dryrun_or_real chmod "$mode" "$path"
+	fi
+}
 
 _f() {
 	# Create a file if it doesn't exist yet
@@ -325,7 +336,7 @@ for FILE in $tmpfiles_d ; do
 
 		# whine about invalid entries
 		case $cmd in
-			f|F|w|d|D|p|L|c|b|x|X|r|R|z|Z) ;;
+			f|F|w|d|D|p|L|c|C|b|x|X|r|R|z|Z) ;;
 			*) warninvalid ; continue ;;
 		esac
 
@@ -334,7 +345,7 @@ for FILE in $tmpfiles_d ; do
 			case "$cmd" in
 				p|f|F) mode=0644 ;;
 				d|D) mode=0755 ;;
-				z|Z|x|r|R|L) ;;
+				C|z|Z|x|r|R|L) ;;
 			esac
 		fi
 


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] proj/openrc:openrc-0.13.x commit in: sh/
@ 2014-10-16 17:41 William Hubbs
  0 siblings, 0 replies; 5+ messages in thread
From: William Hubbs @ 2014-10-16 17:41 UTC (permalink / raw
  To: gentoo-commits

commit:     082fd53d9e634318e87e2cb1f2ccc7bf12bf09df
Author:     William Hubbs <w.d.hubbs <AT> gmail <DOT> com>
AuthorDate: Thu Sep 11 17:02:51 2014 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Oct 13 20:40:54 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=082fd53d

runscript: move verbose mode setting near debug setting

---
 sh/runscript.sh.in | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/sh/runscript.sh.in b/sh/runscript.sh.in
index 9b2ae0e..d4c7c60 100644
--- a/sh/runscript.sh.in
+++ b/sh/runscript.sh.in
@@ -185,6 +185,10 @@ status()
 }
 
 yesno $RC_DEBUG && set -x
+if yesno "${rc_verbose:-$RC_VERBOSE}"; then
+	EINFO_VERBOSE=yes
+	export EINFO_VERBOSE
+fi
 
 _conf_d=${RC_SERVICE%/*}/../conf.d
 # If we're net.eth0 or openvpn.work then load net or openvpn config
@@ -208,12 +212,6 @@ sourcex -e "@SYSCONFDIR@/rc.conf"
 # Apply any ulimit defined
 [ -n "${rc_ulimit:-$RC_ULIMIT}" ] && ulimit ${rc_ulimit:-$RC_ULIMIT}
 
-# Set verbose mode
-if yesno "${rc_verbose:-$RC_VERBOSE}"; then
-	EINFO_VERBOSE=yes
-	export EINFO_VERBOSE
-fi
-
 # Apply cgroups settings if defined
 if [ "$1" = "start" ] ; then
 	if [ "$(command -v cgroup_add_service)" = "cgroup_add_service" ]; then


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] proj/openrc:openrc-0.13.x commit in: sh/
@ 2014-10-16 17:41 William Hubbs
  0 siblings, 0 replies; 5+ messages in thread
From: William Hubbs @ 2014-10-16 17:41 UTC (permalink / raw
  To: gentoo-commits

commit:     a2187e897e3c0fc9a29adb0b81a57f2b718e74c5
Author:     Roy Marples <roy <AT> marples <DOT> name>
AuthorDate: Thu Sep 11 18:26:58 2014 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Oct 16 16:09:36 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=a2187e89

Use exception-based approach for cgroup/ulimit setup

Note from William Hubbs:
I spoke with Roy about this, and he pointed out that user-defined
functions may need the limits applied, so it is better to go with a
method that uses exceptions to determine which functions apply the
limits.

X-Gentoo-Bug: 522408
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=522408

---
 sh/runscript.sh.in | 34 ++++++++++++++++++++++------------
 1 file changed, 22 insertions(+), 12 deletions(-)

diff --git a/sh/runscript.sh.in b/sh/runscript.sh.in
index d4c7c60..b89c460 100644
--- a/sh/runscript.sh.in
+++ b/sh/runscript.sh.in
@@ -209,19 +209,29 @@ unset _conf_d
 # Load any system overrides
 sourcex -e "@SYSCONFDIR@/rc.conf"
 
-# Apply any ulimit defined
-[ -n "${rc_ulimit:-$RC_ULIMIT}" ] && ulimit ${rc_ulimit:-$RC_ULIMIT}
-
-# Apply cgroups settings if defined
-if [ "$1" = "start" ] ; then
-	if [ "$(command -v cgroup_add_service)" = "cgroup_add_service" ]; then
-		cgroup_add_service /sys/fs/cgroup/openrc
-		cgroup_add_service /sys/fs/cgroup/systemd/system
+for _cmd; do
+	if [ "$_cmd" != status -a "$_cmd" != describe ]; then
+		# Apply any ulimit defined
+		[ -n "${rc_ulimit:-$RC_ULIMIT}" ] && \
+			ulimit ${rc_ulimit:-$RC_ULIMIT}
+		# Apply cgroups settings if defined
+		if [ "$(command -v cgroup_add_service)" = \
+		    "cgroup_add_service" ]
+		then
+			if [ -d /sys/fs/cgroup -a ! -w /sys/fs/cgroup ]; then
+				eerror "No permission to apply cgroup settings"
+				break
+			fi
+			cgroup_add_service /sys/fs/cgroup/openrc
+			cgroup_add_service /sys/fs/cgroup/systemd/system
+		fi
+		[ "$(command -v cgroup_set_limits)" = \
+		    "cgroup_set_limits" ] && \
+		    cgroup_set_limits
+		break
 	fi
-	[ "$(command -v cgroup_set_limits)" = "cgroup_set_limits" ] && \
-		cgroup_set_limits
-fi
-
+done
+ 
 # Load our script
 sourcex "$RC_SERVICE"
 


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] proj/openrc:openrc-0.13.x commit in: sh/
@ 2014-10-16 17:41 William Hubbs
  0 siblings, 0 replies; 5+ messages in thread
From: William Hubbs @ 2014-10-16 17:41 UTC (permalink / raw
  To: gentoo-commits

commit:     b8e52583ca590d0f956acea0ec558e84495e3818
Author:     Andrew Gregory <andrew.gregory.8 <AT> gmail <DOT> com>
AuthorDate: Mon Aug 25 19:37:45 2014 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Oct 13 20:39:22 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=b8e52583

tmpfiles.sh: add support for + modifier

systemd added support for b+, c+, p+, and L+ in 2e78fa79 and 1554afae to
remove the target path if it already exists.

---
 sh/tmpfiles.sh.in | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/sh/tmpfiles.sh.in b/sh/tmpfiles.sh.in
index 42a3639..41f86cf 100755
--- a/sh/tmpfiles.sh.in
+++ b/sh/tmpfiles.sh.in
@@ -304,6 +304,7 @@ for FILE in $tmpfiles_d ; do
 	# But IS allowed when globs are expanded for the x/r/R/z/Z types.
 	while read cmd path mode uid gid age arg; do
 		LINENUM=$(( LINENUM+1 ))
+		FORCE=0
 
 		# Unless we have both command and path, skip this line.
 		if [ -z "$cmd" -o -z "$path" ]; then
@@ -311,13 +312,20 @@ for FILE in $tmpfiles_d ; do
 		fi
 
 		case $cmd in
-			*!) [ "$BOOT" -eq "1" ] || continue; cmd=${cmd%!} ;;
+			\#*) continue ;;
 		esac
 
+		while [ ${#cmd} -gt 1 ]; do
+			case $cmd in
+				*!) cmd=${cmd%!}; [ "$BOOT" -eq "1" ] || continue 2 ;;
+				*+) cmd=${cmd%+}; FORCE=1; ;;
+				*) warninvalid ; continue 2 ;;
+			esac
+		done
+
 		# whine about invalid entries
 		case $cmd in
 			f|F|w|d|D|p|L|c|b|x|X|r|R|z|Z) ;;
-			\#*) continue ;;
 			*) warninvalid ; continue ;;
 		esac
 
@@ -338,6 +346,13 @@ for FILE in $tmpfiles_d ; do
 
 		[ -n "$EXCLUDE" ] && checkprefix $path $EXCLUDE && continue
 		[ -n "$PREFIX" ] && ! checkprefix $path $PREFIX && continue
+
+		if [ $FORCE -gt 0 ]; then
+			case $cmd in
+				p|L|c|b) [ -f "$path" ] && dryrun_or_real rm -f "$path"
+			esac
+		fi
+
 		[ "$VERBOSE" -eq "1" ] && echo _$cmd "$@"
 		_$cmd "$@"
 		rc=$?


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] proj/openrc:openrc-0.13.x commit in: sh/
@ 2015-01-15 16:01 William Hubbs
  0 siblings, 0 replies; 5+ messages in thread
From: William Hubbs @ 2015-01-15 16:01 UTC (permalink / raw
  To: gentoo-commits

commit:     50329eee7a126dd1e961d8fb823e5f35f515a143
Author:     William Hubbs <w.d.hubbs <AT> gmail <DOT> com>
AuthorDate: Mon Jan 12 20:37:10 2015 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Jan 13 07:07:02 2015 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=50329eee

Add description for cgroup_cleanup

X-Gentoo-Bug: 535184
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=535184

---
 sh/rc-cgroup.sh.in | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sh/rc-cgroup.sh.in b/sh/rc-cgroup.sh.in
index b635340..0426026 100644
--- a/sh/rc-cgroup.sh.in
+++ b/sh/rc-cgroup.sh.in
@@ -2,6 +2,7 @@
 # Copyright (c) 2012 Alexander Vershilov <qnikst@gentoo.org>
 # Released under the 2-clause BSD license.
 extra_stopped_commands="${extra_stopped_commands} cgroup_cleanup"
+description_cgroup_cleanup="Kill all processes in the cgroup"
 
 cgroup_find_path()
 {


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-01-15 16:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-10-16 17:41 [gentoo-commits] proj/openrc:openrc-0.13.x commit in: sh/ William Hubbs
  -- strict thread matches above, loose matches on Subject: below --
2015-01-15 16:01 William Hubbs
2014-10-16 17:41 William Hubbs
2014-10-16 17:41 William Hubbs
2014-10-16 17:41 William Hubbs

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox