cucumber / action-retire-inactive-contributors

Retire inactive contributors from one team to another

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Cucumber Report

retire-inactive-contributor README.md

This is one result of the new contributors ensemble, a weekly exercise in ensemble programming.

Now as a Github action

When this Github action runs: - It requests a list of all contributors - Moves inactive contributors to a less-privileged alumni team - If an inactive contributor has custom permissions, these permissions are revoked

Sequence Diagram

Usage Example

Add this text to your workflow config .github/workflows/main.yml

name: Retire inactive contributors
on:
  schedule:
    # https://crontab.guru/every-night-at-midnight
    - cron: "0 0 * * *"

jobs:
  retire-inactive:
    runs-on: ubuntu-latest
    steps:
      - uses: cucumber/action-retire-inactive-contributor@main
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        with:
          github-orgname: cucumber
          maximum-absence-before-retirement: 1 year
          alumni-team: Alumni

Previously, a bot built with Probot that Retire inactive contributors from one team to another, now done using a GitHub Action

Setup

The current project code is based on the sample TypeScript action available at https://github.com/actions/typescript-action

If you are using VSCode you can also use the following workspace settings for Prettier/ESLint:

{
	"editor.formatOnSave": true,
	"[typescript]": {
		"editor.formatOnSave": false,
		"editor.defaultFormatter": "esbenp.prettier-vscode"
	},
	"editor.codeActionsOnSave": {
		"source.fixAll.eslint": true
	}
}

Contributing

If you have suggestions for how inactive-contributor-bot could be improved, or want to report a bug, open an issue! We'd love all and any contributions.

For more, check out the Contributing Guide.

License

ISC © 2022 Matt Wynne, Kate Dames, Blaise Pabon matt@cucumber.io

About

Retire inactive contributors from one team to another

License:ISC License


Languages

Language:TypeScript 80.3%Language:Gherkin 18.8%Language:JavaScript 0.9%