From a648e1108e5b447385c45b6211340ad0a80fe331 Mon Sep 17 00:00:00 2001 From: ShiyanWangMS Date: Tue, 7 Nov 2023 13:27:41 +0800 Subject: [PATCH] Add Azure pipeline to build legacy sonic-mgmt-docker (#17073) Why I did it This is part of Python3 migration project. This pipeline will build sonic-mgmt-docker with both Python2 and Python3. The main difference between legacy sonic-mgmt-docker and now is: make LEGACY_SONIC_MGMT_DOCKER=y target/docker-sonic-mgmt.gz docker tag docker-sonic-mgmt $REGISTRY_SERVER/docker-sonic-mgmt:legacy Work item tracking Microsoft ADO (number only): 25254349 How I did it Add pipeline file. --- .azure-pipelines/docker-sonic-mgmt-legacy.yml | 63 +++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .azure-pipelines/docker-sonic-mgmt-legacy.yml diff --git a/.azure-pipelines/docker-sonic-mgmt-legacy.yml b/.azure-pipelines/docker-sonic-mgmt-legacy.yml new file mode 100644 index 000000000000..c0cf87f442bd --- /dev/null +++ b/.azure-pipelines/docker-sonic-mgmt-legacy.yml @@ -0,0 +1,63 @@ +# Starter pipeline +# Start with a minimal pipeline that you can customize to build and deploy your code. +# Add steps that build, run tests, deploy, and more: +# https://aka.ms/yaml +# Build and push sonic-mgmt image + +schedules: +- cron: "0 8 * * *" + branches: + include: + - master + always: true + +trigger: none +pr: + branches: + include: + - master + paths: + include: + - dockers/docker-sonic-mgmt + +parameters: +- name: registry_url + type: string + default: sonicdev-microsoft.azurecr.io +- name: registry_conn + type: string + default: sonicdev + +stages: +- stage: Build + jobs: + - job: Build + pool: sonicbld + timeoutInMinutes: 360 + steps: + - template: cleanup.yml + - checkout: self + clean: true + - bash: | + set -xe + git submodule update --init --recursive -- src/sonic-platform-daemons src/sonic-genl-packet src/sonic-sairedis src/ptf src/sonic-device-data + + make SONIC_BUILD_JOBS=$(nproc) DEFAULT_CONTAINER_REGISTRY=publicmirror.azurecr.io ENABLE_DOCKER_BASE_PULL=y configure PLATFORM=generic + make SONIC_BUILD_JOBS=$(nproc) DEFAULT_CONTAINER_REGISTRY=publicmirror.azurecr.io ENABLE_DOCKER_BASE_PULL=y LEGACY_SONIC_MGMT_DOCKER=y target/docker-sonic-mgmt.gz + cp target -r $(Build.ArtifactStagingDirectory)/target + docker load -i target/docker-sonic-mgmt.gz + docker tag docker-sonic-mgmt $REGISTRY_SERVER/docker-sonic-mgmt:legacy + env: + REGISTRY_SERVER: ${{ parameters.registry_url }} + displayName: Build docker-sonic-mgmt.gz + - task: Docker@2 + displayName: Upload image + inputs: + containerRegistry: ${{ parameters.registry_conn }} + repository: docker-sonic-mgmt + command: push + tags: latest + - publish: $(Build.ArtifactStagingDirectory) + artifact: 'docker-sonic-mgmt' + displayName: "Archive docker image sonic-mgmt" +