From 373c55894f6d092dbc5bbd2c09d7accebd863532 Mon Sep 17 00:00:00 2001 From: Stephen Gutekanst Date: Sat, 15 Oct 2022 04:04:57 -0700 Subject: [PATCH] {dev,gpu-dawn}: add yamlfmt to ci-lint.sh Fixes hexops/mach#430 Signed-off-by: Stephen Gutekanst --- dev/ci-lint.sh | 5 +- .../.github/workflows/draft_release.yml | 12 ++-- .../.github/workflows/publish_release.yml | 64 +++++++++---------- 3 files changed, 42 insertions(+), 39 deletions(-) diff --git a/dev/ci-lint.sh b/dev/ci-lint.sh index 3b55b335..69d93a1f 100755 --- a/dev/ci-lint.sh +++ b/dev/ci-lint.sh @@ -3,4 +3,7 @@ set -exuo pipefail cd "$(dirname "${BASH_SOURCE[0]}")"/.. # actionlint: https://github.com/rhysd/actionlint -./actionlint $(find . | grep -v '\.git/' | grep '\.github/workflows/' | grep '.yml') +actionlint $(find . | grep -v '\.git/' | grep '\.github/workflows/' | grep '.yml') + +# yamlfmt: https://github.com/google/yamlfmt +yamlfmt '**/.github/**/*.yml' '**/.github/**/*.yaml' diff --git a/libs/gpu-dawn/.github/workflows/draft_release.yml b/libs/gpu-dawn/.github/workflows/draft_release.yml index 639cd42f..d3f5c27d 100644 --- a/libs/gpu-dawn/.github/workflows/draft_release.yml +++ b/libs/gpu-dawn/.github/workflows/draft_release.yml @@ -8,9 +8,9 @@ jobs: if: ${{ !contains(github.event.head_commit.message, 'update to latest binary release') }} runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v2 - - name: Create draft - run: gh release create "release-$(git rev-parse --short HEAD)" --title "Automatic release of main @ $(git rev-parse --short HEAD)" - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Checkout + uses: actions/checkout@v2 + - name: Create draft + run: gh release create "release-$(git rev-parse --short HEAD)" --title "Automatic release of main @ $(git rev-parse --short HEAD)" + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/libs/gpu-dawn/.github/workflows/publish_release.yml b/libs/gpu-dawn/.github/workflows/publish_release.yml index c8b504e4..713ed6f2 100644 --- a/libs/gpu-dawn/.github/workflows/publish_release.yml +++ b/libs/gpu-dawn/.github/workflows/publish_release.yml @@ -4,7 +4,7 @@ on: workflows: ["CI"] types: - completed -concurrency: +concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: @@ -12,34 +12,34 @@ jobs: if: ${{ github.event.workflow_run.conclusion == 'success' }} runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v2 - - name: Record latest release version - id: recorded_release_version - # Note: we find the latest non-'update to latest binary release' commit here, which is not - # necessarily HEAD because another build could have succeeded before us and HEAD may now refer - # to 'update to latest binary release' instead of the commit we were building. - # By doing this, we ensure any update we push would refer to the absolute latest binary - # release even if *this* CI run is older. - run: echo "::set-output name=commit::$(git log --oneline | grep -v 'update to latest binary release' | head -n1 | cut -d " " -f1)" - # - name: Publish release - # run: echo "TODO(build-system): gh CLI has no way to mark draft as published?" - # env: - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Checkout hexops/mach monorepo - uses: actions/checkout@v2 - with: - repository: hexops/mach - token: ${{ secrets.HEXOPS_MACH_GPU_DAWN_PUSH }} - - name: 'gpu/dawn: update hard-coded binary release version' - env: - RELEASE_COMMIT: ${{steps.recorded_release_version.outputs.commit}} - run: | - sed -i "/binary_version: \[\]const u8 =/c\ binary_version: []const u8 = \"release-$RELEASE_COMMIT\"," ./libs/gpu-dawn/build.zig - - name: 'gpu/dawn: use latest binary release' - run: | - git config user.name 'Release automation' - git config user.email 'stephen@hexops.com' - git add . - git commit -m 'gpu-dawn: update to latest binary release' - git push -u origin HEAD + - name: Checkout + uses: actions/checkout@v2 + - name: Record latest release version + id: recorded_release_version + # Note: we find the latest non-'update to latest binary release' commit here, which is not + # necessarily HEAD because another build could have succeeded before us and HEAD may now refer + # to 'update to latest binary release' instead of the commit we were building. + # By doing this, we ensure any update we push would refer to the absolute latest binary + # release even if *this* CI run is older. + run: echo "::set-output name=commit::$(git log --oneline | grep -v 'update to latest binary release' | head -n1 | cut -d " " -f1)" + # - name: Publish release + # run: echo "TODO(build-system): gh CLI has no way to mark draft as published?" + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Checkout hexops/mach monorepo + uses: actions/checkout@v2 + with: + repository: hexops/mach + token: ${{ secrets.HEXOPS_MACH_GPU_DAWN_PUSH }} + - name: 'gpu/dawn: update hard-coded binary release version' + env: + RELEASE_COMMIT: ${{steps.recorded_release_version.outputs.commit}} + run: | + sed -i "/binary_version: \[\]const u8 =/c\ binary_version: []const u8 = \"release-$RELEASE_COMMIT\"," ./libs/gpu-dawn/build.zig + - name: 'gpu/dawn: use latest binary release' + run: | + git config user.name 'Release automation' + git config user.email 'stephen@hexops.com' + git add . + git commit -m 'gpu-dawn: update to latest binary release' + git push -u origin HEAD