How to trigger a Github Actions workflow on push to another branch?

10,952

You need to use a personal access token (PAT) for pushing the code in your workflow instead of the default GITHUB_TOKEN:

Note: You cannot trigger new workflow runs using the GITHUB_TOKEN

For example, if a workflow run pushes code using the repository's GITHUB_TOKEN, a new workflow will not run even when the repository contains a workflow configured to run when push events occur.

If you would like to trigger a workflow from a workflow run, you can trigger the event using a personal access token. You'll need to create a personal access token and store it as a secret.

https://docs.github.com/en/free-pro-team@latest/actions/reference/events-that-trigger-workflows#triggering-new-workflows-using-a-personal-access-token

name: Push to master

on:
  push:
    branches:
      - master

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    # the checkout action persists the passed credentials by default
    # subsequent git commands will pick them up automatically
    - uses: actions/checkout@v2
      with:
        token: ${{secrets.PAT}}
    - run: |
        # do something
        git push
Share:
10,952

Related videos on Youtube

Rohan Singh
Author by

Rohan Singh

Updated on June 04, 2022

Comments

  • Rohan Singh
    Rohan Singh almost 2 years

    When I push some code to master, one workflow file runs. This file builds the artifacts and pushes the code to another branch production.

    Another workflow file, which looks like the following, is set to run when any push happens to production.

    name: Deploy
    
    on:
      push:
        branches:
          - production
    
    jobs:
    
    # Do something
    
      deploy:
        runs-on: ubuntu-latest
        steps:
          - name: Checkout
            uses: actions/checkout@master
    
    

    But this workflow file is never run. I expect that when the workflow file, listening to push event on master, is done, this file should run as the previous file pushes code to production branch. How do I make sure that this happens?