Skip to content

Commit 179b67e

Browse files
committed
[Ci] Support to use the same snapshot for all platform builds (sonic-net#13913)
IBGP
1 parent dca4133 commit 179b67e

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

.azure-pipelines/azure-pipelines-UpgrateVersion.yml

+35
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,32 @@ parameters:
4242
- mellanox
4343

4444
stages:
45+
- stage: Prepare
46+
jobs:
47+
- job: Prepare
48+
steps:
49+
- script: |
50+
DEFAULT_MIRROR_URL_PREFIX=http://packages.trafficmanager.net
51+
DEBIAN_TIMESTAMP=$(curl $DEFAULT_MIRROR_URL_PREFIX/snapshot/debian/latest/timestamp)
52+
DEBIAN_SECURITY_TIMESTAMP=$(curl $DEFAULT_MIRROR_URL_PREFIX/snapshot/debian-security/latest/timestamp)
53+
echo "DEBIAN_TIMESTAMP=$DEBIAN_TIMESTAMP, DEBIAN_SECURITY_TIMESTAMP=$DEBIAN_SECURITY_TIMESTAMP"
54+
echo "##vso[task.setvariable variable=DEBIAN_TIMESTAMP;isOutput=true]$DEBIAN_TIMESTAMP"
55+
echo "##vso[task.setvariable variable=DEBIAN_SECURITY_TIMESTAMP;isOutput=true]$DEBIAN_SECURITY_TIMESTAMP"
56+
name: SetVersions
57+
displayName: 'Set snapshot versions'
4558
- stage: Build
59+
dependsOn: Prepare
4660
variables:
4761
- name: CACHE_MODE
4862
value: none
4963
- name: VERSION_CONTROL_OPTIONS
5064
value: 'SONIC_VERSION_CONTROL_COMPONENTS='
65+
- name: SKIP_CHECKOUT
66+
value: true
67+
- name: DEBIAN_TIMESTAMP
68+
value: $[ stageDependencies.Prepare.Prepare.outputs['SetVersions.DEBIAN_TIMESTAMP'] ]
69+
- name: DEBIAN_SECURITY_TIMESTAMP
70+
value: $[ stageDependencies.Prepare.Prepare.outputs['SetVersions.DEBIAN_SECURITY_TIMESTAMP'] ]
5171
- template: .azure-pipelines/template-variables.yml@buildimage
5272
jobs:
5373
- template: azure-pipelines-build.yml
@@ -56,6 +76,21 @@ stages:
5676
buildOptions: '${{ variables.VERSION_CONTROL_OPTIONS }} ENABLE_DOCKER_BASE_PULL=n SONIC_BUILD_JOBS=$(nproc) ENABLE_IMAGE_SIGNATURE=y'
5777
preSteps:
5878
- template: .azure-pipelines/template-clean-sonic-slave.yml@buildimage
79+
- checkout: self
80+
submodules: recursive
81+
fetchDepth: 0
82+
path: s
83+
displayName: 'Checkout code'
84+
- script: |
85+
echo "DEBIAN_TIMESTAMP=$DEBIAN_TIMESTAMP, DEBIAN_SECURITY_TIMESTAMP=$DEBIAN_SECURITY_TIMESTAMP"
86+
if [ "$MIRROR_SNAPSHOT" == y ]; then
87+
mkdir -p target/versions/default/
88+
echo "debian==$DEBIAN_TIMESTAMP" > target/versions/default/versions-mirror
89+
echo "debian-security==$DEBIAN_SECURITY_TIMESTAMP" >> target/versions/default/versions-mirror
90+
cat target/versions/default/versions-mirror
91+
fi
92+
displayName: 'Set snapshot versions'
93+
5994
- stage: UpgradeVersions
6095
jobs:
6196
- job: UpgradeVersions

0 commit comments

Comments
 (0)