2018-07-11 05:14:49 -06:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
CIDIR=$(dirname $(readlink -fn $0))
|
|
|
|
source $CIDIR/ci.functions
|
|
|
|
ASTETCDIR=$DESTDIR/etc/asterisk
|
|
|
|
|
2018-07-20 10:25:25 -04:00
|
|
|
cat <<-EOF > "$ASTETCDIR/logger.conf"
|
|
|
|
[logfiles]
|
|
|
|
full => notice,warning,error,debug,verbose
|
|
|
|
EOF
|
2018-07-11 05:14:49 -06:00
|
|
|
|
|
|
|
echo "[default]" > "$ASTETCDIR/extensions.conf"
|
|
|
|
|
|
|
|
cat <<-EOF > "$ASTETCDIR/manager.conf"
|
|
|
|
[general]
|
|
|
|
enabled=yes
|
|
|
|
bindaddr=127.0.0.1
|
|
|
|
port=5038
|
|
|
|
|
|
|
|
[test]
|
|
|
|
secret=test
|
|
|
|
read = system,call,log,verbose,agent,user,config,dtmf,reporting,cdr,dialplan
|
|
|
|
write = system,call,agent,user,config,command,reporting,originate
|
|
|
|
EOF
|
|
|
|
|
|
|
|
cat <<-EOF > "$ASTETCDIR/http.conf"
|
|
|
|
[general]
|
|
|
|
enabled=yes
|
|
|
|
bindaddr=127.0.0.1
|
|
|
|
port=8088
|
|
|
|
EOF
|
|
|
|
|
|
|
|
cat <<-EOF > "$ASTETCDIR/modules.conf"
|
|
|
|
[modules]
|
|
|
|
autoload=yes
|
|
|
|
noload=res_mwi_external.so
|
|
|
|
noload=res_mwi_external_ami.so
|
|
|
|
noload=res_ari_mailboxes.so
|
|
|
|
noload=res_stasis_mailbox.so
|
|
|
|
EOF
|
|
|
|
|
|
|
|
cat <<-EOF >> "$ASTETCDIR/sorcery.conf"
|
|
|
|
[res_pjsip_pubsub]
|
|
|
|
resource_list=memory
|
|
|
|
EOF
|
|
|
|
|
|
|
|
ASTERISK="$DESTDIR/usr/sbin/asterisk"
|
|
|
|
CONFFILE=$ASTETCDIR/asterisk.conf
|
|
|
|
OUTPUTDIR=${OUTPUT_DIR:-tests/CI/output/}
|
|
|
|
OUTPUTFILE=${OUTPUT_XML:-${OUTPUTDIR}/unittests-results.xml}
|
|
|
|
|
|
|
|
[ ! -d ${OUTPUTDIR} ] && mkdir -p $OUTPUTDIR
|
2018-07-12 15:34:14 -06:00
|
|
|
[ x"$USER_GROUP" != x ] && sudo chown -R $USER_GROUP $OUTPUTDIR
|
2018-07-11 05:14:49 -06:00
|
|
|
|
|
|
|
rm -rf $ASTETCDIR/extensions.{ael,lua} || :
|
|
|
|
|
2018-07-13 05:56:38 -06:00
|
|
|
set -x
|
|
|
|
sudo $ASTERISK ${USER_GROUP:+-U ${USER_GROUP%%:*} -G ${USER_GROUP##*:}} -gn -C $CONFFILE
|
2018-07-16 10:08:57 -06:00
|
|
|
for n in `seq 1 5` ; do
|
|
|
|
sleep 3
|
|
|
|
$ASTERISK -rx "core waitfullybooted" -C $CONFFILE && break
|
|
|
|
done
|
2018-07-11 05:14:49 -06:00
|
|
|
sleep 1
|
2018-07-23 11:23:22 -04:00
|
|
|
$ASTERISK -rx "${UNITTEST_COMMAND:-test execute all}" -C $CONFFILE
|
2018-07-13 05:56:38 -06:00
|
|
|
$ASTERISK -rx "test show results failed" -C $CONFFILE
|
|
|
|
$ASTERISK -rx "test generate results xml $OUTPUTFILE" -C $CONFFILE
|
|
|
|
$ASTERISK -rx "core stop now" -C $CONFFILE
|
2018-07-11 05:14:49 -06:00
|
|
|
|
|
|
|
runner rsync -vaH $DESTDIR/var/log/asterisk/. $OUTPUTDIR
|
2018-07-13 05:56:38 -06:00
|
|
|
set +x
|
2018-07-11 05:14:49 -06:00
|
|
|
|
2018-07-12 15:34:14 -06:00
|
|
|
[ x"$USER_GROUP" != x ] && sudo chown -R $USER_GROUP $OUTPUTDIR
|
2018-07-11 05:14:49 -06:00
|
|
|
if [ -f core* ] ; then
|
|
|
|
echo "*** Found a core file after running unit tests ***"
|
|
|
|
$DESTDIR/var/lib/asterisk/scripts/ast_coredumper --no-default-search core*
|
|
|
|
exit 1
|
|
|
|
fi
|