Skip to content

Commit

Permalink
Merge branch 'sonic-net:main' into dash-config-generator
Browse files Browse the repository at this point in the history
  • Loading branch information
mgheorghe authored Aug 6, 2024
2 parents 1506f5b + 2d622bc commit 6293de1
Show file tree
Hide file tree
Showing 575 changed files with 48,664 additions and 6,650 deletions.
20 changes: 16 additions & 4 deletions .github/workflows/dash-bmv2-bldr-docker.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,22 @@
name: DASH-docker-bmv2-bldr-build-image


on:
push:
branches: [ "**" ]
paths:
- '.github/workflows/dash-bmv2-bldr-docker.yml'
- 'dash-pipeline/Makefile'
- 'dash-pipeline/dockerfiles/Dockerfile.bmv2-bldr'
- 'dash-pipeline/dockerfiles/DOCKER_BMV2_BLDR_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
pull_request:
branches: [ "main" ]
branches: [ "**" ]
paths:
- '.github/workflows/dash-bmv2-bldr-docker.yml'
- 'dash-pipeline/Makefile'
- 'dash-pipeline/dockerfiles/Dockerfile.bmv2-bldr'
- 'dash-pipeline/dockerfiles/DOCKER_BMV2_BLDR_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
workflow_dispatch:
Expand All @@ -29,5 +32,14 @@ jobs:
- uses: actions/checkout@v3
- name: Build dash-bmv2-bldr docker image
run: make docker-bmv2-bldr
- name: Publish dash-bmv2 docker image
run: make docker-publish-bmv2-bldr

# Can only publish from within DASH repo (need credentials from secrets)
- uses: azure/docker-login@v1
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
with:
login-server: sonicdash.azurecr.io
username: ${{ secrets.DASH_ACR_USERNAME }}
password: ${{ secrets.DASH_ACR_PASSWORD }}
- name: Publish dash-bmv2-bldr image
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
run: make docker-publish-bmv2-bldr
43 changes: 30 additions & 13 deletions .github/workflows/dash-bmv2-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,15 @@ on:
- 'test/**.sh'
- 'test/**.yml'
- 'dash-pipeline/**'
- '!dash-pipeline/docker files/Dockerfile.*'
- '!dash-pipeline/dockerfiles/Dockerfile.*'
- 'dash-pipeline/dockerfiles/*.env'
- '!dash-pipeline/.dockerignore'
- '!dash-pipeline/**.md'
- '!dash-pipeline/**.svg'
- '!dash-pipeline/**.png'
- '!dash-pipeline/**.txt'
pull_request:
branches: [ "main" ]
branches: [ "**" ]
paths:
- '.gitmodules'
- '.github/workflows/dash-bmv2-ci.yml'
Expand All @@ -27,7 +28,8 @@ on:
- 'test/**.sh'
- 'test/**.yml'
- 'dash-pipeline/**'
- '!dash-pipeline/docker files/Dockerfile.*'
- '!dash-pipeline/dockerfiles/Dockerfile.*'
- 'dash-pipeline/dockerfiles/*.env'
- '!dash-pipeline/.dockerignore'
- '!dash-pipeline/**.md'
- '!dash-pipeline/**.svg'
Expand All @@ -40,25 +42,28 @@ jobs:
name: Build and Test DASH Pipeline
runs-on: ubuntu-20.04
env:
docker_fg_flags: -u root --privileged
docker_bg_flags: -d -u root --privileged
docker_fg_flags: --privileged
docker_fg_root_flags: --privileged -u root
docker_bg_flags: -d --privileged
defaults:
run:
working-directory: ./dash-pipeline
steps:
- uses: actions/checkout@v3
- name: Pull docker p4c image
run: make docker-pull-dash-p4c
run: make docker-dash-p4c
- name: Build P4 software switch (bmv2) and P4Info
run: DOCKER_FLAGS=$docker_fg_flags make p4
- name: Install SAI submodule
run: git submodule update --init
- name: Pull docker saithrift-bldr image
run: make docker-pull-saithrift-bldr
- name: Pull/Build docker saithrift-bldr image
run: make docker-saithrift-bldr
- name: Pull/Build docker bmv2-bldr image
run: make docker-bmv2-bldr
- name: Generate SAI API
run: DOCKER_FLAGS=$docker_fg_flags make sai
- name: Pull docker bmv2-bldr image
run: make docker-pull-bmv2-bldr
- name: Check if SAI spec is updated
run: DOCKER_FLAGS=$docker_fg_flags make check-sai-spec
- name: Build libsai c++ tests
run: DOCKER_FLAGS=$docker_fg_flags make test
- name: Prepare network
Expand All @@ -76,9 +81,21 @@ jobs:
- name: Run saithrift server
run: DOCKER_FLAGS=$docker_bg_flags make run-saithrift-server
- name: Run PTF Tests
run: DOCKER_FLAGS=$docker_fg_flags make run-saithrift-ptftests
run: DOCKER_FLAGS=$docker_fg_root_flags make run-saithrift-ptftests
- name: Deploy ixia-c Traffic Generator
run: DOCKER_FLAGS=$docker_fg_flags make deploy-ixiac
- name: Run Pytests
run: DOCKER_FLAGS=$docker_fg_flags make run-saithrift-pytests

run: DOCKER_FLAGS=$docker_fg_root_flags make run-saithrift-pytests
- name: Pull/Build SAI-Challenger client builder docker image
run: DOCKER_FLAGS=$docker_fg_flags make docker-saichallenger-client-bldr
- name: Build SAI-Challenger client docker image
run: DOCKER_FLAGS=$docker_fg_flags make docker-saichallenger-client
- name: Run SAI-Challenger Tests
run: DOCKER_FLAGS=$docker_fg_root_flags make run-saichallenger-tests
- name: Build libsai debian packages
run: DOCKER_FLAGS=$docker_fg_root_flags make libsai-debs
- uses: actions/upload-artifact@v3
with:
name: libsai-debian-packages
path: /home/runner/work/DASH/DASH/dash-pipeline/SAI/debian/*deb
if-no-files-found: error
57 changes: 57 additions & 0 deletions .github/workflows/dash-dpdk-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: DASH-DPDK-CI

on:
push:
branches: [ "**" ]
paths:
- '.gitmodules'
- '.github/workflows/dash-dpdk-ci.yml'
- 'test/**.py'
- 'test/**requirements.txt'
- 'test/**.sh'
- 'test/**.yml'
- 'dash-pipeline/**'
- '!dash-pipeline/dockerfiles/Dockerfile.*'
- 'dash-pipeline/dockerfiles/DOCKER_P4C_DPDK_IMG.env'
- '!dash-pipeline/.dockerignore'
- '!dash-pipeline/**.md'
- '!dash-pipeline/**.svg'
- '!dash-pipeline/**.png'
- '!dash-pipeline/**.txt'
pull_request:
branches: [ "**" ]
paths:
- '.gitmodules'
- '.github/workflows/dash-bmv2-ci.yml'
- 'test/**.py'
- 'test/**requirements.txt'
- 'test/**.sh'
- 'test/**.yml'
- 'dash-pipeline/**'
- '!dash-pipeline/dockerfiles/Dockerfile.*'
- 'dash-pipeline/dockerfiles/DOCKER_P4C_DPDK_IMG.env'
- '!dash-pipeline/.dockerignore'
- '!dash-pipeline/**.md'
- '!dash-pipeline/**.svg'
- '!dash-pipeline/**.png'
- '!dash-pipeline/**.txt'
workflow_dispatch:

jobs:
build:
name: Build DASH Pipeline for P4-DPDK
runs-on: ubuntu-20.04
env:
docker_fg_flags: --privileged
docker_fg_root_flags: --privileged -u root
docker_bg_flags: -d --privileged
defaults:
run:
working-directory: ./dash-pipeline
steps:
- uses: actions/checkout@v3
- name: Pull/Build docker p4c-dpdk image
run: make docker-dash-p4c-dpdk
- name: Build P4 software switch (dpdk) and P4Info
run: DOCKER_FLAGS=$docker_fg_flags make p4c-dpdk-pna

19 changes: 15 additions & 4 deletions .github/workflows/dash-grpc1.43.2-docker.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,22 @@
name: DASH-docker-grpc1.43.2-build-image


on:
push:
branches: [ "**" ]
paths:
- '.github/workflows/dash-grpc1.43.2-docker.yml'
- 'dash-pipeline/Makefile'
- 'dash-pipeline/dockerfiles/Dockerfile.grpc1.43.2'
- 'dash-pipeline/dockerfiles/DOCKER_GRPC_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
pull_request:
branches: [ "main" ]
branches: [ "**" ]
paths:
- '.github/workflows/dash-grpc1.43.2-docker.yml'
- 'dash-pipeline/Makefile'
- 'dash-pipeline/dockerfiles/Dockerfile.grpc1.43.2'
- 'dash-pipeline/dockerfiles/DOCKER_GRPC_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
workflow_dispatch:
Expand All @@ -29,5 +32,13 @@ jobs:
- uses: actions/checkout@v3
- name: Build dash-grpc1.43.2 docker image
run: make docker-dash-grpc
- name: Publish dash-bmv2 docker image
run: make docker-publish-dash-grpc

- uses: azure/docker-login@v1
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
with:
login-server: sonicdash.azurecr.io
username: ${{ secrets.DASH_ACR_USERNAME }}
password: ${{ secrets.DASH_ACR_PASSWORD }}
- name: Publish dash-grpc1.43.2 image
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
run: make docker-publish-dash-grpc
2 changes: 1 addition & 1 deletion .github/workflows/dash-md-spellcheck.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ jobs:
steps:
- uses: actions/checkout@master
- name: Spellcheck
uses: rojopolis/spellcheck-github-actions@0.26.0
uses: rojopolis/spellcheck-github-actions@0.35.0
17 changes: 13 additions & 4 deletions .github/workflows/dash-p4c-bmv2-docker.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
name: DASH-docker-p4c-bmv2-build-image


on:
push:
branches: [ "**" ]
paths:
- '.github/workflows/dash-p4c-bmv2-docker.yml'
- 'dash-pipeline/dockerfiles/Dockerfile.p4c-bmv2'
- 'dash-pipeline/dockerfiles/DOCKER_P4C_BMV2_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
pull_request:
branches: [ "main" ]
branches: [ "**" ]
paths:
- '.github/workflows/dash-p4c-bmv2-docker.yml'
- 'dash-pipeline/dockerfiles/Dockerfile.p4c-bmv2'
- 'dash-pipeline/dockerfiles/DOCKER_P4C_BMV2_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
workflow_dispatch:
Expand All @@ -29,5 +30,13 @@ jobs:
- uses: actions/checkout@v3
- name: Build dash-p4c-bmv2 docker image
run: make docker-dash-p4c
- name: Publish dash-p4c-bmv2 docker image
run: make docker-publish-dash-p4c

- uses: azure/docker-login@v1
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
with:
login-server: sonicdash.azurecr.io
username: ${{ secrets.DASH_ACR_USERNAME }}
password: ${{ secrets.DASH_ACR_PASSWORD }}
- name: Publish dash-p4c-bmv2 docker image to ACR
run: make docker-publish-dash-p4c
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
42 changes: 42 additions & 0 deletions .github/workflows/dash-p4c-dpdk-docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: DASH-docker-p4c-dpdk-build-image

on:
push:
branches: [ "**" ]
paths:
- '.github/workflows/dash-p4c-dpdk-docker.yml'
- 'dash-pipeline/dockerfiles/Dockerfile.p4c-dpdk'
- 'dash-pipeline/dockerfiles/DOCKER_P4C_DPDK_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
pull_request:
branches: [ "**" ]
paths:
- '.github/workflows/dash-p4c-dpdk-docker.yml'
- 'dash-pipeline/dockerfiles/Dockerfile.p4c-dpdk'
- 'dash-pipeline/dockerfiles/DOCKER_P4C_DPDK_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
workflow_dispatch:

jobs:
build:
name: Build docker dash-p4c-dpdk image
runs-on: ubuntu-20.04
defaults:
run:
working-directory: ./dash-pipeline
steps:
- uses: actions/checkout@v3
- name: Build dash-p4c-dpdk docker image
run: make docker-dash-p4c-dpdk

- uses: azure/docker-login@v1
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
with:
login-server: sonicdash.azurecr.io
username: ${{ secrets.DASH_ACR_USERNAME }}
password: ${{ secrets.DASH_ACR_PASSWORD }}
- name: Publish dash-p4c-dpdk docker image to ACR
run: make docker-publish-dash-p4c-dpdk
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
57 changes: 57 additions & 0 deletions .github/workflows/dash-saichallenger-client-bldr-docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: DASH-docker-saichallenger-client-bldr-img

on:
push:
branches: [ "**" ]
paths:
- '.github/workflows/dash-saichallenger-client-bldr-docker.yml'
- 'dash-pipeline/Makefile'
- 'dash-pipeline/dockerfiles/Dockerfile.saichallenger-client-bldr'
- 'dash-pipeline/dockerfiles/DOCKER_SAI_CHALLENGER_CLIENT_BLDR_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
pull_request:
branches: [ "**" ]
paths:
- '.github/workflows/dash-saichallenger-client-bldr-docker.yml'
- 'dash-pipeline/Makefile'
- 'dash-pipeline/dockerfiles/Dockerfile.saichallenger-client-bldr'
- 'dash-pipeline/dockerfiles/DOCKER_SAI_CHALLENGER_CLIENT_BLDR_IMG.env'
- 'dash-pipeline/.dockerignore'
- 'dash-pipeline/dockerfiles/.dockerignore'
workflow_dispatch:

jobs:
build:
name: Build dash-saichallenger-client-bldr-image
runs-on: ubuntu-20.04
env:
docker_fg_flags: -u root --privileged
docker_bg_flags: -d -u root --privileged
defaults:
run:
working-directory: ./dash-pipeline
steps:
- uses: actions/checkout@v3
- name: Pull docker p4c image
run: make docker-pull-dash-p4c
- name: Build P4 software switch (bmv2) and P4Info
run: DOCKER_FLAGS=$docker_fg_flags make p4
- name: Install SAI submodule
run: git submodule update --init
- name: Generate SAI API
run: DOCKER_FLAGS=$docker_fg_flags make sai
- name: Generate SAI-Thrift client and server code and libs
run: DOCKER_FLAGS=$docker_fg_flags make saithrift-server
- name: Build SAI-Challenger client builder base docker image
run: DOCKER_FLAGS=$docker_fg_flags make docker-saichallenger-client-bldr

- uses: azure/docker-login@v1
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
with:
login-server: sonicdash.azurecr.io
username: ${{ secrets.DASH_ACR_USERNAME }}
password: ${{ secrets.DASH_ACR_PASSWORD }}
- name: Publish SAI-Challenger client builder base docker image
run: make docker-publish-saichallenger-client-bldr
if: ${{ github.event_name != 'pull_request' && github.repository == 'sonic-net/DASH' }}
Loading

0 comments on commit 6293de1

Please sign in to comment.