Our primary goal is to migrate bugs.archlinux.org to GitLab, focusing on packaging bugs and our internal projects. In this email, we'll outline the workflow for packaging bugs and seek your assistance in testing the migration and the bug bot in the [test migration group](https://gitlab.archlinux.org/groups/flyspray-migration/packaging/packages/-/...).
Please pay attention to the relevant paragraphs and everyone is strongly encouraged to conduct testing as outlined in the testing section.
The biggest chunk of the issue migration preparation and testing has been done by gromit, who elevated a former contribution from kevr into its current awesome state. On top, jelle has assisted in various ways to help providing the migration data and infra setup for the test migration. Additionally, I hacked together the bug bot that follows the defined workflow and labels.
## Issue Conversion
Please review the converted issues to ensure there are no significant issues with packaging project assignments or issue content/metadata. You can find packaging issues at: [Packaging Issues](https://gitlab.archlinux.org/groups/flyspray-migration/packaging/packages/-/...).
Following the rollout of the issue migration, the [canonical source for packaging issues](https://gitlab.archlinux.org/groups/archlinux/packaging/packages/-/issues) will shift to each individual package repository.
Our workflow will continue to rely on a team effort, similar to the bug wranglers used in Flyspray, but now within the GitLab environment. When new issues are opened, our bug wranglers will validate them, ensuring packagers receive high-quality bug reports. We'll use GitLab's status labels like "unconfirmed" and "confirmed" as well as issue assignees to streamline the process.
## Bug Bot
Our bug bot, named bugbuddy, will play a crucial role in this workflow. When a new issue is opened, the bot will automatically assign the issue to all bug wranglers and set the label to "unconfirmed" for easy filtering. Once a bug wrangler confirms the issue, they will assign the "confirmed" status label. This, in turn, triggers the bug bot to automatically assign the issue to the current package maintainers. If packagers adopt or orphan packages in archweb, the bot will reassign the issues accordingly.
To ensure a smooth transition, we kindly request your assistance in testing the entire migration process and the functionality of our bug bot. Here are the steps to follow:
1. Check multiple converted issues in the [test migration group](https://gitlab.archlinux.org/groups/flyspray-migration/packaging/packages/-/...). 2. Familiarize yourself with the workflow outlined above. 3. Open a test issue. 4. Monitor the bug bot's automatic assignment and the initial label, which should be "unconfirmed." 5. Progressively move the issue to the "confirmed" status. 6. Observe the automatic reassignment to the appropriate package maintainers.
To maintain useful fields and efficient issue filtering, we will use the following labels for issue categorization:
Scope: bug, documentation, enhancement, feature, question, regression, reproducibility, security Status: unconfirmed, confirmed, in-progress, in-review, on-hold, waiting-input, waiting-upstream Resolution: cant-reproduce, completed, duplicate, invalid, not-a-bug, upstream, wont-fix Severity: 1-critical, 2-high, 3-medium, 4-low, 5-lowest Priority: 1-urgent, 2-high, 3-normal, 4-low
## Per Packager Settings
For your convenience, we've implemented a feature that allows you to have more control over your assigned issues. This can be done by reacting with emojis in the bugbuddy issue tracker at [this link](https://gitlab.archlinux.org/archlinux/bugbuddy/-/issues/1).
To assign yourself to unconfirmed issues related to your own packages, simply react to the control issue by using the magnifying glass emoji. This action will modify bugbuddy's behavior and ensure that you are assigned alongside the bug wranglers to unconfirmed issues within your domain.
## Rollout Timeline
If no significant issues arise, we will proceed with the rollout in approximately 2 weeks. This entails disabling login on Flyspray and importing all bugs into GitLab. Subsequently, Flyspray will be replaced with static sites to preserve historical data for some time.
## User Signup
The primary challenge we face currently is the account setup in Keycloak, as we have temporarily disabled signup in GitLab due to a high volume of spam. We discussed potential solutions during the Arch Summit 2023 to address the spam issue and allow users to sign up without requiring manual approval. Our DevOps team is actively working on resolving this spam issue to enable account signup for the migration. Meanwhile, the DevOps team will make every effort to promptly create the accounts.
Cheers, Levente, Christian & Jelle