Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/glueops/gatekeeper

This repository contains a FastAPI application named "gatekeeper" that listens to GitHub webhooks for repository events. When a new repository is created in an organization, it triggers a specified GitHub Actions workflow via the GitHub API. This automation aids in managing GitHub users and streamlines workflow initiation upon repo
https://github.com/glueops/gatekeeper

automation event-driven fastapi gatekeeper github github-actions github-api github-integration internal-glueops python repository-events user-management webhook-listener webhooks workflow workflow-trigger

Last synced: about 1 month ago
JSON representation

This repository contains a FastAPI application named "gatekeeper" that listens to GitHub webhooks for repository events. When a new repository is created in an organization, it triggers a specified GitHub Actions workflow via the GitHub API. This automation aids in managing GitHub users and streamlines workflow initiation upon repo

Awesome Lists containing this project

README

        

# gatekeeper

send webhooks to this app to run github user management

## Developer setup

- Create a GitHub organization for testing
- [Create a fine-grained access token](https://github.com/settings/tokens?type=beta)
- Restrict to a single repository that contains the workflow(s) you want to trigger
- Repository permissions should be:
- Read access to metadata
- Read and write access to actions
- Create a workflow to call (or use github user management workflow)
- Setup webhooks at organization level:
* Trigger events: repository events
* Content type = `application/json`
* Create webhooks here: https://github.com/organizations//settings/hooks

### Required env variables

```bash
GITHUB_DISPATCH_URL=https://api.github.com/repos///actions/workflows/.yaml/dispatches
GITHUB_TOKEN=
```