- job:
    name: linaro-art-tip-build-ARTVixlTest
    project-type: freestyle
    defaults: global
    description: >
      Runs  the
      <a href="https://android-git.linaro.org/linaro-art/art-build-scripts.git/tree/tests/test_art_vixl.sh">Vixl Tests</a>
      on the tip.<br>
      This build can be triggered by adding the comment "IncludeAllTests"
      in your Gerrit patch.
    properties:
        - authorization:
            anonymous:
                - job-discover
            linaro-android-builders:
                - job-read
                - job-extended-read
                - job-workspace
            linaro-art:
                - job-build
                - job-cancel
                - job-read
                - job-extended-read
                - job-workspace
        - build-discarder:
            days-to-keep: 60
            num-to-keep: 60
    parameters:
        - 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-short'
    disabled: true
    node: docker-bionic-art
    display-name: 'DELETE ME'
    concurrent: true
    triggers:
        - gerrit:
            server-name: dev-private-review.linaro.org
            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.*'
            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: |
            CI_MAIL_RECIPIENTS="${GERRIT_CHANGE_OWNER_EMAIL},${GERRIT_EVENT_ACCOUNT_EMAIL}"
            CI_MAIL_RECIPIENTS="${CI_MAIL_RECIPIENTS},vishal.bhoj@linaro.org"
            CI_MAIL_RECIPIENTS="${CI_MAIL_RECIPIENTS},daniel.diaz@linaro.org"
            CI_MAIL_RECIPIENTS="${CI_MAIL_RECIPIENTS},julien.duraj@linaro.org"
            echo "CI_MAIL_RECIPIENTS=${CI_MAIL_RECIPIENTS}" > env_var_parameters
        - inject:
            properties-file: env_var_parameters
        - shell: |
            #!/bin/bash -xe

            # Some Docker instances mount ${HOME}/.ssh/config from the host.
            mv ${HOME}/.ssh{,.not}
            mkdir -p "${HOME}/bin"
            export PATH="${HOME}/bin:${PATH}"

            # 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
            ./setup_host.sh
            ./setup_android.sh

            cd ${ANDROID_BUILD_DIR}
            perl ${ART_BUILD_SCRIPTS_DIR}/jenkins/test_launcher.pl \
              ${ART_BUILD_SCRIPTS_DIR}/tests/test_art_vixl.sh
    publishers:
        - email-ext:
            recipients: '${CI_MAIL_RECIPIENTS}'
            content-type: text
            body: |
                Build Triggered by: ${GERRIT_CHANGE_SUBJECT}: ${GERRIT_CHANGE_URL}
                Build URL: ${PROJECT_URL}${BUILD_NUMBER}/
                Full log: ${PROJECT_URL}${BUILD_NUMBER}/consoleText
                Parsed warnings/errors: ${PROJECT_URL}${BUILD_NUMBER}/parsed_console

                Errors:
                ${BUILD_LOG_REGEX, regex=".*ERROR:.* ", linesBefore=0, linesAfter=0, showTruncatedLines=false}
        - archive:
            artifacts: '*.txt, *.xml'
        - logparser:
            parse-rules: '/var/jenkins_home/userContent/android-art.parse'
            unstable-on-warning: false
            fail-on-error: false
        - groovy-postbuild:
            script:
              !include-raw:
                - linaro-art/global.groovy
        - plot:
            - title: 'Sync Time'
              group: 'Time Measurements'
              yaxis: 'Seconds'
              style: line
              series:
                  - file: time_repo.txt
                    format: properties
            - title: 'Test Time'
              group: 'Time Measurements'
              yaxis: 'Seconds'
              style: line
              series:
                  - file: time_test.txt
                    format: properties
