@ -1496,33 +1496,83 @@ EOT
die " Error during installation of ngcp. Find details at: $TARGET /tmp/ngcp-installer.log $TARGET /tmp/ngcp-installer-debug.log "
fi
if " $RETRIEVE_MGMT_CONFIG " && [ " $ROLE " = "sp1" ] ; then
password = sipwise
logit "Retrieving config.yml from management server"
wget --timeout= 30 -O " ${ TARGET } " /etc/ngcp-config/config.yml " ${ MANAGEMENT_IP } :3000/yml/config/ $( cat ${ TARGET } /etc/hostname) "
logit "Copying config.yml to /mnt/glusterfs/shared_config"
chroot $TARGET cp /etc/ngcp-config/config.yml /mnt/glusterfs/shared_config/config.yml
logit "Retrieving constants.yml from management server"
wget --timeout= 30 -O " ${ TARGET } " /etc/ngcp-config/constants.yml " ${ MANAGEMENT_IP } :3000/yml/constants/ $( cat ${ TARGET } /etc/hostname) "
logit "Copying constants.yml to /mnt/glusterfs/shared_config"
chroot $TARGET cp /etc/ngcp-config/constants.yml /mnt/glusterfs/shared_config/constants.yml
logit "Retrieving network.yml from management server"
wget --timeout= 30 -O " ${ TARGET } " /etc/ngcp-config/network.yml " ${ MANAGEMENT_IP } :3000/yml/network/ $( cat ${ TARGET } /etc/hostname) "
logit " Retrieving sipwise.cnf from management server (using password ${ password } ) "
wget --timeout= 30 -O " ${ TARGET } " /etc/mysql/sipwise.cnf " ${ MANAGEMENT_IP } :3000/dbconfig/sipwise_cnf?password= ${ password } "
logit "Copying sipwise.cnf to /mnt/glusterfs/shared_config"
chroot $TARGET cp /etc/mysql/sipwise.cnf /mnt/glusterfs/shared_config/sipwise.cnf
logit "Sync constants"
chroot $TARGET ngcp-sync-constants -r
if " $PRO_EDITION " ; then
# set variable to have the *other* node from the PRO setup available for ngcp-network
case $ROLE in
sp1)
logit "Role matching sp1"
if [ -n " $TARGET_HOSTNAME " ] && [ [ " $TARGET_HOSTNAME " = = *a ] ] ; then # usually carrier env
logit "Target hostname is set and ends with 'a'"
THIS_HOST = " $TARGET_HOSTNAME "
PEER = " ${ TARGET_HOSTNAME %a } b "
else # usually PRO env
logit "Target hostname is not set or does not end with 'a'"
THIS_HOST = " $ROLE "
PEER = sp2
fi
; ;
sp2)
logit "Role matching sp2"
if [ -n " $TARGET_HOSTNAME " ] && [ [ " $TARGET_HOSTNAME " = = *b ] ] ; then # usually carrier env
THIS_HOST = " $TARGET_HOSTNAME "
PEER = " ${ TARGET_HOSTNAME %b } a "
else # usually PRO env
logit "Target hostname is not set or does not end with 'b'"
THIS_HOST = " $ROLE "
PEER = sp1
fi
; ;
*)
logit " Using unsupported role: $ROLE "
; ;
esac
fi
chroot $TARGET ngcpcfg commit 'get network|config|constants yaml [via deployment process]'
chroot $TARGET ngcpcfg build
chroot $TARGET ngcpcfg push --shared-only
if " $RETRIEVE_MGMT_CONFIG " ; then
if [ " $ROLE " = "sp1" ] ; then
password = sipwise
logit "Retrieving config.yml from management server"
wget --timeout= 30 -O " ${ TARGET } " /etc/ngcp-config/config.yml " ${ MANAGEMENT_IP } :3000/yml/config/ $( cat ${ TARGET } /etc/hostname) "
logit "Copying config.yml to /mnt/glusterfs/shared_config"
chroot $TARGET cp /etc/ngcp-config/config.yml /mnt/glusterfs/shared_config/config.yml
logit "Retrieving constants.yml from management server"
wget --timeout= 30 -O " ${ TARGET } " /etc/ngcp-config/constants.yml " ${ MANAGEMENT_IP } :3000/yml/constants/ $( cat ${ TARGET } /etc/hostname) "
logit "Copying constants.yml to /mnt/glusterfs/shared_config"
chroot $TARGET cp /etc/ngcp-config/constants.yml /mnt/glusterfs/shared_config/constants.yml
logit "Retrieving network.yml from management server"
wget --timeout= 30 -O " ${ TARGET } " /etc/ngcp-config/network.yml " ${ MANAGEMENT_IP } :3000/yml/network/ $( cat ${ TARGET } /etc/hostname) "
logit " Retrieving sipwise.cnf from management server (using password ${ password } ) "
wget --timeout= 30 -O " ${ TARGET } " /etc/mysql/sipwise.cnf " ${ MANAGEMENT_IP } :3000/dbconfig/sipwise_cnf?password= ${ password } "
logit "Copying sipwise.cnf to /mnt/glusterfs/shared_config"
chroot $TARGET cp /etc/mysql/sipwise.cnf /mnt/glusterfs/shared_config/sipwise.cnf
logit "Sync constants"
chroot $TARGET ngcp-sync-constants -r
# use --no-db-sync only if supported by ngcp[cfg] version
if chroot $TARGET grep -q -- --no-db-sync /usr/sbin/ngcpcfg ; then
chroot $TARGET ngcpcfg --no-db-sync commit 'get network|config|constants yaml [via deployment process]'
chroot $TARGET ngcpcfg build --no-db-sync
chroot $TARGET ngcpcfg push --no-db-sync --shared-only
else
chroot $TARGET ngcpcfg commit 'get network|config|constants yaml [via deployment process]'
chroot $TARGET ngcpcfg build
chroot $TARGET ngcpcfg push --shared-only
fi
else # ROLE = sp2
# make sure login from second node to first node works
chroot $TARGET ssh-keyscan $PEER >> ~/.ssh/known_hosts
# live system uses a different SSH host key than the finally installed
# system, so do NOT use ssh-keyscan here
chroot $TARGET tail -1 ~/.ssh/known_hosts | sed " s/\w* / $THIS_HOST / " >> ~/.ssh/known_hosts
chroot $TARGET tail -1 ~/.ssh/known_hosts | sed " s/\w* / $MANAGEMENT_IP / " >> ~/.ssh/known_hosts
chroot $TARGET scp ~/.ssh/known_hosts $PEER :~/.ssh/known_hosts
fi
fi
case " $CROLE " in
@ -1661,36 +1711,6 @@ fi
if " $RETRIEVE_MGMT_CONFIG " ; then
echo "Nothing to do (RETRIEVE_MGMT_CONFIG is set), network.yml was already set up."
elif " $PRO_EDITION " ; then
# set variable to have the *other* node from the PRO setup available for ngcp-network
case $ROLE in
sp1)
logit "Role matching sp1"
if [ -n " $TARGET_HOSTNAME " ] && [ [ " $TARGET_HOSTNAME " = = *a ] ] ; then # usually carrier env
logit "Target hostname is set and ends with 'a'"
THIS_HOST = " $TARGET_HOSTNAME "
PEER = " ${ TARGET_HOSTNAME %a } b "
else # usually PRO env
logit "Target hostname is not set or does not end with 'a'"
THIS_HOST = " $ROLE "
PEER = sp2
fi
; ;
sp2)
logit "Role matching sp2"
if [ -n " $TARGET_HOSTNAME " ] && [ [ " $TARGET_HOSTNAME " = = *b ] ] ; then # usually carrier env
THIS_HOST = " $TARGET_HOSTNAME "
PEER = " ${ TARGET_HOSTNAME %b } a "
else # usually PRO env
logit "Target hostname is not set or does not end with 'b'"
THIS_HOST = " $ROLE "
PEER = sp1
fi
; ;
*)
logit " Using unsupported role: $ROLE "
; ;
esac
# get list of available network devices (excl. some known-to-be-irrelevant ones, also see MT#8297)
net_devices = $( tail -n +3 /proc/net/dev | awk -F: '{print $1}' | sed "s/\s*//" | grep -ve '^vmnet' -ve '^vboxnet' -ve '^docker' -ve '^usb' | sort -u)