Skip to content

[WIP] Script to Compare Packages in Benchpark Against Spack Tag #12

[WIP] Script to Compare Packages in Benchpark Against Spack Tag

[WIP] Script to Compare Packages in Benchpark Against Spack Tag #12

Workflow file for this run

name: Check Packages Against Spack
on:
pull_request:
paths:
- repo/**/package.py
jobs:
diffPackages:
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Add needed Python libs
run: |
pip install -r ./requirements.txt
# Step 4: Get the list of modified files and extract package names
- name: Get modified package names
id: get_modified_packages
run: |
if git rev-parse HEAD^ >/dev/null 2>&1; then
MODIFIED_FILES=$(git diff --name-only HEAD^ HEAD | grep '^repo/')
else
MODIFIED_FILES=$(git diff --name-only $(git hash-object -t tree /dev/null) HEAD | grep '^repo/')
fi
# Debug: Print modified files
echo "Modified files: $MODIFIED_FILES"
# Extract package names (e.g., 'ad' from 'repo/ad/package.py')
PACKAGE_NAMES=$(echo "$MODIFIED_FILES" | sed -E 's|repo/([^/]+)/package.py|\1|' | sort -u | xargs)
# Debug: Print extracted package names
echo "Extracted package names: $PACKAGE_NAMES"
# Write sanitized PACKAGE_NAMES to GITHUB_ENV
echo "PACKAGE_NAMES=$PACKAGE_NAMES" >> $GITHUB_ENV
# Step 5: Run the diffPackages.py script with package names
- name: Run diffPackages.py
if: env.PACKAGE_NAMES != ''
run: |
export PYTHON_PATH="/home/runner/work/benchpark/benchpark/lib:$PYTHON_PATH"
./bin/benchpark-python lib/scripts/diffPackages.py --packages $PACKAGE_NAMES