Skip to content

doc: update release notes 24.05 #64

doc: update release notes 24.05

doc: update release notes 24.05 #64

Workflow file for this run

name: build-cn10k
on:
push:
schedule:
- cron: "0 0 * * *"
pull_request:
permissions:
contents: write
pages: write
id-token: write
packages: write
jobs:
ubuntu-cn10k-build:
name: ubuntu-cn10k-arm64
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
include:
- arch: aarch64
distro: ubuntu22.04
compiler: gcc
library: static
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Generate cache keys
id: get_ref_keys
run: |
echo 'ccache=ccache-${{ matrix.distro }}-${{ matrix.compiler }}-${{ matrix.arch }}-'$(date -u +%Y-w%W) >> $GITHUB_OUTPUT
- name: Retrieve ccache cache
uses: actions/cache@v4
with:
path: ~/.ccache
key: ${{ steps.get_ref_keys.outputs.ccache }}-${{ github.ref }}
restore-keys: |
${{ steps.get_ref_keys.outputs.ccache }}-refs/heads/main
- name: Extract version details
id: version
run: |
mkdir -p "${PWD}/artifacts"
git tag --points-at HEAD > /tmp/tags
[ -s /tmp/tags ] && PKG_POSTFIX= || PKG_POSTFIX=-latest
[ -s /tmp/tags ] && NIGHTLY=false || NIGHTLY=true
echo "PKG_VERSION_NAME=`cat VERSION`" >> "${PWD}/artifacts/env"
echo "DPDK_PKG_VERSION=`cat DPDK_VERSION | grep RELEASE_VERSION | awk -F'=' '{print $2}'`" >> "${PWD}/artifacts/env"
echo "DPDK_BASE_PKG_VERSION=`cat DPDK_VERSION | grep BASE_VERSION | awk -F'=' '{print $2}' | awk -F'.' '{print $1"."$2}'`" >> "${PWD}/artifacts/env"
source "${PWD}/artifacts/env"
echo "PKG_POSTFIX=${PKG_POSTFIX}" >> "${PWD}/artifacts/env"
echo "NIGHTLY=${NIGHTLY}" >> $GITHUB_OUTPUT
echo "DPDK_PKG_VERSION=${DPDK_PKG_VERSION}" >> $GITHUB_OUTPUT
- uses: robinraju/release-downloader@v1.10
with:
repository: "MarvellEmbeddedProcessors/marvell-dpdk"
tag: "${{ steps.version.outputs.DPDK_PKG_VERSION }}"
fileName: "*.deb"
- uses: uraimo/run-on-arch-action@v2.7.2
name: Build DAO and generate package
id: build
with:
arch: ${{ matrix.arch }}
distro: ${{ matrix.distro }}
githubToken: ${{ github.token }}
setup: |
mkdir -p ~/.ccache
dockerRunArgs: |
--volume "${PWD}/artifacts:/artifacts"
--volume "${HOME}/.ccache:/root/.ccache"
shell: /bin/bash
install: |
apt-get update -q -y
apt-get install -y build-essential gcc meson ccache git doxygen apt-utils
apt-get install -y build-essential ccache git software-properties-common
add-apt-repository -y ppa:ubuntu-toolchain-r/test
apt-get update -q -y
apt-get install -y libnl-3-dev libnl-route-3-dev libnl-xfrm-3-dev
apt-get install -y sphinx-common python3-sphinx-rtd-theme pkg-config
apt-get install -y libarchive-dev libbsd-dev libbpf-dev
apt-get install -y libfdt-dev libjansson-dev
apt-get install -y libssl-dev ninja-build python3-pip
apt-get install -y python3-pyelftools python3-setuptools python3-wheel zlib1g-dev
apt-get install -y gcc-13 bzip2-doc icu-devtools libacl1-dev libattr1-dev
apt-get install -y libbz2-dev libgmp-dev libgmpxx4ldbl libicu-dev liblz4-dev
apt-get install -y liblzma-dev libxml2-dev libzstd-dev nettle-dev
pip3 install meson --upgrade
run: |
source /artifacts/env
apt-get install -y ./"dpdk-${DPDK_BASE_PKG_VERSION}-cn10k_${DPDK_PKG_VERSION}_arm64.deb"
export CC='ccache gcc-13'
echo "cache_dir = /root/.ccache" > /root/.ccache/ccache.conf
ccache -p
pkg-config --list-all
meson build -Dplatform=cn10k --prefix="${PWD}/install" -Denable_kmods=false --prefer-static
ninja install -C build
mkdir -p "${PWD}/install/DEBIAN"
cd "${PWD}/install"
echo 'Package: dao-cn10k'$PKG_POSTFIX >> DEBIAN/control
echo 'Version: '$PKG_VERSION_NAME >> DEBIAN/control
echo 'Depends: dpdk-'$DPDK_BASE_PKG_VERSION'-cn10k (= '$DPDK_PKG_VERSION')' >> DEBIAN/control
echo "Maintainer: Jerin Jacob (jerinj@marvell.com)" >> DEBIAN/control
echo "Architecture: arm64" >> DEBIAN/control
echo "Homepage: https://www.dpdk.org/" >> DEBIAN/control
echo "Description: DPU Accelerator offload for Marvell Octeon 10" >> DEBIAN/control
cd -
mv "${PWD}/install" "${PWD}/dao-cn10k${PKG_POSTFIX}_${PKG_VERSION_NAME}_arm64"
dpkg --build "dao-cn10k${PKG_POSTFIX}_${PKG_VERSION_NAME}_arm64"
cp "dao-cn10k${PKG_POSTFIX}_${PKG_VERSION_NAME}_arm64.deb" /artifacts/.
mkdir -p gen_docs
mv build/doc/guides/html gen_docs/guides
mv build/doc/api/html gen_docs/api
- name: Export version name
id: artifacts
run: |
source "${PWD}/artifacts/env"
echo $PKG_VERSION_NAME
echo "PKG_VERSION_NAME=${PKG_VERSION_NAME}" >> "$GITHUB_OUTPUT"
echo $PKG_POSTFIX
echo "PKG_POSTFIX=${PKG_POSTFIX}" >> "$GITHUB_OUTPUT"
[[ "$PKG_POSTFIX" == "-latest" ]] && TAG=latest || TAG=${PKG_VERSION_NAME}
echo "TAG=${TAG}" >> "$GITHUB_OUTPUT"
- name: Upload debian package as artifact
uses: actions/upload-artifact@v4.3.1
if: ${{ github.event_name == 'push' }}
with:
name: dao-cn10k${{ steps.artifacts.outputs.PKG_POSTFIX }}_${{ steps.artifacts.outputs.PKG_VERSION_NAME }}_arm64.deb
path: ${{ github.workspace }}/artifacts/dao-cn10k${{ steps.artifacts.outputs.PKG_POSTFIX }}_${{ steps.artifacts.outputs.PKG_VERSION_NAME }}_arm64.deb
- name: Release DPDK cn10k package
uses: softprops/action-gh-release@v2.0.4
if: ${{ github.event_name == 'push' }}
with:
tag_name: ${{ steps.artifacts.outputs.TAG }}
files: |
${{ github.workspace }}/artifacts/dao-cn10k${{ steps.artifacts.outputs.PKG_POSTFIX }}_${{ steps.artifacts.outputs.PKG_VERSION_NAME }}_arm64.deb
- name: Upload Pages artifact
uses: actions/upload-pages-artifact@v3
if: ${{ github.event_name == 'push' }}
with:
path: ${{ github.workspace }}/gen_docs
- name: Deploy Github Pages
if: ${{ github.event_name == 'push' }}
uses: actions/deploy-pages@v4.0.5
- name: Dispatch package update event
if: ${{ github.event_name == 'push' }}
run: |
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer ${{ secrets.PPA_REPO_SECRET }}" \
-H "X-GitHub-Api-Version: 2022-11-28" \
https://api.github.com/repos/marvellembeddedprocessors/packages/dispatches \
-d '{"event_type":"dispatch-event", "client_payload": {"package" : "dao", "tag": "${{ steps.artifacts.outputs.TAG }}", "dpdk_tag" : "${{ steps.version.outputs.DPDK_PKG_VERSION }}", "has_dpdk" : "true"}}'