From fd595cd1d837e2f001aa35088d35adb74a9196bf Mon Sep 17 00:00:00 2001 From: Peter Palfrader Date: Sun, 7 Apr 2013 20:26:25 +0200 Subject: [PATCH] static-update-component: support a -f to override host/srcdir checks --- .../static-update-component.erb | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/modules/roles/templates/static-mirroring/static-update-component.erb b/modules/roles/templates/static-mirroring/static-update-component.erb index 7dbad820..ed214e58 100755 --- a/modules/roles/templates/static-mirroring/static-update-component.erb +++ b/modules/roles/templates/static-mirroring/static-update-component.erb @@ -21,14 +21,23 @@ # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +usage() { + echo >&2 "Usage: $0 [-f] " + exit 1 +} + componentlist=/etc/static-components.conf -if [ "$#" != 1 ]; then - echo >&2 "Usage: $0 " - exit 1 +if [ "$#" = 1 ]; then + component="$1" +elif [ "$#" = 2 ]; then + if [ "$1" = "-f" ]; then force=1 + else usage; fi + component="$2" +else + usage fi -component="$1" if [ "${component%/*}" != "$component" ] ; then echo >&2 "$0: Invalid component: $component"; @@ -42,18 +51,18 @@ if [ -z "$srchost" ] || [ -z "$srcdir" ]; then exit 1 fi -if ! [ "$srchost" = "`hostname -f`" ]; then +if ! [ "$srchost" = "`hostname -f`" ] && ! [ "$force" = 1 ]; then echo >&2 "Component $component is sourced from $srchost, not this host." exit 1 fi -if ! [ -d "$srcdir" ]; then +if ! [ -d "$srcdir" ] && ! [ "$force" = 1 ]; then echo >&2 "Component source directory $srcdir does not exist or is not a directory, or is not accessible." exit 1 fi if [ "`id -nu`" != "staticsync" ]; then - sudo -u staticsync static-update-component "$component" + sudo -u staticsync static-update-component "$@" else masters=() <%= -- 2.39.2