diff --git a/boards/.a62.yml b/boards/.a62.yml index 89cb69eda1a4a0e24a6ad8e69f744655dcb310ad..b19d807d61d44874f12373c69be6d2e89a489f46 100644 --- a/boards/.a62.yml +++ b/boards/.a62.yml @@ -64,4 +64,12 @@ deploy-edgehog-embedded-full-a62: artifacts: true variables: <<: *deploy-edgehog-a62 + <<: *build-edgehog-embedded-a62-full + +test-edgehog-embedded-full-a62: + extends: .test + needs: + - job: deploy-edgehog-embedded-full-a62 + artifacts: true + variables: <<: *build-edgehog-embedded-a62-full \ No newline at end of file diff --git a/boards/.c12.yml b/boards/.c12.yml index 210771295b30a3e51cc4de34bec8a0f31d3d10d7..d486be2500739018d2c5a150adb6689837f8723f 100644 --- a/boards/.c12.yml +++ b/boards/.c12.yml @@ -64,4 +64,12 @@ deploy-edgehog-embedded-full-c12: artifacts: true variables: <<: *deploy-edgehog-c12 + <<: *build-edgehog-embedded-c12-full + +test-edgehog-embedded-full-c12: + extends: .test + needs: + - job: deploy-edgehog-embedded-full-c12 + artifacts: true + variables: <<: *build-edgehog-embedded-c12-full \ No newline at end of file diff --git a/boards/.c20.yml b/boards/.c20.yml index abe85d60566f5062f1ed8d6643c1a6a100d27c0d..57dcdfcfef90f90382b076925a6dd267cbf0b36b 100644 --- a/boards/.c20.yml +++ b/boards/.c20.yml @@ -64,4 +64,12 @@ deploy-edgehog-embedded-full-c20: artifacts: true variables: <<: *deploy-edgehog-c20 - <<: *build-edgehog-embedded-c20-full \ No newline at end of file + <<: *build-edgehog-embedded-c20-full + +test-edgehog-embedded-full-c20: + extends: .test + needs: + - job: deploy-edgehog-embedded-full-c20 + artifacts: true + variables: + <<: *build-edgehog-embedded-c20-full \ No newline at end of file diff --git a/boards/.c26.yml b/boards/.c26.yml index f7e37715403a4d0dc2c12bd6d0e13f41ea346ab7..b2154a89795ec78e6aa02225d03e9d9b1fd87b69 100644 --- a/boards/.c26.yml +++ b/boards/.c26.yml @@ -64,4 +64,12 @@ deploy-edgehog-embedded-full-c26: artifacts: true variables: <<: *deploy-edgehog-c26 + <<: *build-edgehog-embedded-c26-full + +test-edgehog-embedded-full-c26: + extends: .test + needs: + - job: deploy-edgehog-embedded-full-c26 + artifacts: true + variables: <<: *build-edgehog-embedded-c26-full \ No newline at end of file diff --git a/boards/.c43.yml b/boards/.c43.yml index 515b65ff2133f0da29cf1aea9e4e000566a3e7d3..7c1c84df4184d4121e5d43f76f1ec8aae0cad6fc 100644 --- a/boards/.c43.yml +++ b/boards/.c43.yml @@ -64,4 +64,12 @@ deploy-edgehog-embedded-full-c43: artifacts: true variables: <<: *deploy-edgehog-c43 + <<: *build-edgehog-embedded-c43-full + +test-edgehog-embedded-full-c43: + extends: .test + needs: + - job: deploy-edgehog-embedded-full-c43 + artifacts: true + variables: <<: *build-edgehog-embedded-c43-full \ No newline at end of file diff --git a/manifest-pipeline-yocto.yml b/manifest-pipeline-yocto.yml index e622bbe83d4e7ec7ed86a0b70d10782f15de79ab..bba40709789c50a7b97b06529ac4fdf1c41db2af 100644 --- a/manifest-pipeline-yocto.yml +++ b/manifest-pipeline-yocto.yml @@ -37,10 +37,9 @@ variables: edgehog/layers/seco/meta-seco-edgehog-embedded edgehog/layers/external/poky edgehog/layers/external/linux-imx - - - # This is the jinja2 template file used to generate the build jobs - #BUILD_JOBS_TEMPLATE: build-jobs-yocto.yml.jinja2 + #GitLab group containing LAVA tests + TEST_REPO_URL: "https://gitlab-ci-token:${GITBOT_TOKEN}@git.seco.com/devops/lava-test-suite/lava-test.git" + TEST_BRANCH: main stages: # - manifest-pipeline @@ -50,6 +49,7 @@ stages: - changelog - notify - release + - test-probe workflow: rules: @@ -256,10 +256,8 @@ retrigger: timeout: 1h tags: - azure_deploy - rules: &schedule_tag_rule - # Trigger deploy jobs only on a schedule basis (for weekly release) or on tag - - if: $CI_PIPELINE_SOURCE == "schedule" - - if: $CI_COMMIT_TAG + rules: + - *build_rule script: - echo "Deploying packages..." - echo "This is the board for which the build has been performed... ${BOARD}" @@ -352,7 +350,7 @@ changelog: - send_notify allow_failure: true rules: - - *schedule_tag_rule + - *build_rule script: - PROJECT_ARGS="" - for project in ${CHANGELOG_PROJECTS}; do @@ -382,8 +380,10 @@ notify: tags: - send_notify allow_failure: true - rules: - - *schedule_tag_rule + rules: &schedule_tag_rule + # Trigger deploy jobs only on a schedule basis (for weekly release) or on tag + - if: $CI_PIPELINE_SOURCE == "schedule" + - if: $CI_COMMIT_TAG script: - | echo -e "The job results for all boards are listed below (also available by clicking on the **Job Report** button)." >> Job_message.txt @@ -448,4 +448,64 @@ release: echo $command >> release.sh cat release.sh chmod +x release.sh - sh release.sh \ No newline at end of file + sh release.sh + +########################## +######### TEST ########### +########################## + +.initSSH: &initSSH + - mkdir -p ~/.ssh + - echo "$SSH_KNOWN_HOSTS" > ~/.ssh/known_hosts + - echo ~/.ssh/known_hosts + - echo "$SSH_CONFIG_FILE" > ~/.ssh/config + - echo ~/.ssh/config + - echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa + - chmod 600 ~/.ssh/id_rsa + +.test: + image: lava-submitter:v0.1 + tags: + - lava-server + stage: test-probe + timeout: 4h + cache: {} + rules: + - *build_rule + artifacts: + when: always + paths: + - "results/**" + reports: + junit: results/results-*.xml + allow_failure: true + variables: + GIT_STRATEGY: none + before_script: + - *initSSH + - git clone git@git.seco.com:devops/lava-test-suite/lava-test.git + script: + - ls -la + - link_report=$(find . -iname link*report*"${BOARD}"*.txt) + - echo ${link_report} + - sed -i 's/\"//g' ${link_report} + - cat ${link_report} + - image_url=$(cat ${link_report} | grep 'seco.*'"${BOARD}"'.*image.*.wic.bz2'| grep -v latest) + - echo ${image_url} + - | + if [ -n "$CUSTOM" ]; then + image_url="${image_url}?${AZURE_STORAGE_PUBLIC_SAS_TOKEN}" + fi + - | + echo "Submitting LAVA job .." + python3 lava-test/scripts/submit_test.py \ + --image-update True \ + --image ${image_url} \ + --lavaserver-ip 10.197.197.10 \ + --webserver-ip lavalab.seco.com \ + --jobname ${CI_JOB_NAME}_${CI_PIPELINE_ID} \ + "Gitlab build test ${CI_PIPELINE_ID}" \ + --results-path "results" \ + --test-repo ${TEST_REPO_URL} \ + --test-repo-branch ${TEST_BRANCH} \ + --test-plan ${CI_PARAM_TEST_SUITE} \ No newline at end of file