We need to migrate all our repos to Fedora Forge - Quality.
Migration documentation: https://docs.fedoraproject.org/en-US/forge-documentation/migration/pagure/
Migration showstoppers: b) There are milestones defined in the source repo. We're waiting for forge#281. c) There are private tickets in the repo which need to be migrated. Private tickets can only be migrated to a separate private repository.
** This project has been moved to: $NEWURL ** This repository is now in archive mode only. There will be no further responses to any issues or pull requests in this repository. The development will only be taken forward in the new repository.
story_points
forge.stg
forge
[❔] https://pagure.io/fedora-qa/openqa_classifier/issue/1 [⚠️] https://pagure.io/fedora-qa/issue/839 BLOCKED by forge#281 [⚠️] https://pagure.io/fedora-qa/fedora_openqa/issue/114 BLOCKED by forgejo#10757 [⚠️] https://pagure.io/fedora-qa/os-autoinst-distri-fedora/issue/446 BLOCKED by forgejo#10757 [🚧] https://pagure.io/fedora-qa/blocker-review/issue/2009 BLOCKED by required engineering work [✅] https://pagure.io/fedora-qa/check-compose/issue/3 [✅] https://pagure.io/fedora-qa/fedfind/issue/27 [✅] https://pagure.io/fedora-qa/python-wikitcms/issue/12 [✅] https://pagure.io/fedora-qa/relval/issue/48 [✅] https://pagure.io/issuebot/issue/16 [✅] https://pagure.io/fedora-easy-karma/issue/71 [✅] https://pagure.io/fedora-qa/createhdds/issue/16 [✅] https://pagure.io/fedora-qa/releasestream/issue/8 [✅] https://pagure.io/fedora-qa/python-ci_messages/issue/2 [✅] https://pagure.io/fedora-qa/relvalconsumer/issue/7 [✅] https://pagure.io/taskotron/resultsdb_conventions/issue/6 [✅] https://pagure.io/fedora-qa/testdays/issue/3 [✅] https://pagure.io/fedora-qa/qa-docs/issue/9 [✅] https://pagure.io/fedora-qa/qa-stats/issue/3 [✅] https://pagure.io/fedora-qa/qa-misc/issue/10 [✅] https://pagure.io/fedora-qa/testdays-web/issue/69 [✅] https://pagure.io/fedora-qa/openqa_testdata/issue/2 [✅] https://pagure.io/fedora-qa/fedora-release-autotest/issue/1 [✅] https://pagure.io/fedora-qa/blockerbugs/issue/295 [❌] autocloudreporter - OBSOLETE [❌] autoqa - OBSOLETE [❌] beaker-tools - OBSOLETE [❌] commitfinder - OBSOLETE [❌] fedora-beaker-tests - OBSOLETE [❌] fedora-desktop-testing - OBSOLETE [❌] fedora-kiwi-instance-docs - OBSOLETE [❌] fedora-tcms-migration - OBSOLETE [❌] fedora-testcases - OBSOLETE [❌] landingpage - OBSOLETE (ticket) [❌] lolz_and_roffle - OBSOLETE [❌] modularity_testing_scripts - OBSOLETE [❌] openqa_docker - OBSOLETE [❌] switchcheck - OBSOLETE [❌] testcase-playbook - OBSOLETE / unpopulated [❌] uf-monitor - OBSOLETE [❌] https://pagure.io/fedora-qa/openQA_scripting_tool/issue/1 - not needed now [❌] https://pagure.io/fedora-qa/autococonut/issue/15 - not needed now [❌] https://pagure.io/fedora-qa/fedora-glossary/issue/1 - not needed now [❌] https://pagure.io/fedora-qa/test_cases/issue/2 - not needed now [❌] https://pagure.io/fedora-qa/flask_skeleton/issue/2 - not needed now [❌] cloud-atomic-ansible-tests - OBSOLETE [❌] fedora-gooey-karma - ARCHIVED / OBSOLETE [❌] kanban - OBSOLETE [❌] motd - OBSOLETE [❌] phabarchive - ARCHIVED; probably not needed since we have https://fedorapeople.org/groups/qa/phabarchive/ [❌] https://pagure.io/fedora-qa/_private/issue/37 - no longer needed, private issues are done in Jira now [❌] taskotron-fedora-cloud-tests - OBSOLETE [❌] windows-ad-integration-testing - probably OBSOLETE; we eventually implemented the 'AD' testing using Samba [❌] qa-make - OBSOLETE [❌] oraculum-client - NOT IMPLEMENTED [❌] https://pagure.io/fedora-qa/oraculum/issue/221 - ORPHANED (ticket) [❌] https://pagure.io/fedora-qa/packager_dashboard/issue/187 - ORPHANED (ticket)
Metadata Update from @adamwill: - Custom field story_points adjusted to 5
Also we probably need an org in forgejo.
Yes, we need an org first. I was planning to look into it and figure out the required structure and naming and everything first. Feel free to beat me to it, if you wish.
Filed https://pagure.io/fedora-infrastructure/issue/12875 requesting an org, following the draft doc at https://docs.fedoraproject.org/ga/forge-documentation/requesting_new_org_or_team/ .
The quality organization was created on both stg and prod deployments. Group mappings PR needs to get merged, and we need to fix one more issue with Anubis before we can move this forward. https://forge.fedoraproject.org/forge/forge/issues/264
Thanks for update, Tomas.
Another repo I'd like to migrate (and takeownership of) is https://pagure.io/issuebot
I'll update the ticket description, add it, and convert it into checkboxes.
Metadata Update from @kparal: - Custom field story_points adjusted to 13 (was: 5) - Issue set to the milestone: Fedora 44 - Issue tagged with: meta, task
I've split "migrate this repo" into #839 and converted this ticket into an "Epic" to "migrate all QA repos".
I started editing the main description and adding helpful links and notes into. Feel free to add more stuff to it that you find.
I've started working on dealing with some of the post-migration issues in #850.
The scripts are almost ready, see #850. We should be able to test out guinea-pig migrations to production next week.
How Forge labels work: 1. Org labels and repo labels are separate entities, they don't override each other. Even when named correctly, they are distinct, so you can have two "bug" labels assigned to a ticket, one of them being an org label and the other one a repo label. 2. The Forge migration script always creates all existing Pagure labels as repo labels, and then assigns them as repo labels only (even when org labels exist). 3. Using API, I can retrieve both kinds of labels using GET and distinguish them (label name is the same, but the url field can be used to distinguish them), but I can't seem to be able to determine what label is assigned using POST. I give just a label name in POST, and it assigns whatever label (org or label) exists. If both exist, it assigns both labels.
This means:
I've written a migration checklist (see this ticket description). I'll probably update all individual tickets with a reference to it.
I've also started a discussion on shared labels across the whole CLE, but since that discussion doesn't seem to be progressing a lot, I simply created the "Scrum" set on the Quality org level. Which means we can now migrate story points, because the points/* labels exist. We can figure out what to do with other labels later.
points/*
fedora-easy-karma has been migrated as the first project.
I found a serious problem in migration - issue attachments are not migrated properly. Let's freeze all migrations until it is resolved: https://forge.fedoraproject.org/forge/forge/issues/321
I fixed that one over the break, I believe. Please check. I did notice another issue while working on it - https://codeberg.org/forgejo/forgejo/issues/10472 - but I don't think that one really needs to block the migration.
I've also experimented with Actions on staging forgejo and more or less have it working, see https://forge.stg.fedoraproject.org/quality/fedfind/pulls/30 . So we should be able to handle migrations of repos with CI as well once we get a runner in prod, I've requested one.
I fixed that one over the break, I believe. Please check.
Great, it works. I've updated the ticket description. We can now proceed with the migrations.
I did notice another issue while working on it - https://codeberg.org/forgejo/forgejo/issues/10472 - but I don't think that one really needs to block the migration.
I noticed it as well, but decided to ignore it as insignificant.
So we should be able to handle migrations of repos with CI as well once we get a runner in prod, I've requested one.
Thanks!
Did a bunch of mine today. Left fedora_openqa because the migration script chokes on it and os-autoinst-distri-fedora because it's huge and scary. Will see if the migration script can cope with o-a-d-f at all tomorrow, I guess, and maybe do some of the shared ones like qa-misc and qa-stats. I also re-arranged the list to be grouped by migration status, which I think makes it easier to work with. Please move entries to the appropriate place when changing status.
We're down to 5 unmigrated Pagure repos. Two blocked by migration bugs, one to be migrated by Adam, one to be decided by Adam, and one that needs Forge support implemented in Blockerbugs.
Log in to comment on this ticket.