Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
anchor

GitHub Action

prow-github-actions

v1.0.0

prow-github-actions

anchor

prow-github-actions

Prow inspired github CI/CD actions

Installation

Copy and paste the following snippet into your .yml file.

              

- name: prow-github-actions

uses: jpmcb/prow-github-actions@v1.0.0

Learn more about this action in jpmcb/prow-github-actions

Choose a version

Prow Github Actions ⛵️

This project is inspired by Prow and attempts to bring it's ChatOps functionality to a simple, Github actions workflow.

Prow is a Kubernetes based CI/CD system ... and provides GitHub automation in the form of policy enforcement, chat-ops via /foo style commands, and automatic PR merging.

Quickstart

Run specified actions or jobs for issue and PR comments through a workflow.yaml file:

name: "Prow github actions"
on:
  issue_comment:
    types: [created]

jobs:
  execute:
    runs-on: ubuntu-latest
    steps:
      - uses: jpmcb/prow-github-actions
        with:
          prow-commands: '/assign 
            /unassign 
            /approve 
            /retitle 
            /area 
            /kind 
            /priority 
            /remove 
            /lgtm 
            /close 
            /reopen 
            /lock 
            /milestone 
            /hold 
            /cc 
            /uncc'
          github-token: "${{ secrets.GITHUB_TOKEN }}"

Automatically label PRs every hour based on your .github/labels.yaml:

name: "Label PRs from globs"
on:
  schedule:
  - cron: "0 * * * *"

jobs:
  execute:
    runs-on: ubuntu-latest
    steps:
      - uses: jpmcb/prow-github-actions
        with:
          jobs: 'pr-labeler'
          github-token: "${{ secrets.GITHUB_TOKEN }}"

Your .github/labels.yaml may look like:

# labels to be used with /area command
area:
  - 'bug'
  - 'important'

# File globs for PR labeler
tests:
  - '**/*.test.ts'

You can automatically merge PRs based on a cron schedule if it contains the lgtm label:

name: "Merge on lgtm label"
on:
  schedule:
  - cron: "0 * * * *"

jobs:
  execute:
    runs-on: ubuntu-latest
    steps:
      - uses: jpmcb/prow-github-actions
        with:
          jobs: 'lgtm'
          github-token: "${{ secrets.GITHUB_TOKEN }}"

Documentation


open water breeze
the ocean seas are endless
forward to the prow