48 lines
2.3 KiB
Markdown
48 lines
2.3 KiB
Markdown
# Task Management
|
|
|
|
Currently, at my job, I have a number of layers of red tape to work through just
|
|
to actually make commits.
|
|
|
|
- I must have a Jira ticket to work against. This is almost never provided to
|
|
me and is something I make myself.
|
|
- I must have a GitLab branch name that matches the Jira ticket.
|
|
- I must progress the Jira ticket separately from the GitLab branch.
|
|
|
|
My goal is to unify these without having to page through these applications
|
|
which often breaks flow. Here's how I'm hoping to structure this:
|
|
|
|
- I run a command indicating a new task that I am working on.
|
|
- Something like `task new 'fix slack token being logged'`
|
|
- Perhaps also prompts me with a fuzzy finder for a project as well?
|
|
- This gives me a ticket ID
|
|
- If I provided a project as well, it should checkout a new branch with the
|
|
correct branch name for that project branching off the latest default branch
|
|
from the origin
|
|
- Perhaps it also moves my current working directory into the project
|
|
- Perhaps it even further opens my text editor
|
|
- I make commits and push them up
|
|
- Each project needs to have hooks setup in the git config with GitLab that
|
|
create a draft MR
|
|
- I need those commits to be reviewed, so I need a way to ask for reviews
|
|
- Something like `task request-review $ID`?
|
|
- Marks the review as "ready" (not a "draft")
|
|
- This then has different flows depending on the project, but primarily would
|
|
mean sending a message in Slack with the format `!review $LINK_TO_MR -
|
|
$SUMMARY_OF_CHANGE`
|
|
- Once the MR is ready to merge, I need to be notified as I want to merge and
|
|
deploy it
|
|
- The code review bot does notify in the review thread. Perhaps I can listen
|
|
for this?
|
|
- I need to merge the MR
|
|
- If the project requires it, I need to manually confirm that I want to deploy
|
|
to production
|
|
- Once my change has been deployed, I need to close the related Jira ticket
|
|
|
|
My goal is to codify this process as generically as possible and make way for
|
|
project-specific details as well so that I can minimize my personal overhead as
|
|
I go through this process and possibly even across the organization.
|
|
|
|
It would also be nice to manage tasks across the team, dumping the state of my
|
|
Jira board and diffing that over intervals of time would be useful to see how
|
|
tasks progress over time.
|