#!/bin/sh # # OCF RA for User Mode Linux (UML) guests # # Copyright (c) 2007-2009 Barton IT-Consulting # Copyright (c) 2004 SUSE LINUX AG, Lars Marowsky-Brée # All Rights Reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of version 2 of the GNU General Public License as # published by the Free Software Foundation. # # This program is distributed in the hope that it would be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # # Further, this software is distributed without any warranty that it is # free of the rightful claim of any third person regarding infringement # or the like. Any license provided herein, whether implied or # otherwise, applies only to this software file. Patent licenses, if # any, provided herein do not apply to combinations of this program with # other software, or any other product whatsoever. # # You should have received a copy of the GNU General Public License # along with this program; if not, write the Free Software Foundation, # Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. # # Initialization: . ${OCF_ROOT}/resource.d/heartbeat/.ocf-shellfuncs export PATH="$PATH:/opt/uml/bin" # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - meta_data() { cat < 1.1 This Resource Agent starts and stops User Mode Linux (UML) guests. User Mode Linux (UML) resource agent ID of the UML guest ID of the UML guest END } # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - UML_usage() { echo "usage: $0 {start|stop|monitor|validate-all|meta-data}" } UML_start() { uml-start "$OCF_RESKEY_umlid" if [ $? = $OCF_SUCCESS ]; then return $OCF_SUCCESS fi return $OCF_ERR_GENERIC } UML_stop() { uml-stop "$OCF_RESKEY_umlid" if [ $? = $OCF_SUCCESS ]; then return $OCF_SUCCESS fi return $OCF_ERR_GENERIC } UML_monitor() { uml-list "$OCF_RESKEY_umlid" if [ $? = $OCF_SUCCESS ]; then return $OCF_SUCCESS fi return $OCF_NOT_RUNNING } UML_validate() { if [ -z "$OCF_RESKEY_umid" ]; then return $OCF_ERR_ARGS fi return $OCF_SUCCESS } case $__OCF_ACTION in meta-data) meta_data exit $OCF_SUCCESS ;; start) UML_start ;; stop) UML_stop ;; monitor) UML_monitor ;; validate-all) UML_validate ;; usage|help) UML_usage exit $OCF_SUCCESS ;; *) UML_usage exit $OCF_ERR_UNIMPLEMENTED ;; esac rc=$? ocf_log debug "${OCF_RESOURCE_INSTANCE} $__OCF_ACTION : $rc" exit $rc # -eof-