Merge branch 'v8_1' into v9_0 #170
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# SPDX-License-Identifier: MIT | |
# SPDX-FileCopyrightText: (c) 2024 Advanced Micro Devices, Inc. | |
name: "perform_build" | |
on: | |
push: | |
pull_request: | |
types: [opened] | |
jobs: | |
extract_branch_info: | |
runs-on: ubuntu-latest | |
timeout-minutes: 1 | |
outputs: | |
onloadPublicTreeish: ${{ steps.onloadPublicTreeish.outputs.tag }} | |
packetDrillBranch: ${{ steps.packetDrillBranch.outputs.branch }} | |
steps: | |
- name: tcpdirect | |
uses: actions/checkout@v4 | |
with: | |
path: tcpdirect | |
- name: Install yq | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y python3 python3-pip jq | |
pip3 install yq | |
- name: Extract public onload tree-ish | |
id: onloadPublicTreeish | |
run: echo "tag=$(yq -r '.products.Onload.public_tree_ish' < $GITHUB_WORKSPACE/tcpdirect/versions.yaml)" >> "$GITHUB_OUTPUT" | |
- name: Extract packetDrill branch name | |
id: packetDrillBranch | |
run: echo "branch=$(yq -r '.products.Packetdrill.version' < $GITHUB_WORKSPACE/tcpdirect/versions.yaml)" >> "$GITHUB_OUTPUT" | |
perform_build_and_test: | |
runs-on: ubuntu-latest | |
timeout-minutes: 20 | |
needs: extract_branch_info | |
env: | |
TCPDIRECT_TREE: ${{ github.workspace }}/tcpdirect | |
ONLOAD_TREE: ${{ github.workspace }}/onload | |
steps: | |
- name: Checkout TCPDirect | |
uses: actions/checkout@v4 | |
with: | |
path: ${{ env.TCPDIRECT_TREE }} | |
- name: Checkout Onload | |
uses: actions/checkout@v4 | |
with: | |
repository: ${{ github.repository_owner }}/onload | |
path: ${{ env.ONLOAD_TREE }} | |
ref: ${{ needs.extract_branch_info.outputs.onloadPublicTreeish }} | |
- name: Checkout packetdrill | |
uses: actions/checkout@v4 | |
continue-on-error: true | |
with: | |
repository: ${{ github.repository_owner }}/packetdrill-tcpdirect | |
path: packetdrill-tcpdirect | |
ref: ${{ needs.extract_branch_info.outputs.packetDrillBranch }} | |
- name: Install the TCPDirect build and test dependencies | |
uses: ./tcpdirect/.github/actions/install-dependencies | |
- name: Build the base TCPDirect library | |
uses: ./tcpdirect/.github/actions/build | |
with: | |
tcpdirect_tree: ${{ env.TCPDIRECT_TREE }} | |
onload_tree: ${{ env.ONLOAD_TREE }} | |
build_target: all | |
debug: true | |
- name: Build the TCPDirect socket shim | |
uses: ./tcpdirect/.github/actions/build | |
with: | |
tcpdirect_tree: ${{ env.TCPDIRECT_TREE }} | |
onload_tree: ${{ env.ONLOAD_TREE }} | |
build_target: shim | |
debug: true | |
- name: Run the TCPDirect unit tests | |
uses: ./tcpdirect/.github/actions/test | |
with: | |
tcpdirect_tree: ${{ env.TCPDIRECT_TREE }} | |
onload_tree: ${{ env.ONLOAD_TREE }} |