#!/bin/bash
# Copyright 2017 Canonical Ltd.  This software is licensed under the
# GNU Affero General Public License version 3 (see the file LICENSE).

set -e
trap "kill -- -$$" EXIT

# Configure tgtd socket.
export TGT_IPC_SOCKET="$SNAP_DATA/tgtd-socket"

# Setup language and perl5 correctly. Needed by tgt-admin written in
# Perl, yes really!
#
# XXX blake_r: Fix the hardcoded x86_64-linux-gnu to work for other
# architectures.
export LANGUAGE="C.UTF-8"
export LC_ALL="C.UTF-8"
export LANG="C.UTF-8"
export PERL5LIB="$SNAP/usr/lib/x86_64-linux-gnu/perl/5.22:$SNAP/usr/share/perl/5.22:$SNAP/usr/share/perl5"

# Configuration paths.
TGTD_CONFIG="$SNAP_DATA/var/lib/maas/boot-resources/current/maas.tgt"
if [ ! -e "$TGTD_CONFIG" ]
then
    TGTD_CONFIG="$SNAP/usr/share/maas/empty.tgt"
fi

# Spawn tgtd.
trap 'kill $PID; wait $PID' TERM INT
$SNAP/usr/sbin/tgtd -f &
PID=$!

# Perform post start commands.
$SNAP/usr/sbin/tgtadm --op update --mode sys --name State -v offline
$SNAP/usr/sbin/tgt-admin -e -c "$TGTD_CONFIG"
$SNAP/usr/sbin/tgtadm --op update --mode sys --name State -v ready
wait $PID
