For lxc-ls without --active, only output a directory in lxc_path if it
contains a file named config. This avoids extra directories that may
exist in lxc_path, for example .snapshot if lxc_path is an nfs mount.

For lxc-ls with --active, don't output . if there are no active
containers.

Signed-off-by: Dwight Engen <dwight.en...@oracle.com>
---
 src/lxc/legacy/lxc-ls.in | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/lxc/legacy/lxc-ls.in b/src/lxc/legacy/lxc-ls.in
index ec73c8f..c0147c7 100644
--- a/src/lxc/legacy/lxc-ls.in
+++ b/src/lxc/legacy/lxc-ls.in
@@ -85,7 +85,14 @@ done
 
 containers=""
 if [ ! -z "$directory" ]; then
-       containers=$(find $directory -mindepth 1 -maxdepth 1 -type d 
2>/dev/null | sed 's:.*/::')
+       if [ x"$parent_cgroup" = x ]; then
+               containers=$(find $directory -mindepth 2 -maxdepth 2 -name 
config -type f |awk -F "/" '{print $(NF-1)}')
+       else
+               containers=$(find $directory -mindepth 1 -maxdepth 1 -type d 
2>/dev/null | sed 's:.*/::')
+       fi
+       if [ x"$containers" = x ]; then
+               exit 0
+       fi
 fi
 
 cd "$directory"
-- 
1.7.12.3


------------------------------------------------------------------------------
Free Next-Gen Firewall Hardware Offer
Buy your Sophos next-gen firewall before the end March 2013 
and get the hardware for free! Learn more.
http://p.sf.net/sfu/sophos-d2d-feb
_______________________________________________
Lxc-devel mailing list
Lxc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lxc-devel

Reply via email to