GithubHelp home page GithubHelp logo

auto-reject-action's Introduction

Auto Request Changes GitHub Action

This action is a fork from hmarr/auto-approve-action

Name: ntsd/auto-request-changes-action

Automatically request changes GitHub pull requests. The GITHUB_TOKEN secret will default provided as the github-token input for the action to work. otherwise you can add a token to github-token input.

Why?

Because sometimes you want to automate create request changes review. for example, create a request changes review when a lint or testing workflow is failed.

Usage instructions

Create a workflow file (e.g. .github/workflows/auto-request-changes.yml) that contains a step that uses: ntsd/auto-request-changes-action@v2. Here's an example workflow file:

for all github action contexts check https://docs.github.com/en/actions/learn-github-actions/contexts

name: Auto request changes
on: pull_request_target

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: ntsd/auto-request-changes-action@v2
        with:
          github-token: "${{ secrets.GITHUB_TOKEN }}"
          comment-body: "custom comment body"

Combine with an if can only auto-request-changes with only failure workflow

name: Auto request changes

on: pull_request_target

jobs:
  auto-request-changes:
    runs-on: ubuntu-latest
    steps:
      - uses: ntsd/auto-request-changes-action@v2
        if: ${{ github.event.pull_request && failure() }}

Using with auto-approve-action to approve when the job success.

name: Auto request changes and approve

on: pull_request_target

jobs:
  auto-review:
    runs-on: ubuntu-latest
    steps:
      - uses: ntsd/auto-request-changes-action@v2
        if: ${{ github.event.pull_request && failure() }}
      - uses: hmarr/auto-approve-action@v2
        if: ${{ github.event.pull_request && success() }}
        with:
          github-token: "${{ secrets.GITHUB_TOKEN }}"

If you want to use this action from a workflow file that doesn't run on the pull_request or pull_request_target events, use the pull-request-number input:

name: Auto request changes

on:
  workflow_dispatch:
    inputs: pullRequestNumber
      description: Pull request number to auto-request-changes
      required: false

jobs:
  auto-request-changes:
    runs-on: ubuntu-latest
    steps:
    - uses: ntsd/auto-request-changes-action@v2
      with:
        pull-request-number: ${{ github.event.inputs.pullRequestNumber }}

Code owners

If you're using a CODEOWNERS file, you'll need to give this action a personal access token for a user listed as a code owner. Rather than using a real user's personal access token, you're probably better off creating a dedicated bot user, and adding it to a team which you assign as the code owner. That way you can restrict the bot user's permissions as much as possible, and your workflow won't break when people leave the team.

auto-reject-action's People

Contributors

alexrozv avatar dependabot-preview[bot] avatar dependabot[bot] avatar feelepxyz avatar hmarr avatar ktmouk avatar lukehedger avatar ntsd avatar roryabraham avatar sideeffffect avatar tristanbes avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.