Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automate Issues #1112

Open
8 of 16 tasks
cosmiccoincidence opened this issue Mar 14, 2023 · 6 comments
Open
8 of 16 tasks

Automate Issues #1112

cosmiccoincidence opened this issue Mar 14, 2023 · 6 comments
Labels
Difficulty: hard 🌵 Things are getting spiky ! General Management Clean up or other management tasks.

Comments

@cosmiccoincidence
Copy link
Member

cosmiccoincidence commented Mar 14, 2023

Summary

Automate the GH Project boards and other things using workflows/actions.

The goal here is to automate most of the process for adding tasks to the GitHub Projects boards. The logic should follow something like:

Milestones

  • When a GItHub Milestone is created:

    • create a new GitHub Project with the same name, using a project template copying our current format.
  • When a GitHub Milestone has its name changed:

    • rename the GitHub Project with the same name as the Milestone to the Milestone's new name.
  • When a GitHub Milestone closes:

    • close the GitHub Project of the same name.

Issues

  • When a GitHub Milestone is added to an open issue:

    • add the issue to the GH Project of the same name as the Milestone, in the 'backlog' column.
  • When a PR links to close an open issue:

    • if the issue is in a GH Project
      • move the issue to the 'in progress' column
  • When an issue is closed:

    • if the issue is in a GH Project
      • if the issue was closed via a merged PR
        • move the issue to the 'done' column
      • else
        • remove the issue from the GH Project

Pull Requests

  • When a GitHub Milestone is added to an open PR (develop repo):

    • if the PR has "WIP" in the title
      • add the PR to the GH Project of the same name as the Milestone, in the 'in progress' column
    • else
      • add the PR to the GH Project of the same name as the Milestone, in the 'in review' column
  • When a contributor updates the title of a PR (develop repo):

    • if the PR is in a GH Project
      • if the PR has "WIP" in the title
        • move the PR to the 'in progress' column
      • else
        • move the PR to the 'in review' column
  • When a PR is merged (develop repo) (this should already happen by default):

    • if the PR is in a GH Project
      • move the PR to the 'done' column
  • When a PR is closed (develop repo):

    • if the PR is in a GH Project
      • remove the PR from the GH Project

Labels

  • When the "Blocked" label is added to an issue/PR:

    • if the issue/PR is in a GH project
      • move the issue/PR to the "Blocked" column
  • When the "Blocked" label is removed from an issue/PR:

    • if the issue/PR is in a GH project
      • If issue
        • move the issue to the "Backlog" column
      • If PR
        • move the PR to the "In Progress" column

Assigning

  • When a PR links to close an open issue:

    • assign the issue to the PR owner if they aren't already assigned
  • When a contributor says "assign me" (not case-sensitive) in a comment on an issue:

    • if the issue has no assignees
      • assign the contributor to the issue
  • When a contributor says "unassign me" (not case-sensitive) in a comment on an issue:

    • if the issue is assigned to the contributor
      • unassign the contributor from the issue
  • When an open issue has been assigned for 2 months (and still open):

    • unassign the contributor from the issue
@cosmiccoincidence cosmiccoincidence added Feature A new system or other feature. Difficulty: hard 🌵 Things are getting spiky ! General Management Clean up or other management tasks. labels Mar 14, 2023
@cosmiccoincidence cosmiccoincidence changed the title Automate Milestones/Projects Automate Issues Mar 14, 2023
@cosmiccoincidence cosmiccoincidence removed the Feature A new system or other feature. label Mar 14, 2023
@stilnat

This comment was marked as outdated.

@cosmiccoincidence

This comment was marked as outdated.

@stilnat

This comment was marked as duplicate.

@stilnat
Copy link
Contributor

stilnat commented Mar 19, 2023

So it turns out that github introduced a new kind of "project", the old ones are called "classic projects", and most actions on the github marketplace don't work with those one. One of the very few working is very poor in features.

If you know of an action that could perform those tasks above or even a subset of it, we'll take it.
If you know how to write actions using the new Github API even better.

@Ryan089

This comment was marked as outdated.

@Ryan089

This comment was marked as resolved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Difficulty: hard 🌵 Things are getting spiky ! General Management Clean up or other management tasks.
Projects
None yet
Development

No branches or pull requests

3 participants