Skip to content

Add issue/project connections and automation #23

@andrewvaughan

Description

@andrewvaughan

The following logic items should be implemented:

Issue created

  • Add the Needs Triage label
  • Add the appropriate Request: ... label

Issue has a user assigned

  • Remove the Help Wanted label
  • Add a warning if the Needs Triage label still exists
  • Add a warning if Issue status is one of No Status, Done, or Parking Lot statuses
  • If in the Approved for Development project status, move it to In Progress

Issue has a user unassigned

(All steps below are triggered only if there are no more assignees on the Issue)

  • Add the Help Wanted label
  • If in the In Progress project status, revert to Approved for Development and add a notice to the Issue
  • If in the Code Review project status, revert to the Approved for Development and add a notice to both the Issue and the Pull Request
  • Add a warning if the Issue status is one of Pending Deployment, User Acceptance Testing, or Done

Issue has a milestone assigned

  • Remove the Needs Release Assignment label
  • If assignment occurs in the No Status or Parking Lot statuses, add a warning

Issue has a milestone unassigned

  • Add the Needs Release Assignment label
  • If assignment occurs in the In Progress, Code Review, Pending Deployment, User Acceptance Testing, or Done` statuses, add a warning

Branch is created in ref format ***/####/***

  • If issue #### is in status Approved for Development move to In Progress
  • If issue #### is in status No Status or Parking Lot add warning about working on unapproved effort
  • If issue #### is in status In Progress, Code Review, Pending Deployment, or User Acceptance Testing add warning about duplicative effort
  • If issue #### is in status Done add warning about working on completed effort

Branch in deleted in ref format ***/####/***

  • If Issue #### is status In Progress or Code Review, move Issue to status Approved for Development and add a warning to the Issue

Make sure that auto-branch deletion happens before this logic is performed or Code Review warnings will occur when PRs are accepted


Pull Request is created

  • Scan all added commit messages for (closes #...) and move Issues to status Code Review
  • If more than one (closes #...) message is found, add a warning to the Pull Request that multiple Issues are attached
  • If no (closes #...) messages are found in the Branch, add a warning to the Pull Request that no Issues are attached

Pull Request is updated

  • Scan all added commit messages for (closes #...) and move Issues to status Code Review
  • If possible, figure out if any (closes #...) were removed from prior commit messages and revert those Issues to In Progress
  • If more than one (closes #...) message is now found, add a warning to the Pull Request that multiple Issues are attached
  • If no (closes #...) messages are now found in the Branch, add a warning to the Pull Request that no Issues are attached

Pull Request is accepted

See various branch merge tasks, below.


Pull Request is canceled

  • Scan all added commit messages for (closes #...) and move Issues to status In Progress with warning
  • Add warning to Pull Request listing all Issues that were reverted to In Progress

main branch is updated via merge

  • Scan all added commit messages for (closes #...) and move Issues to status Pending Deployment

main branch is updated via force push or rolled back

  • Review diff of prior main and new main and update Issues accordingly
    • Any commit messages with (closes #...) that...
      • ...were removed, add a warning to the Issue and place the Issue to status In Progress and add label Needs Triage
      • ...remain that aren't User Acceptance Testing or Done move to Pending Deployment with a warning
      • ...remain that are User Acceptance Testing or Done add a warning about a main rollback on a furthered status

staging branch is updated via merge

  • Scan all added commit messages for (closes #...) and move Issues to status User Acceptance Testing

staging branch is updated via force push or rolled back

  • Review diff of prior staging and new staging and update Issues accordingly
    • Any commit messages with (closes #...) that...
      • ...were removed, add a warning to the Issue and place the Issue to status In Progress and add label Needs Triage
      • ...remain that aren't Done move to User Acceptance Testing with a warning
      • ...remain that are Done add a warning about a staging rollback on a furthered status

production branch is updated via merge

  • Scan all added commit messages for (closes #...) and move Issues to status Done

production branch is updated via force push or rolled back

  • Review diff of prior production and new production and update Issues accordingly
    • Any commit messages with (closes #...) that...
      • ...were removed, add a warning to the Issue and place the Issue to status In Progress and add label Needs Triage
      • ...remain move to Done with a warning

Metadata

Metadata

Assignees

Labels

Pending Release AssignmentA Project Maintainer must add this to the Roadmap by assigning a Release Milestone.Type: OperationsA task to update dependencies or operational capabilities of the Project.

Projects

Status

Code Review

Relationships

None yet

Development

No branches or pull requests

Issue actions