- job:
name: linaro-art-tip-build-MicroBenchmarks
project-type: freestyle
defaults: global
description: >
Runs the
Microbenchmarks Test script
on the tip.
This build is part of the builds that are triggered using the "IncludeAllTests" comment in a Gerrit patch.
This build can also be triggered in isolation with the "IncludeBenchmarks" comment.
properties:
- authorization:
anonymous:
- job-discover
linaro-android-builders:
- job-read
- job-extended-read
- job-workspace
linaro-art:
- job-build
- job-read
- job-extended-read
- job-workspace
- build-discarder:
days-to-keep: 60
num-to-keep: 60
- copyartifact:
projects: post-build-reports
parameters:
- string:
name: ADB_VERSION
default: 'adb-tip'
- string:
name: BUILD_CONFIG_REPO
default: 'git://android-git.linaro.org/android-build-configs.git'
- string:
name: BUILD_CONFIG_BRANCH
default: 'master'
- string:
name: BUILD_CONFIG_FILENAME
default: 'linaro-art-tip'
disabled: false
node: docker-utopic-art
display-name: 'Tip: Benchmarks (Nexus 5X)'
concurrent: true
triggers:
- gerrit:
override-votes: true
gerrit-build-successful-verified-value: 1
gerrit-build-failed-verified-value: -1
trigger-on:
- comment-added-contains-event:
comment-contains-value: '.*IncludeAllTests.*'
- comment-added-contains-event:
comment-contains-value: '.*IncludeBenchmarks.*'
projects:
- project-compare-type: 'PLAIN'
project-pattern: 'linaro-art/platform/build'
branches:
- branch-pattern: 'master'
- project-compare-type: 'PLAIN'
project-pattern: 'linaro-art/platform/art'
branches:
- branch-pattern: 'master'
- project-compare-type: 'PLAIN'
project-pattern: 'linaro-art/platform/external/vixl'
branches:
- branch-pattern: 'master'
wrappers:
- timestamps
- timeout:
timeout: 500
- ssh-agent-credentials:
users:
- '768c1ba1-6052-4b97-a531-7e4fabda6979'
builders:
- shell: |
#!/bin/bash -xe
# Build scripts
ANDROID_BUILD_DIR="${HOME}/srv/${JOB_NAME}/android"
ART_BUILD_SCRIPTS_DIR="${WORKSPACE}/art-build-scripts"
git clone https://android-git.linaro.org/git/linaro-art/art-build-scripts.git ${ART_BUILD_SCRIPTS_DIR}
cd ${ART_BUILD_SCRIPTS_DIR}/jenkins
# Port forwarding magic to have access to Nexus devices
source /home/buildslave/srv/nexus-config
export ANDROID_SERIAL=${BULLHEAD}
./setup_adb.sh
./setup_host.sh
./setup_android.sh
alias python=python3
cd ${ANDROID_BUILD_DIR}
perl scripts/jenkins/test_launcher.pl \
scripts/benchmarks/benchmarks_run_target.sh --default
# create parameters for post-build-reports
cat << EOF > ${WORKSPACE}/post_build_reports_parameters
SOURCE_PROJECT_NAME=${JOB_NAME}
SOURCE_BUILD_NUMBER=${BUILD_NUMBER}
SOURCE_BUILD_ID=${BUILD_NUMBER}
SOURCE_BUILD_URL=${BUILD_URL}
ART_URL=https://art-reports.linaro.org/api/
SOURCE_BRANCH_NAME=master
SOURCE_GERRIT_CHANGE_NUMBER=${GERRIT_CHANGE_NUMBER}
SOURCE_GERRIT_PATCHSET_NUMBER=${GERRIT_PATCHSET_NUMBER}
SOURCE_GERRIT_CHANGE_URL=${GERRIT_CHANGE_URL}
SOURCE_GERRIT_CHANGE_ID=${GERRIT_CHANGE_ID}
EOF
publishers:
- archive:
artifacts: '*.txt, *.xml, *.json'
- logparser:
parse-rules: '/var/lib/jenkins/userContent/android-art.parse'
unstable-on-warning: false
fail-on-error: false
- groovy-postbuild:
script: |
import hudson.model.*
def currentBuild = Thread.currentThread().executable
def description = ""
def matcher = manager.getLogMatcher(".*repo sync failed.*")
if ( matcher?.matches()) {
manager.addShortText("repo sync failed")
}
matcher = manager.getLogMatcher(".*patch merge failed.*")
if ( matcher?.matches()) {
manager.addShortText("merge failed")
}
matcher = manager.getLogMatcher(".*error: no devices/emulators found.*")
if ( matcher?.matches()) {
manager.addShortText("No Device Found")
}
matcher = manager.getLogMatcher(".*buildbot-build setup failed.*")
if ( matcher?.matches()) {
manager.addShortText("buildbot-build setup failed.")
}
matcher = manager.getLogMatcher(".* tests have failed")
if (matcher?.matches()) {
def test = matcher.group(0).split(" ")
manager.listener.logger.println test.length
i=0
while( i"
i++;
}
currentBuild.setDescription(description)
manager.addShortText("Tests failed")
}
- trigger-parameterized-builds:
- project: 'post-build-reports'
property-file: post_build_reports_parameters