Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gustavofreze/auto-assign
GitHub action that automatically assigns issues and pull requests to specified assignees.
https://github.com/gustavofreze/auto-assign
actions auto-assign brasil github-actions issues open-source project-management pull-requests python utilities
Last synced: 4 months ago
JSON representation
GitHub action that automatically assigns issues and pull requests to specified assignees.
- Host: GitHub
- URL: https://github.com/gustavofreze/auto-assign
- Owner: gustavofreze
- License: mit
- Created: 2023-07-15T23:48:01.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-04T15:31:58.000Z (about 1 year ago)
- Last Synced: 2024-09-11T14:57:29.390Z (5 months ago)
- Topics: actions, auto-assign, brasil, github-actions, issues, open-source, project-management, pull-requests, python, utilities
- Language: Python
- Homepage:
- Size: 23.4 KB
- Stars: 12
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Auto assign
[![License](https://img.shields.io/badge/license-MIT-green)](LICENSE)
* [Overview](#overview)
* [How to use](#how-to-use)
* [License](#license)
* [Contributing](#contributing)## Overview
GitHub action that automatically assigns issues and pull requests to specified assignees.
## How to use
Before configuring your `.yml` file, let's understand the configuration parameters.
| Parameter | Type | Required | Default | Description |
|:---------------------|:-------:|:--------:|:-------:|----------------------------------------------------------------------------------------------------------------------------|
| `assignees` | string | Yes | N/A | Comma-separated list of usernames. Assignments will be made to them. |
| `github_token` | string | Yes | N/A | GitHub app installation [access token](https://docs.github.com/en/actions/security-guides/automatic-token-authentication). |
| `allow_self_assign` | boolean | No | True | Flag that allows self-assignment to an issue or pull request. |
| `allow_no_assignees` | boolean | No | False | Flag that prevents the action from failing when there are no assignees. |
| `assignment_options` | string | No | ISSUE | Assignment options in a GitHub action related to automatically assigning issues and pull requests. |By default, write permission allows the GitHub action only to create and edit issues in **public repositories**.
You must use admin permission or a more restricted setting for **private repositories**.
You can generate a personal access token with the required scopes.### Working only with issues
Example of how to configure your `.yml` file to auto-assign users only for **issues**.
```yml
name: Auto assign issueson:
issues:
types:
- openedjobs:
run:
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- name: Assign issues
uses: gustavofreze/[email protected]
with:
assignees: 'user1,user2'
github_token: '${{ secrets.GITHUB_TOKEN }}'
assignment_options: 'ISSUE'
```### Working only with pull request
Example of how to configure your `.yml` file to auto-assign users only for **pull requests**.
```yml
name: Auto assign pull requestson:
pull_request:
types:
- openedjobs:
run:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- name: Assign pull requests
uses: gustavofreze/[email protected]
with:
assignees: 'user1,user2'
github_token: '${{ secrets.GITHUB_TOKEN }}'
assignment_options: 'PULL_REQUEST'
```### Working with issues and pull requests
Example of how to configure your `.yml` file to auto-assign users for **issues** and **pull requests**.
```yml
name: Auto assign issues and pull requestson:
issues:
types:
- opened
pull_request:
types:
- openedjobs:
run:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- name: Assign issues and pull requests
uses: gustavofreze/[email protected]
with:
assignees: 'user1,user2'
github_token: '${{ secrets.GITHUB_TOKEN }}'
assignment_options: 'ISSUE,PULL_REQUEST'
```### Working with issues and pull requests in a non-restrictive way
Example of configuring your `.yml` file to automatically assign users for **issues** and **pull requests**.
The difference in approach consists of the following:
- If the only assignable user were the one who started the workflow, it would be assigned.
- No items will be assigned if users are not assignable, including those who started the workflow.
However, no error will occur.```yml
name: Auto assign issues and pull requestson:
issues:
types:
- opened
pull_request:
types:
- openedjobs:
run:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- name: Assign issues and pull requests
uses: gustavofreze/[email protected]
with:
assignees: 'user1,user2'
github_token: '${{ secrets.GITHUB_TOKEN }}'
allow_self_assign: 'true'
allow_no_assignees: 'true'
assignment_options: 'ISSUE,PULL_REQUEST'
```## License
Auto-assign is licensed under [MIT](LICENSE).
## Contributing
Please follow the [contributing guidelines](CONTRIBUTING.md) to contribute to the project.