Scheduled workflows fixes

- Ensure `spdx.yml` has same fixes as `tapioca.yml`.
- Don't `reset --hard` to ensure that `brew` commands used are those in
  the same branch rather than always from `origin/master`
- Don't check for an existing branch but instead force-push to it if
  there's any updates.
- Provide sample `brew typecheck` command that can be used.
This commit is contained in:
Mike McQuaid 2020-08-24 15:28:16 +01:00
parent a6744d2ee9
commit d550ed65ac
No known key found for this signature in database
GPG Key ID: 48A898132FD8EE70
2 changed files with 16 additions and 20 deletions

View File

@ -25,16 +25,14 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
HOMEBREW_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
cd "$GITHUB_WORKSPACE/Library/Homebrew"
git fetch origin master
git reset origin/master
git checkout -B spdx-update
if brew update-license-data --fail-if-not-changed; then
if ! git ls-remote --exit-code --heads origin spdx-update; then
git checkout -B spdx-update
git reset origin/master
git add data/spdx
git commit -m "spdx: update license data." -m "Autogenerated by [a scheduled GitHub Action](https://github.com/Homebrew/brew/blob/master/.github/workflows/spdx.yml)."
echo "::set-output name=committed::true"
fi
git add "$GITHUB_WORKSPACE/Library/Homebrew/data/spdx"
git commit -m "spdx: update license data." -m "Autogenerated by [a scheduled GitHub Action](https://github.com/Homebrew/brew/blob/master/.github/workflows/spdx.yml)."
echo "::set-output name=committed::true"
fi
- name: Push commits
@ -43,11 +41,10 @@ jobs:
with:
token: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
branch: spdx-update
force: true
- name: Open a pull request
if: steps.update.outputs.committed == 'true'
run: |
cd "$GITHUB_WORKSPACE/Library/Homebrew"
hub pull-request --no-edit
run: hub pull-request --no-edit
env:
GITHUB_TOKEN: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}

View File

@ -33,22 +33,20 @@ jobs:
- name: Update Tapioca definitions
id: update
run: |
cd "$GITHUB_WORKSPACE/Library/Homebrew"
git fetch origin master
git reset --hard origin/master
git reset origin/master
git checkout -B tapioca-update
# TODO: replace with `brew typecheck`
cd "$GITHUB_WORKSPACE/Library/Homebrew"
bundle exec tapioca sync --exclude json
bundle exec srb rbi hidden-definitions
if ! git diff --no-patch --exit-code -- sorbet; then
if ! git ls-remote --exit-code --heads origin tapioca-update >/dev/null; then
git add sorbet
git commit -m "sorbet: update RBI files using Tapioca." -m "Autogenerated by [a scheduled GitHub Action](https://github.com/Homebrew/brew/blob/master/.github/workflows/tapioca.yml)."
echo "::set-output name=committed::true"
fi
# if brew typecheck --update --fail-if-not-changed; then
git add "$GITHUB_WORKSPACE/Library/Homebrew/sorbet"
git commit -m "sorbet: update RBI files using Tapioca." -m "Autogenerated by [a scheduled GitHub Action](https://github.com/Homebrew/brew/blob/master/.github/workflows/tapioca.yml)."
echo "::set-output name=committed::true"
fi
- name: Push commits
@ -57,6 +55,7 @@ jobs:
with:
token: ${{ secrets.HOMEBREW_GITHUB_API_TOKEN }}
branch: tapioca-update
force: true
- name: Open a pull request
if: steps.update.outputs.committed == 'true'