From a103214a865ed8ccb6cbf565eb61a1f78beecf70 Mon Sep 17 00:00:00 2001 From: Devaraj Ranganna Date: Tue, 15 Oct 2024 12:48:19 +0000 Subject: [PATCH 1/2] ci: Enable gitlab-ci cache Signed-off-by: Devaraj Ranganna --- .gitlab-ci.yml | 34 ++++++++++++++++++++++++++ release_changes/202411201651.change.md | 1 + 2 files changed, 35 insertions(+) create mode 100644 release_changes/202411201651.change.md diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a053b30b..da295ac3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -52,6 +52,22 @@ workflow: before_script: - python -m pip install pyelftools script: + - | + apt-get update -y && \ + apt-get install ccache -y && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists + - ccache -o cache_dir=/cache/$CI_JOB_NAME_SLUG/.ccache + - ccache -p + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-gcc + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-g++ + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-cpp + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-c++ + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-ar + - ln -s /usr/bin/ccache /usr/lib/ccache/armclang + - ln -s /usr/bin/ccache /usr/lib/ccache/armar + - export PATH=/usr/lib/ccache:$PATH + - echo $PATH - export APP_UNDERSCORED=$(echo ${APP} | tr '-' '_') - ./tools/ci/generate_credentials.sh -f -p applications/${APP_UNDERSCORED}/configs/aws_configs - git config --global user.email "ci@example.com" @@ -79,6 +95,7 @@ workflow: build/CMakeCache.txt \ applications/${APP_UNDERSCORED}/configs/aws_configs fi + - ccache -s # Build Corstone320 applications which later are tested. build-applications-corstone320: @@ -359,6 +376,22 @@ integration-tests: rules: - if: ( $SCHEDULED_JOB_TO_RUN == "integration-tests" ) script: + - | + apt-get update -y && \ + apt-get install ccache -y && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists + - ccache -o cache_dir=/cache/$CI_JOB_NAME_SLUG/.ccache + - ccache -p + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-gcc + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-g++ + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-cpp + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-c++ + - ln -s /usr/bin/ccache /usr/lib/ccache/arm-none-eabi-ar + - ln -s /usr/bin/ccache /usr/lib/ccache/armclang + - ln -s /usr/bin/ccache /usr/lib/ccache/armar + - export PATH=/usr/lib/ccache:$PATH + - echo $PATH - export APP_UNDERSCORED=$(echo ${APP} | tr '-' '_') - ./tools/ci/generate_credentials.sh -f -p applications/${APP_UNDERSCORED}/configs/aws_configs - git config --global user.email "ci@example.com" @@ -390,6 +423,7 @@ integration-tests: --merged-elf-name "${APP}_merged.elf" \ --signed-update-bin-name "${APP}-update_signed.bin" \ --timeout-seconds 14400 + - ccache -s parallel: matrix: - diff --git a/release_changes/202411201651.change.md b/release_changes/202411201651.change.md new file mode 100644 index 00000000..cbfc0d87 --- /dev/null +++ b/release_changes/202411201651.change.md @@ -0,0 +1 @@ +ci: Enable gitlab-ci cache From 8552efd9bb857291da5a62676ebc75ccb18335a5 Mon Sep 17 00:00:00 2001 From: Devaraj Ranganna Date: Wed, 20 Nov 2024 16:23:53 +0000 Subject: [PATCH 2/2] ci: Adjust CI runner resources Increase/decrease the CI runner resources based on the job requirements. Signed-off-by: Devaraj Ranganna --- .gitlab-ci.yml | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index da295ac3..e6e01ea5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,8 +12,6 @@ include: variables: OPEN_IOT_SDK_DOCKER_VERSION: v2 - KUBERNETES_CPU_REQUEST: 1 - KUBERNETES_MEMORY_REQUEST: 1Gi GIT_SUBMODULE_STRATEGY: none RETRY_LIMIT: 100 @@ -96,6 +94,10 @@ workflow: applications/${APP_UNDERSCORED}/configs/aws_configs fi - ccache -s + variables: + KUBERNETES_CPU_REQUEST: 8 + KUBERNETES_EPHEMERAL_STORAGE_REQUEST: 10Gi + KUBERNETES_MEMORY_REQUEST: 12Gi # Build Corstone320 applications which later are tested. build-applications-corstone320: @@ -209,6 +211,9 @@ build-applications-corstone300: - *pipeline_config_corstone300 variables: PYTHONUNBUFFERED: 1 + KUBERNETES_CPU_REQUEST: 16 + KUBERNETES_EPHEMERAL_STORAGE_REQUEST: 10Gi + KUBERNETES_MEMORY_REQUEST: 12Gi test-blinky-output: extends: .test_job @@ -561,6 +566,10 @@ sw-vsi-configs-test: - runner_system_failure variables: GIT_SUBMODULE_STRATEGY: recursive + KUBERNETES_CPU_REQUEST: 16 + KUBERNETES_EPHEMERAL_STORAGE_REQUEST: 10Gi + KUBERNETES_MEMORY_REQUEST: 12Gi + gnu-toolchain-test: tags: @@ -636,6 +645,9 @@ gnu-toolchain-test: - runner_system_failure variables: GIT_SUBMODULE_STRATEGY: recursive + KUBERNETES_CPU_REQUEST: 16 + KUBERNETES_EPHEMERAL_STORAGE_REQUEST: 10Gi + KUBERNETES_MEMORY_REQUEST: 12Gi iot-vsocket-psa-crypto-mbedtls-test: tags: @@ -695,6 +707,9 @@ iot-vsocket-psa-crypto-mbedtls-test: - runner_system_failure variables: GIT_SUBMODULE_STRATEGY: recursive + KUBERNETES_CPU_REQUEST: 16 + KUBERNETES_EPHEMERAL_STORAGE_REQUEST: 10Gi + KUBERNETES_MEMORY_REQUEST: 12Gi ######################## # Black Duck scan #