confz

git mirror of https://ccx.te2000.cz/bzr/confz
git clone https://ccx.te2000.cz/git/confz
Log | Files | Refs

commit 9ebda1c33261c94033e61c5e734b7b2639beaf6c
parent 05ff1e9887f4801c2be7d465d5d831a58af99926
Author: Jan Pobrislo <ccx@webprojekty.cz>
Date:   Thu, 19 Jun 2014 21:16:30 +0200

put failures into array
Diffstat:
Mzsh-functions/confz_vserver_init | 14++++++--------
1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/zsh-functions/confz_vserver_init b/zsh-functions/confz_vserver_init @@ -29,17 +29,15 @@ confz_vserver_check() { setvar vdir /vservers/${vars[name]} local ctx ret + local -a fails if [[ -e ${vars[etcdir]}/context ]]; then - if [[ $(<${vars[etcdir]}/context) == ${vars[context_id]} ]]; then - ret=0 - else + if [[ $(<${vars[etcdir]}/context) != ${vars[context_id]} ]]; then die "$0: vserver ${(qqq)vars[name]} " \ "has context different from ${(qqq)vars[context_id]}" fi else - ret=1 - fail_reason="$(<${vars[etcdir]}/context) missing" + fails+=( "$(<${vars[etcdir]}/context) missing" ) for ctx in /etc/vservers/*/context; do if [[ $(<$ctx) == ${vars[context_id]} ]]; then die "$0: context id already used by $ctx" @@ -47,8 +45,7 @@ confz_vserver_check() { done fi if ! [[ -h ${vars[etcdir]}/vdir ]]; then - fail_reason="${vars[etcdir]}/vdir missing" - ret=1 + fails=( "${vars[etcdir]}/vdir missing" ) fi require mounted_volume :size :filesystem \ @@ -58,7 +55,8 @@ confz_vserver_check() { require deployed_system :source path=${vars[vdir]} - return $ret + fail_reason="${(j:,:)fails}" + return $#fails } confz_vserver_do() {