| | |
| | | #!/bin/ksh |
| | | # 2021-04-07 Olaf Bohlen <olbohlen@eenfach.de> |
| | | # 2021-11-30 Till Wegmueller <toasterson@gmail.com> |
| | | # instead of putting all this into the Jenkinsfile I decided to put the actual code in this script |
| | | |
| | | set -ex |
| | | |
| | | # global config |
| | | HTTPCONF="/etc/apache2/2.4/conf.d/pkgdepotd.conf" |
| | |
| | | # we try to be smart and assume that all updates will always touch |
| | | # the components Makefile also (to update COMPONENT_REVISION, etc) |
| | | stage_build_changed() { |
| | | for f in $(git diff --name-only HEAD..origin/oi/hipster | grep Makefile); do |
| | | worst=0 |
| | | for f in $(git diff --name-only HEAD..origin/oi/hipster | grep Makefile; exit 0); do |
| | | echo "jenkinshelper: building for ${f%/*}..." |
| | | curpwd=$(pwd) |
| | | cd "${f%/*}" && gmake publish |
| | | cd "${f%/*}" && gmake clean && gmake PARALLEL_JOBS=$(psrinfo -t -c) publish |
| | | rc=$? |
| | | cd "${curpwd}" |
| | | echo "jenkinshelper: done with ${f%/*} return code ${rc}" |
| | | if [ rc -ne 0 ] ; then |
| | | worst=$rc |
| | | fi |
| | | done |
| | | return $worst |
| | | } |
| | | |
| | | # prepare the pkg.depotd server instance, if an instance already |
| | |
| | | platform=$(uname -p) |
| | | |
| | | # check if we already have this branch set up as a pkg.depotd: |
| | | if ! "svcs pkg/server:${BRANCH_NAME}" >/dev/null 2>&1; then |
| | | if ! svcs "pkg/server:${BRANCH_NAME}" >/dev/null 2>&1; then |
| | | |
| | | # get highest port from ${HTTPCONF} to figure out the next free one |
| | | nextport=$(($(nawk -F '[/:]' '{ print $7 }' <"${HTTPCONF}" | sort -n | tail -1) + 1)) |