diff options
Diffstat (limited to 'jjb/infra')
-rw-r--r-- | jjb/infra/bifrost-verify-jobs.yml | 12 | ||||
-rwxr-xr-x | jjb/infra/bifrost-verify.sh | 59 |
2 files changed, 39 insertions, 32 deletions
diff --git a/jjb/infra/bifrost-verify-jobs.yml b/jjb/infra/bifrost-verify-jobs.yml index 8184b6343..4c106fc5c 100644 --- a/jjb/infra/bifrost-verify-jobs.yml +++ b/jjb/infra/bifrost-verify-jobs.yml @@ -38,9 +38,6 @@ dib-os-element: 'opensuse-minimal' dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl' extra-dib-elements: 'openssh-server' - vm-disk: '30' - vm-memory: '4096' - vm-cpu: '2' #-------------------------------- # type #-------------------------------- @@ -57,9 +54,9 @@ #-------------------------------- - defaults: name: vm_defaults - vm-disk: '100' - vm-memory: '8192' - vm-cpu: '4' + vm-disk: '30' + vm-memory: '4096' + vm-cpu: '2' #-------------------------------- # job templates @@ -74,6 +71,7 @@ concurrent: false properties: + - logrotate-default - build-blocker: use-build-blocker: true blocking-jobs: @@ -201,8 +199,6 @@ file-paths: - compare-type: ANT pattern: 'prototypes/bifrost/**' - - compare-type: ANT - pattern: 'jjb/infra/**' readable-message: true #--------------------------- diff --git a/jjb/infra/bifrost-verify.sh b/jjb/infra/bifrost-verify.sh index dbe39762c..94c7dacfa 100755 --- a/jjb/infra/bifrost-verify.sh +++ b/jjb/infra/bifrost-verify.sh @@ -17,44 +17,55 @@ function upload_logs() { BIFROST_CONSOLE_LOG="${BUILD_URL}/consoleText" BIFROST_GS_URL=${BIFROST_LOG_URL/http:/gs:} - echo "Uploading build logs to ${BIFROST_LOG_URL}" - - echo "Uploading console output" - curl -s -L ${BIFROST_CONSOLE_LOG} > ${WORKSPACE}/build_log.txt - gsutil -q cp -Z ${WORKSPACE}/build_log.txt ${BIFROST_GS_URL}/build_log.txt - rm ${WORKSPACE}/build_log.txt - - [[ ! -d ${WORKSPACE}/logs ]] && exit 0 - - pushd ${WORKSPACE}/logs/ &> /dev/null - for x in *.log; do - echo "Compressing and uploading $x" - gsutil -q cp -Z ${x} ${BIFROST_GS_URL}/${x} - done + # Make sure the old landing page is gone in case + # we break later on. We don't want to publish + # stale information. + # TODO: Maybe cleanup the entire $BIFROST_GS_URL directory + # before we upload the new data. + gsutil -q rm ${BIFROST_GS_URL}/index.html || true + + if [[ -d ${WORKSPACE}/logs ]]; then + echo "Uploading collected bifrost logs to ${BIFROST_LOG_URL}" + pushd ${WORKSPACE}/logs &> /dev/null + for x in *.log; do + echo "Compressing and uploading $x" + gsutil -q cp -Z ${x} ${BIFROST_GS_URL}/${x} + done + popd &> /dev/null + fi echo "Generating the landing page" - cat > index.html <<EOF + cat > ${WORKSPACE}/index.html <<EOF <html> <h1>Build results for <a href=https://$GERRIT_NAME/#/c/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER>$GERRIT_NAME/$GERRIT_CHANGE_NUMBER/$GERRIT_PATCHSET_NUMBER</a></h1> -<h2>Job: $JOB_NAME</h2> +<h2>Job: <a href=${BUILD_URL}>$JOB_NAME</a></h2> <ul> <li><a href=${BIFROST_LOG_URL}/build_log.txt>build_log.txt</a></li> EOF - for x in *.log; do - echo "<li><a href=${BIFROST_LOG_URL}/${x}>${x}</a></li>" >> index.html - done + if [[ -d ${WORKSPACE}/logs ]]; then + pushd ${WORKSPACE}/logs &> /dev/null + for x in *.log; do + echo "<li><a href=${BIFROST_LOG_URL}/${x}>${x}</a></li>" >> ${WORKSPACE}/index.html + done + popd &> /dev/null + fi - cat >> index.html << EOF + cat >> ${WORKSPACE}/index.html << EOF </ul> </html> EOF - gsutil -q cp index.html ${BIFROST_GS_URL}/index.html - - rm index.html + # Finally, download and upload the entire build log so we can retain + # as much build information as possible + echo "Uploading console output" + curl -s -L ${BIFROST_CONSOLE_LOG} > ${WORKSPACE}/build_log.txt + gsutil -q cp -Z ${WORKSPACE}/build_log.txt ${BIFROST_GS_URL}/build_log.txt + rm ${WORKSPACE}/build_log.txt - popd &> /dev/null + # Upload landing page + gsutil -q cp ${WORKSPACE}/index.html ${BIFROST_GS_URL}/index.html + rm ${WORKSPACE}/index.html } function fix_ownership() { |