From 7c57fef2f3328e5977596ed823b541936a949d9b Mon Sep 17 00:00:00 2001 From: lguohan Date: Wed, 10 Feb 2021 05:06:52 -0800 Subject: [PATCH] [ci]: build amd64/armhf/arm64 for CI build (#196) Signed-off-by: Guohan Lu --- .azure-pipelines/build-template.yml | 48 +++++++++++++++++++++++++++++ azure-pipelines.yml | 42 +++++++++++++++---------- 2 files changed, 73 insertions(+), 17 deletions(-) create mode 100644 .azure-pipelines/build-template.yml diff --git a/.azure-pipelines/build-template.yml b/.azure-pipelines/build-template.yml new file mode 100644 index 000000000000..d9f88b191a2d --- /dev/null +++ b/.azure-pipelines/build-template.yml @@ -0,0 +1,48 @@ +parameters: +- name: arch + type: string + values: + - amd64 + - armhf + - arm64 + +- name: pool + type: string + values: + - sonicbld + - sonicbld_8c + default: sonicbld + +- name: timeout + type: number + default: 600 + +- name: sonic_slave + type: string + +- name: artifact_name + type: string + +jobs: +- job: + pool: ${{ parameters.pool }} + displayName: ${{ parameters.arch }} + timeoutInMinutes: ${{ parameters.timeout }} + + container: + image: sonicdev-microsoft.azurecr.io:443/${{ parameters.sonic_slave }}:latest + + steps: + - checkout: self + clean: true + displayName: 'Checkout code' + - script: | + git config --global user.email "lguohan@build.com" + git config --global user.name "Guohan Lu" + export kernel_procure_method=build + cat /proc/cpuinfo + CONFIGURED_ARCH=${{ parameters.arch }} make + displayName: "Compile sonic kernel" + - publish: $(System.DefaultWorkingDirectory)/ + artifact: ${{ parameters.artifact_name }} + displayName: "Archive sonic kernel debian packages" diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 47e044cd34b3..5be58a67de8c 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -7,22 +7,30 @@ trigger: branches: include: - "*" -jobs: -- job: - timeoutInMinutes: 240 - pool: sonicbld - container: - image: sonicdev-microsoft.azurecr.io:443/sonic-slave-buster:latest +stages: +- stage: Build - steps: - - script: | - git config --global user.email "lguohan@build.com" - git config --global user.name "Guohan Lu" - export kernel_procure_method=build - cat /proc/cpuinfo - make - displayName: "Compile sonic kernel" - - publish: $(System.DefaultWorkingDirectory)/ - artifact: sonic-linux-kernel - displayName: "Archive sonic kernel debian packages" + jobs: + - template: .azure-pipelines/build-template.yml + parameters: + arch: amd64 + sonic_slave: sonic-slave-buster + artifact_name: sonic-linux-kernel + + - ${{ if ne(variables['Build.Reason'], 'PullRequest') }}: + - template: .azure-pipelines/build-template.yml + parameters: + arch: armhf + timeout: 1440 + pool: sonicbld_8c + sonic_slave: sonic-slave-buster-armhf + artifact_name: sonic-linux-kernel.armhf + + - template: .azure-pipelines/build-template.yml + parameters: + arch: arm64 + timeout: 1440 + pool: sonicbld_8c + sonic_slave: sonic-slave-buster-arm64 + artifact_name: sonic-linux-kernel.arm64