kbendick commented on a change in pull request #3004: URL: https://github.com/apache/iceberg/pull/3004#discussion_r693566541
########## File path: .github/workflows/cancel-dupliate-workflow-runs.yml ########## @@ -0,0 +1,39 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# + +name: "Cancel Duplicates" +on: + workflow_run: + workflows: + - 'Java CI' + - 'Python CI' + types: ['requested'] + +jobs: + cancel-duplicate-workflow-runs: + name: "Cancel duplicate workflow runs" + runs-on: ubuntu-latest + steps: + - uses: potiuk/cancel-workflow-runs@4723494a065d162f8e9efd071b98e0126e00f866 # @master + name: "Cancel duplicate workflow runs" + with: + cancelMode: allDuplicates + token: ${{ secrets.GITHUB_TOKEN }} Review comment: Finally, and _**perhaps most importantl**_ , I just noticed that Github has a new-ish feature, that is documented as _beta_, called `concurrency` that would allow us to do this natively within the GithubAction (no additional workflow - same permissions as the running workflow itself presumably). Announcement summary: https://github.blog/changelog/2021-04-19-github-actions-limit-workflow-run-or-job-concurrency/ Docs: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#concurrency (which is where it's mentioned as technically still beta). Do we potentially want to consider the native route? It was announced or released in April, so the action being used here is currently marked as planned for deprecation / deprecated (but with the caveat that `concurrency` is still beta). This particular Github Action is still being used in Spark. I'm willing to volunteer to help triage issues with `concurrency` with as much immediacy as I can afford if something "beta" about it changes that breaks our workflows (especially if we allow for simply removing the `concurrency` section to give time to fix it without blocking all PR runs). Perhaps we try `concurrency` on one github action and use this workflow for the rest as it's stable (and used by Spark currently)? 100% open to suggestions here. I'm also going to add a `permissions` section to the labeler in another PR / issue to try that out. 🙂 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
