Skip to content

[Comb] Include correct MAC and IPv4/6 address for peer interface.Create DVaaS traffic helper for NSF test infra.Add support for gnmi_config and p4_info to NsfTestParams.Rename Upgrade to ImageCopy to better reflect its functionality.Make error_margin an optional parameter for ValidateTraffic.Implement reboot and gNMI config push helpers.Create flags to skip NSF Upgrade and traffic to only test NSF Reboot.Implement the ImageCopy reusable helper and reuse it in other helpers and NSF test skeleton.Create a reusable Reboot method to perform reboot on the SUT with the given reboot method. #4611

[Comb] Include correct MAC and IPv4/6 address for peer interface.Create DVaaS traffic helper for NSF test infra.Add support for gnmi_config and p4_info to NsfTestParams.Rename Upgrade to ImageCopy to better reflect its functionality.Make error_margin an optional parameter for ValidateTraffic.Implement reboot and gNMI config push helpers.Create flags to skip NSF Upgrade and traffic to only test NSF Reboot.Implement the ImageCopy reusable helper and reuse it in other helpers and NSF test skeleton.Create a reusable Reboot method to perform reboot on the SUT with the given reboot method.

[Comb] Include correct MAC and IPv4/6 address for peer interface.Create DVaaS traffic helper for NSF test infra.Add support for gnmi_config and p4_info to NsfTestParams.Rename Upgrade to ImageCopy to better reflect its functionality.Make error_margin an optional parameter for ValidateTraffic.Implement reboot and gNMI config push helpers.Create flags to skip NSF Upgrade and traffic to only test NSF Reboot.Implement the ImageCopy reusable helper and reuse it in other helpers and NSF test skeleton.Create a reusable Reboot method to perform reboot on the SUT with the given reboot method. #4611

Workflow file for this run

name: "build"
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
name: Bazel Build and Test
runs-on: ubuntu-22.04
env:
BAZEL_CACHE_USER: github
BAZEL_CACHE_PWD: ${{ secrets.BAZEL_CACHE_PWD }}
BAZEL_CACHE_URL: pins-bazel-cache.onf.dev:9090
steps:
- uses: actions/checkout@v3
- name: Mount bazel cache
uses: actions/cache/restore@v3
with:
# See https://docs.bazel.build/versions/master/output_directories.html
path: "/tmp/repo-cache"
# See https://docs.github.com/en/actions/guides/caching-dependencies-to-speed-up-workflows
key: bazel-repo-cache-v3-${{ runner.os }}-${{ hashFiles('**/*_deps.bzl', '.bazelrc', '.bazelversion', 'WORKSPACE.bazel') }}
restore-keys: |
bazel-repo-cache-v3-${{ runner.os }}-
- name: Install system dependencies
run: ./install_dependencies.sh
- name: Install bazelisk
run: |
ARCH=$(dpkg --print-architecture)
sudo curl -fsSL -o /usr/local/bin/bazel \
https://github.com/bazelbuild/bazelisk/releases/latest/download/bazelisk-linux-${ARCH}
sudo chmod +x /usr/local/bin/bazel
- name: Save start time
uses: josStorer/get-current-time@v2
id: start-time
with:
# Unix timestamp -- seconds since 1970.
format: X
# Authentication is enabled for R/W access for builds on main and branch PRs
# Unauthenticated reads are allowed for PRs from forks
- name: Build and Test
run: |
mkdir -p /tmp/repo-cache
BAZEL_OPTS="--repository_cache=/tmp/repo-cache"
[ ! -z "$BAZEL_CACHE_USER" ] && [ ! -z "$BAZEL_CACHE_PWD" ] && \
AUTH="${BAZEL_CACHE_USER}:${BAZEL_CACHE_PWD}@"
BAZEL_OPTS+=" --remote_cache=https://${AUTH}${BAZEL_CACHE_URL}"
BAZEL_OPTS+=" --remote_download_minimal"
bazel build ${BAZEL_OPTS} //...
bazel test ${BAZEL_OPTS} //...
- name: Save end time
uses: josStorer/get-current-time@v2
id: end-time
with:
# Unix timestamp -- seconds since 1970.
format: X
- name: Calculate build duration
run: |
START=${{ steps.start-time.outputs.formattedTime }}
END=${{ steps.end-time.outputs.formattedTime }}
DURATION=$(( $END - $START ))
echo "duration=$DURATION" | tee "$GITHUB_ENV"
- name: Save bazel cache
uses: actions/cache/save@v3
# We create a new cache entry if either of the following is true:
# - We are on the master branch.
# - It took more than 5 minutes to build and test.
if: github.ref_name == 'main' || env.duration > 300
with:
path: "/tmp/repo-cache"
key: bazel-repo-cache-v3-${{ runner.os }}-${{ hashFiles('**/*_deps.bzl', '.bazelrc', '.bazelversion', 'WORKSPACE.bazel') }}