A GitHub Action that automatically opens or updates pull requests when branches with a specified prefix are pushed.
Pull-request-action is a GitHub Action that automatically opens or updates pull requests when branches with a specified prefix are pushed to a repository. It solves the problem of manually creating PRs for automated content updates, streamlining review workflows in CI/CD pipelines.
Developers and DevOps engineers setting up automated workflows on GitHub that involve generating content in branches and needing those changes reviewed via pull requests.
It reduces manual overhead by automating PR creation, offers extensive customization through environment variables, and supports advanced use cases like cross-repository PRs and updating existing PRs.
open a pull request when a branch is pushed or updated
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Allows precise targeting of branches with configurable prefixes like 'update/', ensuring only relevant pushes trigger PRs, as shown in the default BRANCH_PREFIX setting and example workflow.
Supports opening PRs to different repositories using Personal Access Tokens (PULL_REQUEST_TOKEN), enabling workflows like upstream updates, detailed in the environment variables section.
Offers extensive customization through environment variables for title, body, draft status, assignees, and reviewers, providing adaptability for diverse CI/CD needs without hardcoding.
Can update already open pull requests instead of failing, using PULL_REQUEST_UPDATE, which is useful for continuous updates and reduces workflow noise.
Uses environment variables instead of standard YAML inputs common in GitHub Actions, which can be less intuitive, harder to validate, and more prone to debugging issues.
Error handling relies on configurable pass-throughs (PASS_ON_ERROR, PASS_IF_EXISTS), which might mask underlying issues unless explicitly managed, potentially leading to silent failures.
Exclusively designed for GitHub Actions and the GitHub API, making it unsuitable for projects using other CI/CD platforms like GitLab CI or Jenkins without significant workarounds.