- job:
    name: lite-aeolus-jerryscript
    project-type: matrix
    defaults: global
    properties:
        - authorization:
            anonymous:
                - job-read
                - job-extended-read
                - job-workspace
            everyone-flat:
                - job-read
                - job-extended-read
                - job-build
                - job-cancel
        - build-discarder:
            days-to-keep: 30
            num-to-keep: 30
            artifact-num-to-keep: 30
        - throttle:
            option: project
            max-per-node: 2
            matrix-configs: true
    parameters:
        - string:
            name: GIT_URL
            default: 'https://github.com/pfalcon/jerryscript'
        - string:
            name: BRANCH
            default: 'zephyr-wip'
        - string:
            name: ZEPHYR_GIT_URL
            default: 'https://github.com/zephyrproject-rtos/zephyr'
        - string:
            name: ZEPHYR_BRANCH
            default: 'main'
        - string:
            name: LAVA_SERVER
            default: 'validation.linaro.org/RPC2/'
        - string:
            name: QA_SERVER
            default: 'https://qa-reports.linaro.org'
        - string:
            name: QA_SERVER_GROUP
            default: 'lite'
        - string:
            name: QA_SERVER_PROJECT
            default: 'zephyr-jerryscript'
        - string:
            name: USE_QA_SERVER
            default: '1'
    disabled: true
    node: master
    child-workspace: .
    display-name: 'DELETE ME'
    axes:
        - axis:
            type: slave
            name: label
            values:
                - docker-focal-amd64-lite
        - axis:
            type: user-defined
            name: ZEPHYR_TOOLCHAIN_VARIANT
            values:
                - zephyr
        - axis:
            type: user-defined
            name: PLATFORM
            values:
                - 96b_carbon
                - disco_l475_iot1
                - frdm_k64f
                - frdm_kw41z
                - qemu_cortex_m3
                - qemu_x86
    wrappers:
        - timestamps
        - credentials-binding:
            - text:
                credential-id: LAVA_USER
                variable: LAVA_USER
        - credentials-binding:
            - text:
                credential-id: LAVA_TOKEN
                variable: LAVA_TOKEN
        - credentials-binding:
            - text:
                credential-id: QA_REPORTS_TOKEN
                variable: QA_REPORTS_TOKEN
    builders:
        - shell:
            !include-raw: lite-common/header.sh
        - shell:
            !include-raw: lite-common/install-toolchains.sh
        - shell:
            !include-raw:
                - lite-aeolus/build-init.sh
                - lite-aeolus/build-jerryscript.sh
                - lite-aeolus/build-finalize.sh
        - inject:
            properties-file: env_var_parameters
        - build-name-setter:
            template: '#${BUILD_NUMBER}-${GIT_COMMIT_ID}'
            macro: true
        - linaro-publish-token
        - shell: |
            #!/bin/bash

            echo "Publishing artifacts"

            # Publish
            test -d ${HOME}/bin || mkdir ${HOME}/bin
            wget -q https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py
            time python3 ${HOME}/bin/linaro-cp.py \
              --api_version 3 \
              --link-latest \
              out/${PLATFORM} components/kernel/aeolus-2/jerryscript/${BRANCH}/${ZEPHYR_TOOLCHAIN_VARIANT}/${PLATFORM}/${BUILD_NUMBER}

            rm -rf out
        - shell: |
            #!/bin/bash -e

            echo "Preparing to submit to LAVA"

            case "${PLATFORM}" in
              disco_l475_iot1)
                export DEVICE_TYPE=disco-l475-iot1
                ;;
              frdm_k64f)
                export DEVICE_TYPE=frdm-k64f
                ;;
              frdm_kw41z)
                export DEVICE_TYPE=frdm-kw41z
                ;;
              qemu_cortex_m3)
                export DEVICE_TYPE=qemu
                ;;
              *)
                echo "Skipping LAVA testing for ${PLATFORM}"
                ;;
            esac

            rm -rf configs
            git clone --depth 1 http://git.linaro.org/ci/job/configs.git
            git clone --depth 1 https://github.com/pfalcon/lite-build-tools

            cd configs/lite-aeolus

            export IMAGE_URL="http://snapshots.linaro.org/components/kernel/aeolus-2/jerryscript/${BRANCH}/${ZEPHYR_TOOLCHAIN_VARIANT}/${PLATFORM}/${BUILD_NUMBER}/zephyr.bin"

            [ -z "${DEVICE_TYPE}" ] || \
            ./submit-test.sh "Zephyr version"

    publishers:
        - groovy-postbuild:
            script:
                !include-raw: lite-aeolus/description-lava-link.groovy
#        - email:
#            recipients: 'first.last@linaro.org'
