az-digital / az_quickstart

UArizona's web content management system built with Drupal 10.
https://quickstart.arizona.edu
GNU General Public License v2.0
30 stars 20 forks source link

Proposal: switch (back) to Jira for issues and project management #3575

Open danahertzberg opened 1 month ago

danahertzberg commented 1 month ago

What is the problem that we want to solve?

I want to document feedback on the use of Jira for issues.

Currently, management of issues in GitHub is cumbersome for multiple reasons.

  1. Issues are specified per repo. While helpful when working on a ticket, planning ahead in separate repos is challenging.
  2. We currently use milestones to plan out future releases, these are also repo-specific and we have many repos that would be in any one release.
  3. There is no single space to put an issue if the repo is unknown (more challenging for less dev-focused contributors)

Conditions of satisfaction

Notes

Jira is now ready for review. Below is the link and some notes.

https://uarizona.atlassian.net/jira/software/projects/AZDIGITAL/list?hideDone=true&sortBy=key&direction=DESC

Access

You may need to request Jira access for your account. Please find that info here: https://uarizona.service-now.com/sp?id=sc_cat_item&sys_id=82191997932ef950b1fd722efaba10a5

akslay commented 1 month ago

Are you able to provide some background information on the intended end result/goal of switching? (Sorry, I think I missed this conversation since I don't attend AZ Digital meetings as regularly as I used to).

Is the goal just to be able to view issues on a Kanban board?

Would issues and bug reports be created in Jira and completely replace the use of GitHub issues? (So that GithHub only becomes a place to store a repo)

Or will creating a ticket in Jira cause an issue to be auto-created in GitHub?

danahertzberg commented 1 month ago

Great questions @akslay, thank you! So the goal of switching would be to have better management of issues. Currently, we want to track Bootstrap and Quickstart issues in the same Milestone, but they cannot be shared across repos. Using Jira would give us more flexibility around interacting with issues specifically. We can track and coordinate work across multiple repos more thoroughly in Jira.

The intent is that issues would live in Jira and GitHub would only be for repositories and code. There would not be a duplication of issues if we decided to go with Jira. The interim transition time would have duplication for historical documentation purposes, but new issues would not be duplicated. Jira does not create issues in GitHub, but Jira issues can be linked to repos and PRs in GitHub.

Another driver for this effort is to have a more consistent place for issues. So members (of primarily Campus Web Services) can access all issues in the same place (Jira) regardless of team.

joeparsons commented 1 month ago

Some questions I have that probably require some investigation:

akslay commented 1 month ago

Just an FYI for anyone trying to access the above Jira link if they already had an "old" Atlassian account:

If you already had an Atlassian account using your @email.arizona.edu address, you might get a notice that your account has been "deactivated" when you try to access Jira. You will have to have someone on the UITS Atlassian team activate your account/license (using your @arizona.edu address), and then have @danahertzberg add you to the AZ Digital Jira space. I tried to just change my email address associated with my Atlassian account, but that didn't work.

In the end, you'll basically have 2 accounts, but you just won't be able to use the old @email.arizona.edu login, specifically, when trying to access the new cloud-hosted Jira instance.

danahertzberg commented 1 month ago

Automation for closing issues when a linked PR is merged works. This is the only automation I setup so far. Others can be made.

Example: https://uarizona.atlassian.net/browse/AZDIGITAL-158 See "Automation" accordion

akslay commented 1 month ago

Will there be a scheduled discussion around this proposal at one of the workshops or Friday meetings? From the meeting notes on Slack, it looks like it was discussed some today but I was unable to attend the meeting today.

I also saw mention of a vote on Slack. When will that vote be taking place?

danahertzberg commented 1 month ago

So there is no rush on this at all. The goal of this ticket is to document thoughts about the possibility of moving to Jira for replacement of GitHub issues. No decision has been made yet nor will be made soon. I would like to get a good list of pros/cons and alternatives. After some time allowed thinking about this, I will compile the comments from here into a spreadsheet to easily see the pros and cons side-by-side.

After the opinions are collected, we will then discuss again and I will make sure this topic is highlighted in the Slack topics thread for that week. This topic is a proposal an no decisions have been made yet. I appreciate any details on your opinions that you can provide here.

camikazegreen commented 1 month ago

I think that it would be helpful to have more information on the "problem that we are trying to solve" section of this Spike.

danahertzberg commented 1 month ago

Thank you @camikazegreen! I added some details on the problem I'm looking to solve in the issue description here.

danahertzberg commented 1 month ago

Some thoughts from my perspective.

  1. When planning out work for Arizona Digital, I want to be able to look at the work as a whole not just per repo.
  2. Jira has better planning and timeline tools as it relates to issues.
  3. GitHub can integrate with Jira if the Jira ticket number is placed within the title of a PR.
    • Though, you cannot search for a Jira ticket to attach to a PR from the GitHub interface
  4. When searching for issues, I can search all repos in Jira
  5. I can use true Epics (not just the label) to group similar work and have better visibility of where we are spending our time
jwmoore1 commented 1 month ago

GitHub allows for issues from any repo to be put into a Project. Has this been considered? It would allow for all issues to be visible. My main concern about switching to Jira would be losing all the GitHub Issue history that currently exists, as well as the idea that an open source project in GitHub would essentially have no visible Issues nor would it be possible to see what was going on with the project in general because all the tasks would be in a different system. Also, it would be another hurdle for a potential contributor if it was required to create an account in a whole other service (Jira) and then still have to get added to the Jira project. I would be interested in a trial of putting Issues, instead of PRs, into a Project. This would solve the problem of not being able to see Issues across repos. Then, the Issues can be linked to their respective PRs, so things that are ready for review/etc can still be easily accessible.

bberndt-uaz commented 1 month ago

I like the suggestion from @jwmoore1 about testing out a different type of GitHub project containing only issues, as an alternative solution to consider. I know we went in that direction a little bit before (e.g., this 2.9.x Issues project).

I also agree with the concern about moving issues out of projects that are designated as open source (as mentioned on the main AZ Digital GitHub page and the Arizona Bootstrap GitHub page). If we were to make this switch, would our projects still be considered to be open source? How important is it that people outside the university can view and create issues for these projects?

trackleft commented 1 month ago

I'm indifferent, tell me what to do and I'll do it.

danahertzberg commented 3 weeks ago

Notes from Arizona Digital meeting on 8/16/2024

jwmoore1 commented 2 weeks ago

Martin and I found out that the University of Arizona only pays for a limited number of Jira licenses and they don't plan on buying more, so switching to Jira could have a cost associated with it, or only allow a limited number of users to access tickets.