Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > d3dc5610bb3aa42f82734268acffc3b0 > files > 8

ovirt-node-2.0.0-1.fc16.noarch.rpm

#!/bin/bash
#
# ovirt Start ovirt services
#
### BEGIN INIT INFO
# Provides: ovirt
# Required-Start: ovirt-awake
# Default-Start: 2 3 4 5
# Description: Performs managed node configuration functions.
### END INIT INFO

# Source functions library
. /etc/init.d/functions
. /usr/libexec/ovirt-functions

prog=ovirt
VAR_SUBSYS_OVIRT=/var/lock/subsys/$prog

ovirt_start() {
    if is_standalone; then
        return 0
    fi
    find_srv ipa tcp
    if [ -n "$SRV_HOST" -a -n "$SRV_PORT" ]; then
        krb5_conf=/etc/krb5.conf
        # FIXME this is IPA specific
        wget -q --no-check-certificate \
            http://$SRV_HOST:$SRV_PORT/ipa/config/krb5.ini -O $krb5_conf.tmp
        if [ $? -ne 0 ]; then
            log "Failed to get $krb5_conf"; return 1
        fi
        mv $krb5_conf.tmp $krb5_conf
    else
        log "skipping Kerberos configuration"
    fi


    find_srv collectd udp
    if [ -n "$SRV_HOST" -a -n "$SRV_PORT" ]; then
        collectd_conf=/etc/collectd.conf
        if [ -f $collectd_conf.in ]; then
            sed -e "s/@COLLECTD_SERVER@/$SRV_HOST/" \
                -e "s/@COLLECTD_PORT@/$SRV_PORT/" \
                -e "/<Plugin rrdtool>/,/<\/Plugin>/d" $collectd_conf.in \
                > $collectd_conf
            if [ $? -ne 0 ]; then
                log "Failed to write $collectd_conf"; return 1
            fi
        fi
    else
        log "skipping collectd configuration, collectd service not available"
    fi

    find_srv qpidd tcp
    if [ -n "$SRV_HOST" -a -n "$SRV_PORT" ]; then
        libvirt_qpid_conf=/etc/sysconfig/libvirt-qpid
        if [ -f $libvirt_qpid_conf ]; then
            echo "LIBVIRT_QPID_ARGS=\"--broker $SRV_HOST --port $SRV_PORT\"" >> $libvirt_qpid_conf
            echo "/usr/kerberos/bin/kinit -k -t /etc/libvirt/krb5.tab qpidd/`hostname`" >> $libvirt_qpid_conf
        fi
        matahari_conf=/etc/sysconfig/matahari
        if [ -f $matahari_conf ]; then
            echo "MATAHARI_ARGS=\"--broker $SRV_HOST --port $SRV_PORT\"" >> $matahari_conf
            echo "/usr/kerberos/bin/kinit -k -t /etc/libvirt/krb5.tab qpidd/`hostname`" >> $matahari_conf
        fi
    else
        log "skipping libvirt-qpid and matahari configuration, could not find $libvirt_qpid_conf"
    fi
}

start_ovirt () {
    touch $VAR_SUBSYS_OVIRT
    case $OVIRT_RUNTIME_MODE in
        "ovirt")
            ovirt_start
            ;;
        "managed")
            if [ -x $MANAGEMENT_SCRIPTS_DIR/ready ]; then
                log "Executing $MANAGEMENT_SCRIPTS_DIR/ready."
                $MANAGEMENT_SCRIPTS_DIR/ready
                RC=$?
            else
                log "No script to perform node activation."
            fi
    esac
    rm -f $VAR_SUBSYS_OVIRT
    return $RC
}

stop_ovirt () {
    echo -n "Stopping ovirt: "
    rm -f $VAR_SUBSYS_OVIRT
    success
}

reload_ovirt () {
        stop_ovirt
        start_ovirt
}

case "$1" in
    start)
        [ -f "$VAR_SUBSYS_OVIRT" ] && exit 0
        echo -n "Starting ovirt: "
        {
            log "Starting ovirt"
            start_ovirt
            log "Completed ovirt"
        } >> $OVIRT_LOGFILE 2>&1
        test $? == 0 && success || failure
        ;;
    status)
        status $prog
        ;;
    reload)
        reload_ovirt
        ;;
    stop)
        stop_ovirt
        ;;
    *)
        echo "Usage: ovirt {start}"
        exit 2
esac