...
https://github.blog/changelog/2023-03-09-github-issues-projects-march-9th-update/
Pro: built-in, no code for us to maintain.
Con: You can only choose one source repo for itemsfor item per workflow. You can however, add up to 20 ‘Add to project’ workflows, one for each source repository.
OSPR bot adding pull requests to repos
The OSPR bot can add pull requests to repos. External When it acts on a non-draft pull requests will be added request, it will add it to projects listed in the catalog.yaml file.
In a repo’s catalog.yaml file, you create an annotation. For example, this will add to the https://github.com/orgs/openedx/projects/23 project:
Code Block language yaml annotations: # This can be multiple comma-separated projects. openedx.org/add-to-projects: "openedx:23"
More information is in the bot docs: https://github.com/openedx/openedx-webhooks/blob/master/docs/details.rst
Pro: many repos can auto-add to many projects.
Con: only operates on pull requests from outside 2U and Axim; we maintain the code.
Open edX shared workflow
An Open edX shared workflow can add issues to projects: https://github.com/openedx/.github/blob/master/.github/workflows/add-issue-to-a-project.yml
This is almost obsolete: a project workflow does this, but only for one repo. This action can be used in multiple repos to funnel issues from all of them into a project.
You make an action in the source repo to use the workflow, like this:
Code Block language yaml name: Add new issues to the Security project
on:
issues:
types: [opened]
jobs:
Add_an_issue_to_project:
uses: openedx/.github/.github/workflows/add-issue-to-a-project.yml@master
secrets:
GITHUB_APP_ID: ${{ secrets.GRAPHQL_AUTH_APP_ID }}
GITHUB_APP_PRIVATE_KEY: ${{ secrets.GRAPHQL_AUTH_APP_PEM }}
with:
PROJECT_NUMBER: 45
Although the action says “issue”, I think it can add pull requests also.
Pro: many repos can auto-add to many projects.
Con: needs secrets management.