--- a/codesys-ide/codesyscontrol +++ b/codesys-ide/codesyscontrol @@ -1,4 +1,7 @@ #!/bin/bash + +# set timeout in seconds +TIMEOUT=60 if [ -z $1 ]; then echo "usage: $0 <filename of offline bootproject (*.app)> [<artifact 1> <artifact 2>]" @@ -7,6 +10,9 @@ # create temporary working directory tmpdir=$(mktemp -d) + +# just a hacky workaround for bad test-applications, writing to "C:" ;) +mkdir ${tmpdir}/C: # create config file appname=$(basename ${1} .app) @@ -24,8 +30,15 @@ # run codesys control ( cd ${tmpdir}; - /opt/codesys/bin/codesyscontrol.bin -d CODESYSControl.cfg; + timeout ${TIMEOUT} /opt/codesys/bin/codesyscontrol.bin CODESYSControl.cfg; ) + +# copy artifacts +for i in ${@:2}; do + mkdir -p $(dirname ".drone-artifacts/$i") + cp "${tmpdir}/$i" ".drone-artifacts/$i" +done + # remove temporary working directory [ -d ${tmpdir} ] && rm -rf ${tmpdir}