Automate release notes #1025
Workflow file for this run
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
name: tarball | |
on: | |
push: | |
branches: [ amd-mainline, release/** ] | |
pull_request: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
distbuild: | |
runs-on: ubuntu-latest | |
name: Create distribution tarball | |
env: | |
INSTALL_DIR: /tmp/foo1 | |
steps: | |
- name: Set git sha mode | |
id: sha-mode | |
run: | | |
if [ "$EVENT" == 'pull_request' ]; then | |
echo "sha=${{github.event.pull_request.head.sha}}" >> $GITHUB_OUTPUT | |
else | |
echo "sha=$GITHUB_SHA" >> $GITHUB_OUTPUT | |
fi | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ steps.sha-mode.sha }} | |
- name: Install Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.8' | |
- name: Python dependency installs | |
run: python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt | |
- name: Configure | |
run: | | |
mkdir build | |
cd build | |
cmake -DPYTHON_DEPS=${INSTALL_DIR}/python-libs .. | |
- name: Release tarball | |
run: | | |
cd build | |
make package_source | |
- name: Archive tarball | |
uses: actions/upload-artifact@v4 | |
with: | |
name: tarball-testing | |
path: build/omniperf-*.tar.gz | |
retention-days: 3 | |
disttest: | |
runs-on: ubuntu-latest | |
needs: [distbuild] | |
name: Tarball tests | |
env: | |
INSTALL_DIR: /tmp/foo2 | |
steps: | |
- name: Access tarball | |
uses: actions/download-artifact@v4 | |
with: | |
name: tarball-testing | |
- name: Expand | |
run: tar xfz omniperf-*.tar.gz; rm omniperf-*.tar.gz | |
- name: Python dependency installs | |
run: | | |
cd omniperf-* | |
python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt | |
- name: Configure | |
run: | | |
cd omniperf-* | |
mkdir build | |
cd build | |
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR}/omniperf \ | |
-DPYTHON_DEPS=${INSTALL_DIR}/python-libs .. | |
- name: Install | |
run: | | |
cd omniperf-* | |
cd build | |
make install | |
- name: Verify expected paths | |
run: | | |
# find $INSTALL_DIR | |
test -d $INSTALL_DIR/omniperf | |
test -x $INSTALL_DIR/omniperf/bin/omniperf | |
test -s $INSTALL_DIR/omniperf/libexec/omniperf/VERSION | |
test -s $INSTALL_DIR/omniperf/libexec/omniperf/VERSION.sha | |
test -d $INSTALL_DIR/omniperf/libexec/omniperf/omniperf_analyze | |
test -d $INSTALL_DIR/omniperf/libexec/omniperf/omniperf_profile | |
test -d $INSTALL_DIR/omniperf/libexec/omniperf/omniperf_soc | |
test -d $INSTALL_DIR/omniperf/libexec/omniperf/utils | |
test -s $INSTALL_DIR/omniperf/share/omniperf/sample/vcopy.cpp | |
test -d $INSTALL_DIR/omniperf/share/omniperf/modulefiles | |
- name: Query version (setting PYTHONPATH by hand) | |
run: | | |
export PYTHONPATH=${INSTALL_DIR}/python-libs:$PYTHONPATH | |
$INSTALL_DIR/omniperf/bin/omniperf --version | |
- name: Install Lmod | |
run: sudo apt-get install -y lmod | |
- name: Access omniperf using modulefile | |
run: | | |
. /etc/profile.d/lmod.sh | |
module use $INSTALL_DIR/omniperf/share/omniperf/modulefiles | |
module load omniperf | |
module list | |
omniperf --version | |