Skip to content

Commit 657df13

Browse files
committed
Merge branch 'master' into dev-reset-local-users-password
2 parents f5ea07d + 8063384 commit 657df13

File tree

3,083 files changed

+606338
-59648
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

3,083 files changed

+606338
-59648
lines changed

.azure-pipelines/azure-pipelines-build.yml

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ jobs:
3838
docker_syncd_rpc_image: no
3939
syncd_rpc_image: no
4040
platform_rpc: no
41+
ss_image: no
4142
${{ if parameters.qemuOrCrossBuild }}:
4243
SONIC_SLAVE_DOCKER_DRIVER: 'vfs'
4344
CACHE_MODE: 'none'
@@ -81,7 +82,7 @@ jobs:
8182
variables:
8283
dbg_image: yes
8384

84-
- name: innovium
85+
- name: marvell-teralynx
8586
variables:
8687
dbg_image: yes
8788

@@ -106,6 +107,7 @@ jobs:
106107
- name: mellanox
107108
variables:
108109
dbg_image: yes
110+
ss_image: yes
109111
docker_syncd_rpc_image: yes
110112
syncd_rpc_image: yes
111113
platform_rpc: mlnx
@@ -162,6 +164,10 @@ jobs:
162164
make $BUILD_OPTIONS INSTALL_DEBUG_TOOLS=y target/sonic-$(GROUP_NAME).bin
163165
mv target/sonic-$(GROUP_NAME).bin target/sonic-$(GROUP_NAME)-dbg.bin
164166
fi
167+
if [ $(ss_image) == yes ]; then
168+
make $BUILD_OPTIONS SMARTSWITCH=1 INCLUDE_DHCP_SERVER=y target/sonic-$(GROUP_NAME).bin
169+
mv target/sonic-$(GROUP_NAME).bin target/sonic-$(GROUP_NAME)-smartswitch.bin
170+
fi
165171
if [ $(swi_image) == yes ]; then
166172
make $BUILD_OPTIONS ENABLE_IMAGE_SIGNATURE=y target/sonic-aboot-$(GROUP_NAME).swi
167173
fi
@@ -182,7 +188,20 @@ jobs:
182188
make $BUILD_OPTIONS ENABLE_SYNCD_RPC=y target/sonic-$(GROUP_NAME).bin
183189
mv target/sonic-mellanox.bin target/sonic-$(GROUP_NAME)-rpc.bin
184190
fi
191+
if [ $(GROUP_NAME) == nvidia-bluefield ]; then
192+
make $BUILD_OPTIONS target/sonic-$(GROUP_NAME).bfb
193+
fi
185194
make $BUILD_OPTIONS target/sonic-$(GROUP_NAME).bin
186195
fi
187196
displayName: "Build sonic image"
188197
- template: .azure-pipelines/check-dirty-version.yml@buildimage
198+
- task: ManifestGeneratorTask@0
199+
condition: ne(variables.SKIP_MG, 'y')
200+
timeoutInMinutes: 60
201+
continueOnError: true
202+
displayName: "Manifest Generator"
203+
inputs:
204+
BuildDropPath: '$(System.DefaultWorkingDirectory)/target/'
205+
ManifestDirPath: 'target/'
206+
BuildComponentPath: $(System.DefaultWorkingDirectory)/src/
207+

.azure-pipelines/azure-pipelines-image-template.yml

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ jobs:
4242
fetchDepth: 0
4343
condition: and(succeeded(), eq(variables.SKIP_CHECKOUT, ''))
4444
displayName: 'Checkout code'
45+
- script: |
46+
set -x
47+
sudo setfacl -R -b $(Agent.BuildDirectory)
48+
displayName: 'setfacl'
4549
- script: |
4650
BRANCH_NAME=$(Build.SourceBranchName)
4751
[ -n "$SYSTEM_PULLREQUEST_PULLREQUESTID" ] && BRANCH_NAME="$SYSTEM_PULLREQUEST_TARGETBRANCH-$SYSTEM_PULLREQUEST_PULLREQUESTNUMBER"
@@ -54,9 +58,28 @@ jobs:
5458
displayName: 'Make configure'
5559
postSteps:
5660
- script: |
61+
BUILD_REASON=$(Build.Reason)
62+
echo "Build.Reason = $BUILD_REASON"
63+
echo "Build.DefinitionName = $BUILD_DEFINITIONNAME"
64+
if [[ "$BUILD_REASON" != "PullRequest" && "$BUILD_DEFINITIONNAME" == "Azure.sonic-buildimage.official.vs" ]]
65+
then
66+
PORT=443
67+
DOCKERS=$(ls target/docker-ptf.gz)
68+
BRANCH=$(Build.SourceBranchName)
69+
echo "Branch = $BRANCH"
70+
LABELS="$BRANCH"
71+
[[ "$BRANCH" == "master" ]] && LABELS="$LABELS latest"
72+
for f in $DOCKERS; do
73+
echo $f
74+
echo "Labels = $LABELS"
75+
./push_docker.sh $f $(REGISTRY_SERVER_PUBLIC) $PORT $(REGISTRY_USERNAME) "$REGISTRY_PASSWD" "$LABELS"
76+
done
77+
fi
5778
mkdir -p $(Build.ArtifactStagingDirectory)/target
5879
mv target/* $(Build.ArtifactStagingDirectory)/target/
59-
displayName: Copy Artifacts
80+
env:
81+
REGISTRY_PASSWD: $(REGISTRY_PASSWD)
82+
displayName: Publish to Docker Registry and Copy Artifacts
6083
condition: always()
6184
- publish: $(Build.ArtifactStagingDirectory)
6285
artifact: 'sonic-buildimage.$(GROUP_NAME)$(GROUP_EXTNAME)'

.azure-pipelines/official-build.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ stages:
3636
- stage: Build
3737
pool: sonicbld-1es
3838
variables:
39+
- group: Container-Registry
3940
- name: CACHE_MODE
4041
value: wcache
4142
- template: .azure-pipelines/azure-pipelines-repd-build-variables.yml@buildimage

.azure-pipelines/template-variables.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
variables:
22
DEFAULT_CONTAINER_REGISTRY: 'publicmirror.azurecr.io'
3-
COMMON_LIB_BUILD_ENVS: 'bullseye'
3+
COMMON_LIB_BUILD_ENVS: 'bookworm'
44
SONIC_SLAVE_DOCKER_DRIVER: 'overlay2'
55
SONIC_BUILD_RETRY_COUNT: 3
66
SONIC_BUILD_RETRY_INTERVAL: 600

.github/workflows/protect-file.yml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Protect certain files to avoid further changes
2+
3+
on:
4+
push:
5+
branches:
6+
- 'master'
7+
- '202[2-9][0-9][0-9]'
8+
pull_request:
9+
branches:
10+
- 'master'
11+
- '202[2-9][0-9][0-9]'
12+
13+
jobs:
14+
check-file:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Checkout repository
18+
uses: actions/checkout@v3
19+
20+
- name: Fetch base branch
21+
run: |
22+
git fetch origin ${GITHUB_BASE_REF}
23+
24+
- name: Check protected files
25+
run: |
26+
echo "Starting file check step"
27+
protected_files=('src/sonic-config-engine/minigraph.py' 'files/build_templates/init_cfg.json.j2')
28+
base_branch=$(git rev-parse origin/${GITHUB_BASE_REF})
29+
30+
for protected_file in "${protected_files[@]}"; do
31+
echo "Checking ${protected_file}"
32+
if git diff --name-only $base_branch | grep -q "^${protected_file}\$"; then
33+
echo "Error: You are trying to modify ${protected_file}, which is protected."
34+
exit 1
35+
fi
36+
done
37+
echo "No changes detected in protected files"

.gitmodules

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
[submodule "src/sonic-frr/frr"]
4747
path = src/sonic-frr/frr
4848
url = https://github.com/sonic-net/sonic-frr.git
49-
branch = frr/8.5
49+
branch = frr-10.0.1
5050
[submodule "platform/p4/p4-hlir/p4-hlir-v1.1"]
5151
path = platform/p4/p4-hlir/p4-hlir-v1.1
5252
url = https://github.com/p4lang/p4-hlir.git
@@ -106,6 +106,9 @@
106106
[submodule "src/sonic-gnmi"]
107107
path = src/sonic-gnmi
108108
url = https://github.com/sonic-net/sonic-gnmi.git
109+
[submodule "src/sonic-bmp"]
110+
path = src/sonic-bmp
111+
url = https://github.com/sonic-net/sonic-bmp.git
109112
[submodule "src/sonic-genl-packet"]
110113
path = src/sonic-genl-packet
111114
url = https://github.com/sonic-net/sonic-genl-packet
@@ -121,6 +124,12 @@
121124
[submodule "platform/marvell/sonic-platform-marvell"]
122125
path = platform/marvell/sonic-platform-marvell
123126
url = https://github.com/Marvell-switching/sonic-platform-arm64.git
124-
[submodule "platform/innovium/sonic-platform-marvell"]
125-
path = platform/innovium/sonic-platform-marvell
126-
url = https://github.com/Marvell-switching/sonic-platform-marvell
127+
[submodule "src/sonic-stp"]
128+
path = src/sonic-stp
129+
url = https://github.com/sonic-net/sonic-stp
130+
[submodule "platform/marvell-teralynx/sonic-platform-marvell-teralynx"]
131+
path = platform/marvell-teralynx/sonic-platform-marvell-teralynx
132+
url = https://github.com/Marvell-switching/sonic-platform-marvell.git
133+
[submodule "platform/vpp"]
134+
path = platform/vpp
135+
url = https://github.com/sonic-net/sonic-platform-vpp.git

Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@ endif
3737
PLATFORM_PATH := platform/$(if $(PLATFORM),$(PLATFORM),$(CONFIGURED_PLATFORM))
3838
PLATFORM_CHECKOUT := platform/checkout
3939
PLATFORM_CHECKOUT_FILE := $(PLATFORM_CHECKOUT)/$(PLATFORM).ini
40+
ifeq ($(SMARTSWITCH),1)
41+
PLATFORM_CHECKOUT_FILE := $(PLATFORM_CHECKOUT)/$(PLATFORM)-smartswitch.ini
42+
endif
4043
PLATFORM_CHECKOUT_CMD := $(shell if [ -f $(PLATFORM_CHECKOUT_FILE) ]; then PLATFORM_PATH=$(PLATFORM_PATH) j2 $(PLATFORM_CHECKOUT)/template.j2 $(PLATFORM_CHECKOUT_FILE); fi)
4144
MAKE_WITH_RETRY := ./scripts/run_with_retry $(MAKE)
4245

Makefile.work

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@
6161
# * SONIC_PTF_ENV_PY_VER: Python version for PTF image
6262
# * Default: mixed
6363
# * Values: mixed,py3
64+
# * ENABLE_MULTIDB: Enable multiple redis database instances.
65+
# * Default: unset
66+
# * Values: y
6467
###############################################################################
6568

6669
SHELL = /bin/bash
@@ -532,10 +535,12 @@ SONIC_BUILD_INSTRUCTION := $(MAKE) \
532535
SONIC_CONFIG_USE_NATIVE_DOCKERD_FOR_BUILD=$(SONIC_CONFIG_USE_NATIVE_DOCKERD_FOR_BUILD) \
533536
SONIC_INCLUDE_SYSTEM_TELEMETRY=$(INCLUDE_SYSTEM_TELEMETRY) \
534537
SONIC_INCLUDE_SYSTEM_GNMI=$(INCLUDE_SYSTEM_GNMI) \
538+
SONIC_INCLUDE_SYSTEM_BMP=$(INCLUDE_SYSTEM_BMP) \
535539
SONIC_INCLUDE_SYSTEM_EVENTD=$(INCLUDE_SYSTEM_EVENTD) \
536540
INCLUDE_DHCP_RELAY=$(INCLUDE_DHCP_RELAY) \
537541
INCLUDE_DHCP_SERVER=$(INCLUDE_DHCP_SERVER) \
538542
INCLUDE_MACSEC=$(INCLUDE_MACSEC) \
543+
INCLUDE_ICCPD=$(INCLUDE_ICCPD) \
539544
SONIC_INCLUDE_RESTAPI=$(INCLUDE_RESTAPI) \
540545
SONIC_INCLUDE_MUX=$(INCLUDE_MUX) \
541546
ENABLE_TRANSLIB_WRITE=$(ENABLE_TRANSLIB_WRITE) \
@@ -567,8 +572,10 @@ SONIC_BUILD_INSTRUCTION := $(MAKE) \
567572
ONIE_IMAGE_PART_SIZE=$(ONIE_IMAGE_PART_SIZE) \
568573
SONIC_OS_VERSION=$(SONIC_OS_VERSION) \
569574
PIP_HTTP_TIMEOUT=$(PIP_HTTP_TIMEOUT) \
575+
BUILD_PROCESS_TIMEOUT=$(BUILD_PROCESS_TIMEOUT) \
570576
LEGACY_SONIC_MGMT_DOCKER=$(LEGACY_SONIC_MGMT_DOCKER) \
571577
SONIC_PTF_ENV_PY_VER=$(SONIC_PTF_ENV_PY_VER) \
578+
ENABLE_MULTIDB=$(ENABLE_MULTIDB) \
572579
$(SONIC_OVERRIDE_BUILD_VARS)
573580

574581
.PHONY: sonic-slave-build sonic-slave-bash init reset

README.md

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
[![Broadcom](https://dev.azure.com/mssonic/build/_apis/build/status/broadcom/Azure.sonic-buildimage.official.broadcom?branchName=master&label=Broadcom)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=138&branchName=master)
44
[![Centec](https://dev.azure.com/mssonic/build/_apis/build/status/centec/Azure.sonic-buildimage.official.centec?branchName=master&label=Centec)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=143&branchName=master)
55
[![Centec(arm64)](https://dev.azure.com/mssonic/build/_apis/build/status/centec/Azure.sonic-buildimage.official.centec-arm64?branchName=master&label=Centec-arm64)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=140&branchName=master)
6-
[![Innovium](https://dev.azure.com/mssonic/build/_apis/build/status/innovium/Azure.sonic-buildimage.official.innovium?branchName=master&label=Innovium)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=148&branchName=master)
6+
[![Marvell-Teralynx](https://dev.azure.com/mssonic/build/_apis/build/status/marvell-teralynx/Azure.sonic-buildimage.official.marvell-teralynx?branchName=master&label=Marvell-Teralynx)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=148&branchName=master)
77
[![Mellanox](https://dev.azure.com/mssonic/build/_apis/build/status/mellanox/Azure.sonic-buildimage.official.mellanox?branchName=master&label=Mellanox)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=139&branchName=master)
88
[![Marvell(armhf)](https://dev.azure.com/mssonic/build/_apis/build/status/marvell/Azure.sonic-buildimage.official.marvell-armhf?branchName=master&label=Marvell-armhf)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=141&branchName=master)
99
[![Marvell(arm64)](https://dev.azure.com/mssonic/build/_apis/build/status/marvell/Azure.sonic-buildimage.official.marvell-arm64?branchName=master&label=Marvell-arm64)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=999&branchName=master)
@@ -13,6 +13,20 @@
1313

1414
[![VS](https://dev.azure.com/mssonic/build/_apis/build/status/vs/Azure.sonic-buildimage.official.vs?branchName=master&label=VS)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=142&branchName=master)
1515

16+
*202405 builds*:
17+
18+
[![Broadcom](https://dev.azure.com/mssonic/build/_apis/build/status/broadcom/Azure.sonic-buildimage.official.broadcom?branchName=202405&label=Broadcom)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=138&branchName=202405)
19+
[![Centec](https://dev.azure.com/mssonic/build/_apis/build/status/centec/Azure.sonic-buildimage.official.centec?branchName=202405&label=Centec)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=143&branchName=202405)
20+
[![Centec(arm64)](https://dev.azure.com/mssonic/build/_apis/build/status/centec/Azure.sonic-buildimage.official.centec-arm64?branchName=202405&label=Centec-arm64)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=140&branchName=202405)
21+
[![Innovium](https://dev.azure.com/mssonic/build/_apis/build/status/innovium/Azure.sonic-buildimage.official.innovium?branchName=202405&label=Innovium)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=148&branchName=202405)
22+
[![Mellanox](https://dev.azure.com/mssonic/build/_apis/build/status/mellanox/Azure.sonic-buildimage.official.mellanox?branchName=202405&label=Mellanox)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=139&branchName=202405)
23+
[![Marvell(armhf)](https://dev.azure.com/mssonic/build/_apis/build/status/marvell/Azure.sonic-buildimage.official.marvell-armhf?branchName=202405&label=Marvell-armhf)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=141&branchName=202405)
24+
[![Marvell(arm64)](https://dev.azure.com/mssonic/build/_apis/build/status/marvell/Azure.sonic-buildimage.official.marvell-arm64?branchName=202405&label=Marvell-arm64)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=999&branchName=202405)
25+
[![Nephos](https://dev.azure.com/mssonic/build/_apis/build/status/nephos/Azure.sonic-buildimage.official.nephos?branchName=202405&label=Nephos)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=149&branchName=202405)
26+
[![Nvidia-Bluefield](https://dev.azure.com/mssonic/build/_apis/build/status/nvidia/Azure.sonic-buildimage.official.nvidia-bluefield?branchName=202405&label=Nvidia-Bluefield)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=1665&branchName=202405)
27+
[![Pensando](https://dev.azure.com/mssonic/build/_apis/build/status/pensando/Azure.sonic-buildimage.official.pensando?branchName=202405&label=Pensando)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=1366&branchName=202405)
28+
[![VS](https://dev.azure.com/mssonic/build/_apis/build/status/vs/Azure.sonic-buildimage.official.vs?branchName=202405&label=VS)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=142&branchName=202405)
29+
1630
*202311 builds*:
1731

1832
[![Broadcom](https://dev.azure.com/mssonic/build/_apis/build/status/broadcom/Azure.sonic-buildimage.official.broadcom?branchName=202311&label=Broadcom)](https://dev.azure.com/mssonic/build/_build/latest?definitionId=138&branchName=202311)
@@ -201,7 +215,7 @@ The supported ASIC vendors are:
201215
* PLATFORM=centec
202216
* PLATFORM=nephos
203217
* PLATFORM=nvidia-bluefield
204-
* PLATFORM=innovium
218+
* PLATFORM=marvell-teralynx
205219
* PLATFORM=vs
206220

207221
## Usage for ARM Architecture
@@ -359,8 +373,8 @@ on the SAI version for each SONiC release.
359373
and Mellanox switch ASIC (gzip tar archive)
360374
* docker-syncd-nephos.gz: docker image for the daemon to sync database
361375
and Nephos switch ASIC (gzip tar archive)
362-
* docker-syncd-invm.gz: docker image for the daemon to sync database
363-
and Innovium switch ASIC (gzip tar archive)
376+
* docker-syncd-mrvl-teralynx.gz: docker image for the daemon to sync database
377+
and Marvell-Teralynx switch ASIC (gzip tar archive)
364378
* docker-sonic-p4.gz: docker image for all-in-one for p4 software switch
365379
(gzip tar archive)
366380
* docker-sonic-vs.gz: docker image for all-in-one for software virtual switch

azure-pipelines.yml

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@ stages:
7070
- name: broadcom
7171
variables:
7272
swi_image: yes
73+
docker_syncd_rpc_image: yes
74+
platform_rpc: brcm
7375
INCLUDE_RESTAPI: y
7476
- name: mellanox
7577
variables:
@@ -295,22 +297,22 @@ stages:
295297
MGMT_BRANCH: $(BUILD_BRANCH)
296298
TEST_SET: onboarding_t1
297299

298-
- job: onboarding_elastictest_dualtor
299-
displayName: "onboarding dualtor testcases by Elastictest - optional"
300-
timeoutInMinutes: 240
301-
continueOnError: true
302-
pool: sonic-ubuntu-1c
303-
steps:
304-
- template: .azure-pipelines/run-test-elastictest-template.yml@sonic-mgmt
305-
parameters:
306-
TOPOLOGY: dualtor
307-
STOP_ON_FAILURE: "False"
308-
RETRY_TIMES: 0
309-
MIN_WORKER: $(T0_DUALTOR_INSTANCE_NUM)
310-
MAX_WORKER: $(T0_DUALTOR_INSTANCE_NUM)
311-
KVM_IMAGE_BRANCH: $(BUILD_BRANCH)
312-
MGMT_BRANCH: $(BUILD_BRANCH)
313-
TEST_SET: onboarding_dualtor
300+
# - job: onboarding_elastictest_dualtor
301+
# displayName: "onboarding dualtor testcases by Elastictest - optional"
302+
# timeoutInMinutes: 240
303+
# continueOnError: true
304+
# pool: sonic-ubuntu-1c
305+
# steps:
306+
# - template: .azure-pipelines/run-test-elastictest-template.yml@sonic-mgmt
307+
# parameters:
308+
# TOPOLOGY: dualtor
309+
# STOP_ON_FAILURE: "False"
310+
# RETRY_TIMES: 0
311+
# MIN_WORKER: $(T0_DUALTOR_INSTANCE_NUM)
312+
# MAX_WORKER: $(T0_DUALTOR_INSTANCE_NUM)
313+
# KVM_IMAGE_BRANCH: $(BUILD_BRANCH)
314+
# MGMT_BRANCH: $(BUILD_BRANCH)
315+
# TEST_SET: onboarding_dualtor
314316

315317
# - job: wan_elastictest
316318
# displayName: "kvmtest-wan by Elastictest"

0 commit comments

Comments
 (0)