#!/bin/sh # # 2011 Steven Armstrong (steven-cdist at armstrong.cc) # # This file is part of cdist. # # cdist is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # cdist is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with cdist. If not, see . # device="$(cat "$__object/parameter/device")" type="$(cat "$__object/parameter/type")" # show command output in debug mode cat << DONE __debug=$__cdist_debug if [ "\$__debug" != "yes" ]; then # Link file descriptor #6 with stdout exec 6>&1 # redirect all output to /dev/null exec > /dev/null fi DONE case "$type" in swap) echo "mkswap $device" ;; xfs) command="mkfs.xfs -f -q" if [ -f "$__object/parameter/options" ]; then options="$(cat "$__object/parameter/options")" command="$command $options" fi command="$command $device" if [ -f "$__object/parameter/blocks" ]; then blocks="$(cat "$__object/parameter/blocks")" command="$command $blocks" fi echo "$command" ;; *) command="mkfs -t $type -q" if [ -f "$__object/parameter/options" ]; then options="$(cat "$__object/parameter/options")" command="$command $options" fi command="$command $device" if [ -f "$__object/parameter/blocks" ]; then blocks="$(cat "$__object/parameter/blocks")" command="$command $blocks" fi echo "$command" esac cat << DONE if [ "\$__debug" != "yes" ]; then # Restore stdout and close file descriptor #6. exec 1>&6 6>&- fi DONE