From 25bf679f8f345eece128548cfb68155577f89c1e Mon Sep 17 00:00:00 2001 From: Keith Zantow Date: Wed, 13 Apr 2022 13:20:40 -0400 Subject: [PATCH] Add workflow for automatic PR for new stereoscope updates (#954) --- .../workflows/update-stereoscope-release.yml | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 .github/workflows/update-stereoscope-release.yml diff --git a/.github/workflows/update-stereoscope-release.yml b/.github/workflows/update-stereoscope-release.yml new file mode 100644 index 000000000..05b51c5ae --- /dev/null +++ b/.github/workflows/update-stereoscope-release.yml @@ -0,0 +1,50 @@ +name: PR for latest Stereoscope release +on: + schedule: + - cron: "0 8 * * *" # 3 AM EST + + workflow_dispatch: + +env: + GO_VERSION: "1.18.x" + GO_STABLE_VERSION: true + +jobs: + upgrade-stereoscope: + runs-on: ubuntu-latest + if: github.repository == 'anchore/syft' # only run for main repo + steps: + - uses: actions/checkout@v3 + + - uses: actions/setup-go@v2 + with: + go-version: ${{ env.GO_VERSION }} + stable: ${{ env.GO_STABLE_VERSION }} + + - run: | + LATEST_VERSION=$(git ls-remote https://github.com/anchore/stereoscope main | head -n1 | awk '{print $1;}') + + # update go.mod + go get github.com/anchore/stereoscope@$LATEST_VERSION + + # export the version for use with create-pull-request + echo "::set-output name=LATEST_VERSION::$LATEST_VERSION" + id: latest-version + + - uses: tibdex/github-app-token@v1 + id: generate-token + with: + app_id: ${{ secrets.TOKEN_APP_ID }} + private_key: ${{ secrets.TOKEN_APP_PRIVATE_KEY }} + + - uses: peter-evans/create-pull-request@v4 + with: + signoff: true + delete-branch: true + branch: auto/latest + labels: dependencies + commit-message: "Update Stereoscope to ${{ steps.latest-version.outputs.LATEST_VERSION }}" + title: "Update Stereoscope to ${{ steps.latest-version.outputs.LATEST_VERSION }}" + body: | + Update Stereoscope to ${{ steps.latest-version.outputs.LATEST_VERSION }} + token: ${{ steps.generate-token.outputs.token }}