diff options
author | Vishal Bhoj <vishal.bhoj@linaro.org> | 2019-03-25 15:22:58 +0530 |
---|---|---|
committer | Fathi Boudra <fathi.boudra@linaro.org> | 2019-03-27 08:16:59 +0000 |
commit | e0987bc2ea56046ddc1c54e774db61295ac00af6 (patch) | |
tree | 7417e19736792ec612495c3d73ce62e0cdb615a6 /kernel-testing-configs | |
parent | 9eba9fd71255c42d4d0616aeb108dd1bb9595867 (diff) |
add kernel config testing support
Change-Id: I35f7cc40bc81e92f7869b230fa659fa1d36570cc
Signed-off-by: Vishal Bhoj <vishal.bhoj@linaro.org>
Diffstat (limited to 'kernel-testing-configs')
-rwxr-xr-x | kernel-testing-configs/generate-jjb-config.sh | 40 | ||||
-rw-r--r-- | kernel-testing-configs/templates/generic.yaml | 181 | ||||
-rw-r--r-- | kernel-testing-configs/templates/trigger-generic.yaml | 50 | ||||
-rw-r--r-- | kernel-testing-configs/test-params/test-kernel-ci-project | 4 |
4 files changed, 275 insertions, 0 deletions
diff --git a/kernel-testing-configs/generate-jjb-config.sh b/kernel-testing-configs/generate-jjb-config.sh new file mode 100755 index 00000000..442b53aa --- /dev/null +++ b/kernel-testing-configs/generate-jjb-config.sh @@ -0,0 +1,40 @@ +#!/bin/bash -xe + +if [[ -z ${KERNEL_BRANCH} || -z ${KERNEL_REPO} || -z ${EMAIL_ADDRESS} ]]; then + echo "Please make sure parameters are set" + exit 1 +fi + +DEVELOPER_JOB_NAME=$(echo ${EMAIL_ADDRESS} | cut -d'@' -f1)-${KERNEL_BRANCH} + +cp templates/trigger-generic.yaml ../trigger-openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml +cp templates/generic.yaml ../openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml + +sed -e "s|\${KERNEL_BRANCH}|${KERNEL_BRANCH}|g" -e "s|\${KERNEL_REPO}|${KERNEL_REPO}|g" -e "s|\${EMAIL_ADDRESS}|${EMAIL_ADDRESS}|g" -e "s|\${DEVELOPER_JOB_NAME}|${DEVELOPER_JOB_NAME}|g" -i ../trigger-openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml +sed -e "s|\${KERNEL_BRANCH}|${KERNEL_BRANCH}|g" -e "s|\${KERNEL_REPO}|${KERNEL_REPO}|g" -e "s|\${EMAIL_ADDRESS}|${EMAIL_ADDRESS}|g" -e "s|\${DEVELOPER_JOB_NAME}|${DEVELOPER_JOB_NAME}|g" -e "s|\${QA_SERVER_PROJECT}|${DEVELOPER_JOB_NAME}|g" -i ../openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml + + +if ! echo "${DUT}" | grep -q "am57xx-evm"; then + sed -i "/- 'am57xx-evm'/d" ../openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml +fi +if ! echo "${DUT}" | grep -q "dragonboard-410c"; then + sed -i "/- 'dragonboard-410c'/d" ../openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml +fi + +if ! echo "${DUT}" | grep -q "hikey"; then + sed -i "/- 'hikey'/d" ../openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml +fi +if ! echo "${DUT}" | grep -q "intel-core2-32"; then + sed -i "/- 'intel-core2-32'/d" ../openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml +fi +if ! echo "${DUT}" | grep -q "intel-corei7-64"; then + sed -i "/- 'intel-corei7-64'/d" ../openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml +fi +if ! echo "${DUT}" | grep -q "juno"; then + sed -i "/- 'juno'/d" ../openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml +fi + +git add ../openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml ../ ../trigger-openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}.yaml +git commit -m "Added new jobs for ${DEVELOPER_JOB_NAME}" +wget https://raw.githubusercontent.com/vishalbhoj/tools/master/squad/create_project.py +python create_project.py -p ${DEVELOPER_JOB_NAME} -g lkft diff --git a/kernel-testing-configs/templates/generic.yaml b/kernel-testing-configs/templates/generic.yaml new file mode 100644 index 00000000..1d1bdf4c --- /dev/null +++ b/kernel-testing-configs/templates/generic.yaml @@ -0,0 +1,181 @@ +- job: + name: openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME} + project-type: matrix + defaults: global + properties: + - authorization: + anonymous: + - job-read + - job-extended-read + - job-workspace + linaro: + - job-read + - job-extended-read + - job-build + - job-cancel + - build-discarder: + days-to-keep: 30 + num-to-keep: 30 + artifact-num-to-keep: 1 + parameters: + - string: + name: KERNEL_BRANCH + default: '${KERNEL_BRANCH}' + - string: + name: KERNEL_VERSION + default: '4.19' + - string: + name: KERNEL_RECIPE + default: 'linux-generic-stable-rc' + - string: + name: KERNEL_REPO + default: '${KERNEL_REPO}' + - string: + name: KERNEL_DESCRIBE + - string: + name: SRCREV_kernel + - string: + name: MAKE_KERNELVERSION + - string: + name: IMAGES + default: 'rpb-console-image-lkft' + - string: + name: MANIFEST_URL + default: 'https://github.com/96boards/oe-rpb-manifest.git' + - string: + name: MANIFEST_BRANCH + default: 'lkft/rocko' + - string: + name: PUB_DEST + default: 'openembedded/lkft/${MANIFEST_BRANCH}/${MACHINE}/${DISTRO}/linux-stable-rc-${KERNEL_VERSION}/${BUILD_NUMBER}' + - string: + name: LAVA_SERVER + default: 'https://lkft.validation.linaro.org/RPC2/' + - string: + name: QA_SERVER + default: 'https://staging-qa-reports.linaro.org' + - string: + name: QA_SERVER_PROJECT + default: '${QA_SERVER_PROJECT}' + - string: + name: SKIP_LAVA + default: '' + - string: + name: LAVA_JOB_PRIORITY + default: '75' + - string: + name: SANITY_LAVA_JOB_PRIORITY + default: '80' + - string: + name: KSELFTEST_PATH + default: '/opt/kselftests/default-in-kernel/' + - matrix-combinations: + name: MATRIX_COMBINATIONS + disabled: false + node: master + display-name: 'Develepor CI setup for ${DEVELOPER_JOB_NAME} (OpenEmbedded/rocko)' + axes: + - axis: + type: user-defined + name: MACHINE + values: + - 'am57xx-evm' + - 'dragonboard-410c' + - 'hikey' + - 'intel-core2-32' + - 'intel-corei7-64' + - 'juno' + - axis: + type: user-defined + name: DISTRO + values: + - lkft + - axis: + type: slave + name: label + values: + - docker-lkft + execution-strategy: + sequential: false + wrappers: + - timeout: + timeout: 180 + - timestamps + - ssh-agent-credentials: + users: + - 'OE_COMMIT_BOT_KEY' + - credentials-binding: + - text: + credential-id: QA_REPORTS_TOKEN + variable: QA_REPORTS_TOKEN + builders: + - shell: | + #!/bin/bash + + # Mapping for MACHINE -> DEVICE_TYPE + case "${MACHINE}" in + hikey) + DEVICE_TYPE=hi6220-hikey + ;; + intel-core2-32) + DEVICE_TYPE=i386 + ;; + intel-corei7-64) + DEVICE_TYPE=x86 + ;; + juno) + DEVICE_TYPE=juno-r2 + ;; + am57xx-evm) + DEVICE_TYPE=x15 + ;; + dragonboard-410c) + DEVICE_TYPE=dragonboard-410c + ;; + esac + + echo "DEVICE_TYPE=${DEVICE_TYPE}" > device_type_parameters + echo "#${BUILD_NUMBER}-${SRCREV_kernel:0:8}" > ${WORKSPACE}/version.txt + - build-name-setter: + name: 'version.txt' + file: true + - inject: + properties-file: device_type_parameters + - shell: + !include-raw: openembedded-lkft/builders.sh + - inject: + properties-file: post_build_lava_parameters + - linaro-publish-token + - shell: + !include-raw: openembedded-lkft/publishers.sh + - shell: + !include-raw: openembedded-lkft/submit_for_testing.sh + - shell: + !include-raw: openembedded-lkft/qemu-testjobs.sh + - inject: + properties-file: qemu_device_type_parameters + - shell: + !include-raw: openembedded-lkft/submit_for_testing.sh + publishers: + - groovy-postbuild: + script: + !include-raw: + - rpb-openembedded/postbuild.groovy + - openembedded-lkft/postbuild.groovy + - email-ext: + recipients: '${EMAIL_ADDRESS}' + matrix-trigger: only-configurations + aborted: true + subject: '[CI] ${MACHINE}: ${KERNEL_BRANCH} {{SRCREV_kernel}} ${BUILD_STATUS}' + body: | + Build URL: ${PROJECT_URL}${BUILD_NUMBER}/ + Full log: ${PROJECT_URL}${BUILD_NUMBER}/consoleText + Parsed warnings/errors: ${PROJECT_URL}${BUILD_NUMBER}/parsed_console + Git branch: ${KERNEL_BRANCH} + Git URL: ${KERNEL_REPO} + Git commit: ${SRCREV_kernel} + + Errors: + ${BUILD_LOG_REGEX, regex="^ERROR:.* ", linesBefore=0, linesAfter=0, showTruncatedLines=false} + presend-script: + !include-raw: openembedded-lkft/presend-script.groovy diff --git a/kernel-testing-configs/templates/trigger-generic.yaml b/kernel-testing-configs/templates/trigger-generic.yaml new file mode 100644 index 00000000..01a8aedc --- /dev/null +++ b/kernel-testing-configs/templates/trigger-generic.yaml @@ -0,0 +1,50 @@ +- job: + name: trigger-openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME} + project-type: freestyle + defaults: global + properties: + - authorization: + anonymous: + - job-read + - job-extended-read + - build-discarder: + days-to-keep: 30 + num-to-keep: 30 + parameters: + - string: + name: KERNEL_BRANCH + default: '${KERNEL_BRANCH}' + disabled: false + node: master + display-name: 'Trigger for LKFT - developer CI for ${DEVELOPER_JOB_NAME}' + scm: + - git: + url: ${KERNEL_REPO} + refspec: +refs/heads/${KERNEL_BRANCH}:refs/remotes/origin/${KERNEL_BRANCH} + name: origin + branches: + - origin/${KERNEL_BRANCH} + skip-tag: true + shallow-clone: false + wipe-workspace: false + triggers: + - pollscm: + cron: 'H/5 * * * *' + wrappers: + - timestamps + - build-name: + name: '#${BUILD_NUMBER}-${GIT_REVISION,length=8}' + builders: + - shell: | + #!/bin/bash -e + git clean -fdx + echo KERNEL_DESCRIBE=$(git describe --always) >> lkft_parameters + echo SRCREV_kernel=${GIT_COMMIT} >> lkft_parameters + echo MAKE_KERNELVERSION=$(make kernelversion) >> lkft_parameters + cat lkft_parameters + publishers: + - trigger-parameterized-builds: + - project: + - 'openembedded-lkft-developer-ci-${DEVELOPER_JOB_NAME}' + condition: SUCCESS + property-file: lkft_parameters diff --git a/kernel-testing-configs/test-params/test-kernel-ci-project b/kernel-testing-configs/test-params/test-kernel-ci-project new file mode 100644 index 00000000..55d1ab49 --- /dev/null +++ b/kernel-testing-configs/test-params/test-kernel-ci-project @@ -0,0 +1,4 @@ +KERNEL_BRANCH=linux-4.19.y +KERNEL_REPO=https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git +DUT=hikey +EMAIL_ADDRESS=vishal.bhoj@linaro.org |