m7kvqbe1 / github-action-move-issues

A GitHub Action to move issues between GitHub Projects columns
3 stars 1 forks source link

Move to column in the absence of a label #1

Closed koppor closed 1 month ago

koppor commented 1 month ago

In our project, we use the label FirstTimeContribution to indicate that a student was assigned and starts working on an issue. Then, we move the issue from "Free to take" to "Assigned". - If a student becomes inactive, we remove the label "FirstTimeContribution". Then, we also want the issue be moved back to "Free to take". - This currently seems to not supported by the action, but we would really like to see it.


It woudl be also nice if there was a sync between the field "Assignees" (empty or non-empty) and columns. But this seems to be out of scope of this project?

In case a pull reuqest is submitted referencing an issue, the issue should be moved from "Assigned" to "In Progress". Would such a feature be in-scope of this project? Then, I can file a separate issue for it.

m7kvqbe1 commented 1 month ago

@koppor

Thanks for your feedback! Here's my take on your suggestions:

  1. Moving issues back to a specific column when a label is removed: Great idea! This fits well with the action's purpose. I'll implement it this week.

  2. Syncing assignees with columns: Interesting, but probably out of scope for now.

  3. Moving issues when a PR is submitted: Could you open a separate issue for this? It'd be easier to discuss there.

I'll start working on the label removal feature. Feel free to open new issues for any other ideas!

m7kvqbe1 commented 1 month ago

Does this sum up the overall desired flow for your specific use cases?

Screenshot 2024-10-14 at 21 27 40

graph TD
    A[New Issue] --> B{Has 'FirstTimeContribution' label?}
    B -->|Yes| C[Move to 'Assigned' column]
    B -->|No| D[Stay in 'Free to take' column]
    C --> E{Label removed?}
    E -->|Yes| F[Move back to 'Free to take' column]
    E -->|No| G[Stay in 'Assigned' column]
    G --> H{Pull Request submitted?}
    H -->|Yes| I[Move to 'In Progress' column]
    H -->|No| G
koppor commented 1 month ago

2. Syncing assignees with columns: Interesting, but probably out of scope for now.

We solved this with assign-issue-action. This action adds a label, which is then processed by the github-action-move-issues.

koppor commented 1 month ago

Does this sum up the overall desired flow for your specific use cases?

Quite. The start should be "Issue labeled" (instead of "New issue")

The label is coming mostly when a student writes "Can I get assigned" and then we assign that label.

For more advanced workflows: The student issues /assign-me and then the assign-issue-action does some assignment magic and assigns the label 📍 Assigned.

m7kvqbe1 commented 1 month ago

This should provide you with the functionality you want: https://github.com/m7kvqbe1/github-action-move-issues/pull/7