# This is commented out until we update to Catch version 3. Note that that # can't be done until mlpack has C++17 as a minimum requirement. #name: Update Catch #on: # workflow_dispatch: # schedule: # - cron: '0 10 1/16 * *' # permissions: # contents: read #jobs: # updateCatch: # permissions # contents: write # for peter-evans/create-pull-request to create branch # pull-requests: write # for peter-evans/create-pull-request to create a PR # if: ${{ github.repository == 'mlpack/mlpack' }} # runs-on: ubuntu-latest # steps: # - uses: actions/checkout@v2 # - name: Get Latest Catch Tagged Release # id: catch-header # run: | # # Ping version information upstream. # CATCH_RELEASE_JSON=$(curl -sL https://api.github.com/repos/catchorg/Catch2/releases/latest) # CATCH_RELEASE_VERSION=$(jq -r ".tag_name" <<< "$CATCH_RELEASE_JSON" | tr -d v) # echo ::set-output name=release_tag::$(echo $CATCH_RELEASE_VERSION) # # Extract out version information from git repository. # CATCH_VERSION_MAJOR=$(grep -i ".*#define CATCH_VERSION_MAJOR.*" src/mlpack/tests/catch.hpp | grep -o "[0-9]*") # CATCH_VERSION_MINOR=$(grep -i ".*#define CATCH_VERSION_MINOR.*" src/mlpack/tests/catch.hpp | grep -o "[0-9]*") # CATCH_VERSION_PATCH=$(grep -i ".*#define CATCH_VERSION_PATCH.*" src/mlpack/tests/catch.hpp | grep -o "[0-9]*") # # Combine values to match release tag information. # CATCH_VERSION_VALUE=${CATCH_VERSION_MAJOR}.${CATCH_VERSION_MINOR}.${CATCH_VERSION_PATCH} # # Set the current release tag. # echo ::set-output name=current_tag::$(echo $CATCH_VERSION_VALUE) # # - name: Update Catch # if: steps.catch-header.outputs.current_tag != steps.catch-header.outputs.release_tag # env: # CURRENT_TAG: ${{ steps.catch-header.outputs.current_tag }} # RELEASE_TAG: ${{ steps.catch-header.outputs.release_tag }} # run: | # # Delete the catch.hpp. # rm -f src/mlpack/tests/catch.hpp # # Download the release. # curl -sL https://github.com/catchorg/Catch2/releases/latest/download/catch.hpp -o src/mlpack/tests/catch.hpp # # - name: Create Pull Request For Catch # if: steps.catch-header.outputs.current_tag != steps.catch-header.outputs.release_tag # uses: peter-evans/create-pull-request@v3 # with: # commit-message: Upgrade Catch to ${{ steps.catch-header.outputs.release_tag }} # title: Upgrade Catch to ${{ steps.catch-header.outputs.release_tag }} # body: | # Updates [catchorg/Catch2](https://github.com/catchorg/Catch2) to ${{ steps.catch-header.outputs.release_tag }}. # Auto-generated by [create-pull-request](https://github.com/peter-evans/create-pull-request). # labels: update dependencies, automated PR # branch: catch-header-updates-${{ steps.catch-header.outputs.release_tag }}