#!/bin/bash

# -------------------------------------------------------------------------- #
# Copyright 2002-2025, OpenNebula Project, OpenNebula Systems                #
#                                                                            #
# Licensed under the Apache License, Version 2.0 (the "License"); you may    #
# not use this file except in compliance with the License. You may obtain    #
# a copy of the License at                                                   #
#                                                                            #
# http://www.apache.org/licenses/LICENSE-2.0                                 #
#                                                                            #
# Unless required by applicable law or agreed to in writing, software        #
# distributed under the License is distributed on an "AS IS" BASIS,          #
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #
# See the License for the specific language governing permissions and        #
# limitations under the License.                                             #
#--------------------------------------------------------------------------- #

source $(dirname $0)/../../etc/vmm/kvm/kvmrc
source $(dirname $0)/../../scripts_common.sh

DOMAIN=$1
TARGET_DEVICE=$2

if [[ -n "$DOMAIN" ]] && [[ -n "$TARGET_DEVICE" ]]
then
    DISK="$(virsh --connect $LIBVIRT_URI domblklist $DOMAIN | awk "/^\s*$TARGET_DEVICE/ {print \$2; exit}")"
    if [[ "$DISK" = "-" ]]; then
        log_debug "CDROM already ejected"
        exit 0
    fi

    CMD="virsh --connect $LIBVIRT_URI change-media $DOMAIN $TARGET_DEVICE \
        --eject --force"

    exec_and_log "$CMD" "Could not eject CDROM $TARGET_DEVICE"
fi

