Automating adding issues to Beta GitHub Projects using GitHub Actions
The new GitHub Issues Beta is a big step forward in project management over what was previously possible with the old 'simple' form of Issues. The Beta adds many great features such as:
- Project Boards/Lists
- Actionable Tasks
- Custom Fields including Iterations
- Automation
However, one thing that is not available out the box is a means to automatically add newly created issues to a project.
Looking at the automations available within a project you might initially think that there is a workflow to do this job, but no.
The 'item added to project' workflow triggers when the issue, or PR, is added to the project not when it is created. Now, this might change when custom workflows are available in the future, but not at present.
However, all is not lost. We can use GitHub Actions to do the job. In fact, the beta documentation even gives a sample to do just this job. But, I hit a problem.
The sample shows adding PRs to a project on their creation, but it assumes you are using GitHub Enterprise, as they make use of the 'organization' object to find the target project.
The problem is the 'organization' object was not available to me as I was using a GitHub Pro account (but it would be the same for anyone using free account).
So below is a reworked sample that adds issues to a project when no organization is available. Instead, making use of the 'user' object which also exposes the ProjectNext method