This is great work Tomoko! A couple minor thoughts:

* I don’t think a flood of notifications from the import is a problem. It’s
a one time hassle, and having the actual user links is nice for GitHub’s
cross linking system.

* Do you have an estimate for how many api calls are needed? How many total
issues+comments exist in jira? I assume the limits you dealt with were the
default 5k requests per hour. If that will take too long, we could consider
using a user from an enterprise account which has 3x the limit.

On Tue, Jun 21, 2022 at 15:56 Tomoko Uchida <tomoko.uchida.1...@gmail.com>
wrote:

> Hi all,
> again - this is about GitHub migration.
>
> We have a large disagreement on whether we should migrate existing Jira
> issues (including all closed issues) to GitHub or not.
>
> I drafted a tiny migration tool [1] to see how it looks if we move Jira
> issues to GitHub, and tried to migrate a small portion of Jira
> issues/comments to a test repo. You can see it here:
> - Closed issues list
> https://github.com/mocobeta/sandbox-lucene-10557/issues?q=is%3Aissue+is%3Aclosed
> - Unresolved issues list:
> https://github.com/mocobeta/sandbox-lucene-10557/issues
>
> I don't deserve to have a strong opinion on how we should treat 20+ years
> of history so I would reserve my opinion - would the prototype be of some
> help to have a conversation?
> I have to leave for a while, I'd be glad if you have a talk on it while
> I'm away and hopefully reach an agreement.
>
> Here's a summary of what can be done.
>
> You can:
> * migrate all texts in issue descriptions and comments to GitHub;
> browsing/searching old issues should work fine.
> * extract every issue metadata from Jira and port it to labels or issue
> descriptions (as plain text).
> * map Jira cross-issue link "LUCENE-xxx" to GitHub issue mention "#yyy".
>    * see this example:
> https://github.com/mocobeta/sandbox-lucene-10557/issues/218
> * map Jira user ids to GitHub accounts if the mapping is given.
> * convert Jira markups to Markdown with parser library.
>    * not perfect - there can be many conversion errors
>
> And here are the limitations. (Please correct me if I'm missing something.)
>
> You cannot:
> * simulate original authors and timestamps; they have to be preserved in
> free-text forms.
> * migrate attached files (patches, images, etc.) to GitHub; these have to
> remain in Jira.
>    * it's not allowed to programmatically upload files and attach them to
> issues.
> * create hyperlinks from issues to GitHub accounts (reporters, comment
> authors, etc.) by mentions; otherwise everyone will receive a huge volume
> of notifications.
>    * still accounts can be noted with a markup `@xxxx` (without
> mentioning) in their right place
> * "bulk" import issues/comments. Each resource has to be posted one by
> one. Migration would take many hours (perhaps days?) due to the severe API
> call rate limit.
>
> It's not a particularly difficult task, however, there will be other
> uncontrollable things I haven't noticed yet.
>
> [1] https://github.com/mocobeta/sandbox-lucene-10557/tree/main/migration
>
> Tomoko
>

Reply via email to