Import all flyspray issues from the keyring project
To fully move all action for key addition and removal to this repository we need to import all tickets from the keyring project.
- Show closed items
Activity
-
Newest first Oldest first
-
Show all activity Show comments only Show history only
- David Runge added hinthelp-wanted scopeenhancement labels
added hinthelp-wanted scopeenhancement labels
- Reporter
@kevr has created a very cool tool for this: https://gitlab.archlinux.org/kevr/flyspray2gitlab and I did a trial import when this project was just a pull mirror. Since then he has improved the tool and implemented all the features I asked for (thanks @kevr!).
I just did another trial import here: https://gitlab.archlinux.org/flyspray-migration-test/archlinux-keyring/-/issues/, please check it out and report back if anything looks wrong.
Collapse replies - Reporter
I just redid the import after @kevr fixed a few things. Tasks with multiple assigness is handled properly now and the
Additional comments about closing
is commented by the correct user.Edit: I need to do at least one more trial import as I forgot a username-mapping for @freswa.
Edited by Kristian Klausen - Author Developer
Sounds good. Thanks for looking into this! :)
- Reporter
Here is the final mapping list (Flyspray user to GitLab user):
{ "brain0": null, "pierre": "pierre", "allan": "allan", "bluewind": "bluewind", "barthalion": "bpiotrowski", "diabonas": "diabonas", "anthraxx": "anthraxx", "eschwartz": "eschwartz", "toofishes": null, "wonder": null, "snowman": null, "xyne": null, "city-busz": "bgyorgy", "lfleischer": "lfleischer", "jelly": "jelle", "eworm": "eworm", "vesath": null, "tpowa": null, "grazzolini": "grazzolini", "foxboron": "foxboron", "ricsch": null, "sergej": null, "arcan1s": null, "falconindy": null, "anatolik": "anatolik", "muflone": "muflone", "felixonmars": "felixonmars", "bash": null, "arojas": "arojas", "svenstaro": "svenstaro", "xyproto": null, "ambrevar": null, "foutrelis": "foutrelis", "tensor5": null, "alucryd": "alucryd", "nicohood": null, "foxxx0": null, "demize": "demize", "schivmeister": null, "dvzrv": "dvzrv", "andrewsc": "andrewsc", "alad": "alad", "escondida": null, "cesura": null, "wild": "wild", "ffy00": "ffy00", "shibumi": "shibumi", "yan12125": "yan12125", "archangegabriel": null, "zorun": null, "polyzen": "polyzen", "kgizdov": "kgizdov", "kpcyrd": "kpcyrd", "heftig": "heftig", "frederik": "freswa", "hashworks": "hashworks", "raster": null, "daurnimator": "daurnimator" }
I haven't checked all the users without a mapping (
null
), perhaps you could do a quick skimming of the list. - Author Developer
The following are not with us anymore and have no SSO account:
The following are not with us anymore, but have an SSO account:
The following I have no clue about, they seem not to exist:
- ricsch
- bash
These are all active staff and I can send a mail to remind them to sign up now:
- xyne
- tpowa (@tpowa)
- sergej (@spupykin)
- xyproto (@arodseth)
- tensor5 (@tensor5)
- nicohood (@nicohood)
- foxxx0 (@foxxx0)
- escondida (@escondida)
- cesura
- archangegabriel (@archange)
- raster (@raster)
Let's give it a week from now?
Edited by David Runge - Reporter
ricsch
Looks like he accidentally created a task for the Keyring project: https://bugs.archlinux.org/task/37121
bash
It is https://archlinux.org/people/developer-fellows/#andrea (Flyspray user: https://bugs.archlinux.org/user/1846).
Let's give it a week from now?
Sounds good to me.
Edited by Kristian Klausen
- Kristian Klausen mentioned in issue infrastructure#320 (closed)
mentioned in issue infrastructure#320 (closed)
- Reporter
"archangegabriel": archange
I’m hopping to get everything consolidated to that pseudo once every Arch services use SSO. ;)
2 - Contributor
- Reporter
1 - Reporter
I am here: https://bugs.archlinux.org/user/19564
"foxxx0":"foxxx0"
1 - Contributor
I'm here: https://bugs.archlinux.org/user/20791
"tensor5": "tensor5"
1 - Reporter
The final import will happen with these commands and username mapping:
$ GITLAB_TOKEN="xxx" $ python flyspray.py --password xxx --project-id 7 --db-type mysql > flyspray.json $ ./gitlab.py --attachments "/srv/http/flyspray/attachments" --default-target flyspray-migration-test/archlinux-keyring-test -t "${GITLAB_TOKEN}" -b "https://gitlab.archlinux.org" -u "https://bugs.archlinux.org" --username-mapping username_mappings.json --id-mapping-output task-id-to-issue-url-mapping.json --promote --dump-file flyspray.json import
{ "Alad": "alad", "Alucryd": "alucryd", "Barthalion": "bpiotrowski", "City-busz": "bgyorgy", "Foxboron": "foxboron", "jelly": "jelle", "Shibumi": "shibumi", "Svenstaro": "svenstaro", "Wild": "wild", "frederik": "freswa" }
First a trial import will be done, if everything looks good, I will do the final import. Due to GitLab limitations, the users neeed to be "owner" if we want to comment as them and have the correct timestamp*.
* sudo is used to create the issue/comment as the relevant user but
created_at
requires administrator or project/group owner rights.So the plan is:
- Do the trial migration
- Check that everything looks good
- Do the real migration
- Move this project to: https://gitlab.archlinux.org/flyspray-migration-test/archlinux-keyring
- Do the migration
- Check that everything looks good
- Move the project back
- Delete all the promoted users from the flyspray-migration-test group
- Profit
Collapse replies - Reporter
A final trial migration has been done per ^ (the project is located here) with this patch to flyspray2gitlab:
diff --git a/gitlab.py b/gitlab.py index c6737d1..7a5950d 100755 --- a/gitlab.py +++ b/gitlab.py @@ -569,11 +569,6 @@ def restore(token, repository, group, is_group): if len(users_to_remove): logging.info("Removing users we added...") - for user in users_to_remove: - request(requests.delete, member_endpoint(group, user), json={ - "access_token": token - }) - logging.info(f"Removed {user.get('username')} from the project.") to_remove = set() if len(email_settings):
As we want to avoid adding/removing the users as "owner" for every single run.
Beforehand all the existing test issues was deleted with:
$ curl --request DELETE --header "PRIVATE-TOKEN: ${GITLAB_TOKEN}" "https://gitlab.archlinux.org/api/v4/projects/19589/issues/"{386..480}
Edited by Kristian Klausen - Reporter
The final migration has been done now per ^ and all the members removed from the flyspray-migration group with this command:
$ curl -s --header "PRIVATE-TOKEN: ${GITLAB_TOKEN}" "https://gitlab.archlinux.org/api/v4/groups/flyspray-migration-test/members" | jq .[].id | xargs -I{} -n1 -P1 curl --request DELETE --header "PRIVATE-TOKEN: $GITLAB_TOKEN" "https://gitlab.archlinux.org/api/v4/groups/flyspray-migration-test/billable_members/{}"
Edited by Kristian Klausen 1
- David Runge added scopeenhancement label
added scopeenhancement label
- Author Developer
@klausenbusk thanks very much for the effort! I have just updated the tickets so that they include their respective labels.
I guess that concludes this business :)
- David Runge closed
closed
- Kristian Klausen mentioned in commit klausenbusk/infrastructure@a7baaaca
mentioned in commit klausenbusk/infrastructure@a7baaaca
- Kristian Klausen mentioned in merge request infrastructure!419 (merged)
mentioned in merge request infrastructure!419 (merged)
- Kristian Klausen mentioned in commit klausenbusk/infrastructure@b9daeafa
mentioned in commit klausenbusk/infrastructure@b9daeafa
- Kristian Klausen mentioned in commit klausenbusk/infrastructure@4ff77e45
mentioned in commit klausenbusk/infrastructure@4ff77e45
- Kristian Klausen mentioned in commit bugs-archive@f533127a
mentioned in commit bugs-archive@f533127a