Problem/Motivation
#3265096: Move issues from www.drupal.org to git.drupalcode.org in this namespace to be able to create fork / MR.
* We need to migrate issues from drupal.org to gitlab.
* We will do it in batches, so it should be driven by project_name.
* We might need to undo the changes.
* Redirects should be created from drupal.org issues to the migrated gitlab issues.
Deployment instructions
- ✅ #3292161: Decouple issues from www.drupal.org issues (parent and related)
- ✅ Remove project issue cockpit block
- ✅ Merge the code and run
drush en drupalorg_gitlabto enable the new module. - ✅ Check that features are in "Default" state. We should see in this page "/admin/config/content/formats/1" a filter called "Gitlab/Drupal.org issue to link filter" which should be enabled. The same for "Full HTML" format. If they do not appear then probably the feature "drupalorg_wysiwyg" needs reverting.
- ✅ Set up D10 queue with rabbit MQ to listen to the forks queue.
drush queue:run drupalorg_issue_forks_queue_worker - ✅ On GitLab instance, navigate to:
/groups/project/-/hooksand set up a webhook to/drupalorg-api/webhook/contribution-activity. The "Secret token" should match the same one as set in/admin/config/development/drupalorg-gitlab, which is actually populated by an env variable namedDRUPALORG_WEBHOOK_TOKEN.
Once the above is done and set up, we can start migrating projects.
Opt-in issue: #3409678: Opt-in GitLab issues
Migrate/rollback projects
- Migrate issues:
drush drupalorg_gitlab:migrate-project-issues [MACHINE_NAME or NID] migrate - Rollback issues:
drush drupalorg_gitlab:migrate-project-issues [MACHINE_NAME or NID] rollback
Re-enable emails after migrating a project
drush drupalorg_gitlab:migrate-project-enable-notifications [MACHINE_NAME or NID](it accepts more than one project, comma separated)
Related issues from other projects, which may or may not be migrated
- Migrate related issues for a project:
drush drupalorg_gitlab:migrate-related-issues [MACHINE_NAME or NID] - Migrate related issues for all projects:
drush drupalorg_gitlab:migrate-related-issues-all
| Comment | File | Size | Author |
|---|---|---|---|
| #43 | Screenshot 2025-09-16 at 13.39.56.png | 42.81 KB | fjgarlin |
Issue fork drupalorg-3295357
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
- 3295357-check-unpublished-issues-before-migrating
changes, plain diff MR !485
- 3295357-turn-notifications-back-on-via-command
changes, plain diff MR !461
- 3295357-mirror-automated-comment-as-first
changes, plain diff MR !456
- 3295357-feedback-round-11
changes, plain diff MR !444
- 3295357-api-d7-migrated-issues
changes, plain diff MR !443
- 3295357-migrate-individual-issues
changes, plain diff MR !440
- 3295357-feedback-round-10
changes, plain diff MR !438
- 3295357-feedback-round-9
changes, plain diff MR !437
- 3295357-feedback-round-8
changes, plain diff MR !436
- 3295357-feedback-round-7
changes, plain diff MR !434
- 3295357-feedback-round-6
changes, plain diff MR !433
- 3295357-feedback-round-5
changes, plain diff MR !432
- 3295357-feedback-round-4
changes, plain diff MR !431
- 3295357-feedback-round-3
changes, plain diff MR !428
- 3295357-feedback-round-2
changes, plain diff MR !424
- 3295357-add-common-labels
changes, plain diff MR !422
- 3295357-feedback-round-1
changes, plain diff MR !421
- 3295357-fetch-all-labels
changes, plain diff MR !414
- 3295357-migrate-drupal.org-issues
changes, plain diff MR !105
Comments
Comment #3
crasx commentedNice work on this! Quite the lift. Read through the code and it makes sense to me, some thoughts:
Comment #4
fjgarlin commentedThanks so much for the feedback! It's still a WIP, but coming together little by little.
I'll defo focus on error management if things go wrong, so adding extra params is an option, but I'm still not sure how the whole solution will look like. I'll keep this feedback in mind for sure.
We are using the "redirect" table for this. The entry is "node/NID" in the source field (where NID is the issue id), and the new gitlab URL in the redirect field. So we already have the information. Adding more fields might mean adding more syncing, etc. so, if possible, we will leverage the redirect module in this case.
In any case, I'm sure that the code will evolve over the next few days.
Comment #5
fjgarlin commentedThe MR has three files. It’s the info file, a drush file for the commands, and the .module file. We should merge/deploy to the right place and then
drush en drupalorg_gitlabto enable it. Feel free to add reviews to it before we take it any further: https://git.drupalcode.org/project/drupalorg/-/merge_requests/105/diffsIn order to test this in our instance, we’d need:
I've made 5 drush commands available:
For now, all we'd need to do is to call
drush drupalorg_gitlab:migrate-project-issues 1234 migrate(where 1234 is the project ID). That will:The commands can be re-run multiple times in case if fails halfway. It will pick up where it left.
Once multiple project have been migrated, we can cross reference related issues by running
drush drupalorg_gitlab:migrate-related-issues-all(we can run it as many times as we want).Comment #6
fjgarlin commentedDemo of the progress made so far: https://drive.google.com/file/d/1kbw0fpEyq6UWXwK2gZY5Ko4NsJ2wfrOM/view?u...
From my own copy of d.org to my own gitlab.com namespace (hence the warnings when trying to impersonate people).
Comment #7
fjgarlin commentedComment #8
fjgarlin commentedComment #9
fjgarlin commentedComment #10
fjgarlin commentedComment #13
fjgarlin commentedThe MR has been simplified and rebased with the changes from #3265112: Decouple change records from www.drupal.org issues.
Comment #15
dwwComing here from a #gitlab Slack meeting thread about issue IDs. When you run
git blameand find a commit, you see things like “Issue #12345: whatever”. It’s going to very seriously harm DX if I have to check both drupal.org/node/12345 and GitLab issue 12345 to figure out which one is actually it.According to Moshe, GitLab allows us to set the ID when creating new issues programmatically. I strongly believe we should use the d.o issue NID to specify the gitlab issue ID during the migration. Then, after all the issues are in GitLab, we know that we can always go to GitLab/$project/issues/ID and there won’t be any collisions.
Comment #16
fjgarlin commentedI investigated the API possibilities and there is a bit of a conflict here.
It is possible to set the IID when creating an issue (https://docs.gitlab.com/ee/api/issues.html#new-issue), however this "requires administrator or project owner rights". This means that we'd need to run the creation as admin, and this creates a new problem with the "author" property, which would be the user who created the issue, which is a property that can NOT be set on edit (https://docs.gitlab.com/ee/api/issues.html#edit-issue). So this creates a new problem as we'd lose the context of who created the issue.
The way the scripts are designed is to create the new issue and then to create all the needed URL redirects. So somebody going to drupal.org/i/12345 for an old issue will be redirected to the new place. These redirects will be migrated to the new D10 site, so I think it's just a matter of agreeing to this convention, which I think it's even easier than git.drupalcode.org/project/PROJECT/issues/IID
Comment #17
dwwI’m 💯 for the redirects. I was hoping to have both.
That’s really too bad that you lose who created the issues if you set the ids. What an sad limitation of GL. Maybe there’s a work-around?
Apparently I’m having trouble explaining my concern. I believe it’s going to be confusing and annoying to have to both check two places (the d.o redirect and the GL link), and not really know if a given ID refers to one or the other. I guess we’ll have to start checking dates in commits, too, and memorize the date the migration ran live. There won’t be d.o redirects for new issues, so if I see “12345” in a post-GL commit, I can’t use the “easier URLs”, anyway.
Comment #18
fgmOr we could change conventions and ask that issues created on GL be called something else than issue, e.g. "ticket". That way any "issue #xx" would be on d.o. and "ticket #yy" would be on GL.
Comment #19
poker10 commentedRedirects are great, but I personally feel that these are not enough and that without other connection, this will be very fragile. Imagine that we somehow lose one or more redirects (which I think can happen if these will be editable on d.o. as other content redirects), then there will be no way for users to find that particular issue in Gitlab.
I think there are many places where issue IDs are mentioned just as a plain text (like #123456, without square brackets) and for less experienced contributors it could be hard to find the referenced issue.
I am also wondering if keeping the ID would help directly in GitlabUI, because we still need to resolve/convert strings [#XXX] to the new Gitlab issue IDs, so there would have to be a conversion in place in addition to the redirects (if I understand that correctly). In case we keep the IDs the same, wouldn't we match the Gitlab method of referencing and would it be possible to omit the conversion?
So I agree with @dww and prefer to keep IDs, so we can hopefully find some workaround for that issue with authors (as I think that loosing the information about the issue author is a no-go).
Comment #20
dwwfgm: indeed, I asked/proposed that in the Slack meeting. Sorry I didn’t mention it here. It’s still a bit of cognitive load, but it’s less than checking dates, for sure. But then we have to re-train everyone on commit message conventions…
Comment #21
moshe weitzman commentedThe redirect controller could forward unknown issue ids to the gitlab url, without any mapping. That way there is one url to check.
Comment #22
poker10 commentedLooking at the code of the MR here, redirects seems to be created as a standard redirects via a redirect module.
Another point - we also have links comment/XX, which are redirecting to the concrete comment in the issue. Will these redirects being updated to reference the migrated comments?
Comment #23
fjgarlin commentedhttps://www.drupal.org/comment/15302889 redirects to https://www.drupal.org/project/drupalorg/issues/3295357#comment-15302889.
These redirects are something that we will need to decide if we are going to migrate or not. So far, nothing was written for it.
Right now, when migrating comments to notes, we add as part of the description of the new note
Migrated from [comment #%s (#%s)](%s)which has the internal comment order and the CID.Comment #24
dww@moshe re:
All kinds of flaws with that proposal:
Meanwhile, @poker10's concerns about the longevity of all that redirect content is a great one. Makes me think that instead of just generating redirects directly, we should have a redirect controller, and a
{drupalorg_gitlab_issue_map}table (or whatever) with all the legacy d.o NIDs -> project + GL IID values. Then no one can break the redirects via the UI. And we'll have a canonical remap table to use going forward in case we need it for other things. I can't imagine the cost of having such a table in our DB is too great for all the potential benefits that would come from doing it that way. It'd probably a more efficient DB-storage than storing all the redirects separately, in fact.If there's no way to work around GL's limitation that we can't programatically set both IID + Author to what we want, how about we create a new field called "Original Author" or something? So the formal Author on migrated GL issues would be the "admin" user, but we can at least know the regular d.o user that created the legacy issue? Going forward, "Original Author" wouldn't be set on new GL issues, or we automatically set it to the "Author", or whatever. Sort of a PITA, but IMHO less painful than having issue IDs colliding.
Comment #25
drummIn my experience, the risk of a redirect controller breaking in code updates is higher. Unless we get better at test-driven-development for Drupal.org, it will break at some point and go unnoticed. Using the common redirect module ensures we have less code to maintain and upgrade. And I don’t expect people to be editing these redirects in the UI.
Comment #26
dwwIt's not about what we expect people to do, it's about preventing the possibility of changing these, either by accident or malice. This is about data integrity.
It's like the map tables from Drupal migrations. Even if you don't intend to write any code to consume it, the cost of generating that table as part of this migration is almost nil. The possibility that it will really come in handy exists.
If, 3 years from now, we want to check if all the redirects still exist, the table would let us. If we decide we prefer a custom controller for some reason(s), we could.
Comment #27
fjgarlin commentedI have a task in my backlog to adapt the IID of the migrated issue to that of the NID. From what we've read (see links in #16), it is possible, and I will try to achieve it. I just haven't coded it yet.
Comment #28
poker10 commentedI have mentioned this on Slack, but will post it here too.
Not sure what is the exact status of the MR (I have not reviewed it), but from what I remember, there were some open concerns about keeping the issues IDs, how issue metadata should be migrated (#3254602: Using GitLab labels for issues on Drupal projects), and similar. @fjgarlin when you will have time to work on this again, it will be great to update the current status (what is done, what decisions are needed and what work is needed).
Given that this will be a one-time migration (for each project), without an option to revert (unlike the GitlabCI migration), I think it would be great, if we can see at least one "demo" project migrated first. We will be able to evaluate and test, if everything went correctly, if all references to issues, comments, etc, are kept and working, how the meta info are migrated, etc. Some feedback could be collected this way before the real migrations via opt-in process will start.
Issues are currently the most important part of our collaboration. Each commit references to an issue (ideally), there are multiple references to the issues IDs, etc. We need to be very careful to ensure, that no history / connections will be lost after migration. This is main reason why I think a first example demo project migration would be a good idea.
Thanks!
Comment #29
fjgarlin commentedRe IID, there is some code that needs to be tested. I just added it to the MR as a comment for clarity.
We will have an opt-in for projects, and initially, we have mechanisms to revert the migration in case something goes really bad. But yeah, we will need to test with a handful of projects and then test references and a few other things before doing more projects.
Once I come back to work on this, I'll mention it here and we can see what the next steps are.
Comment #30
poker10 commentedI quickly skimmed the MR and tried to find if we are migrating also issues followers and have not found anything. Is there a plan to keep who is following which issue, so that issue notifications are kept as they were on d.o.?
Comment #31
baluertlComment #32
fjgarlin commentedRe #30. Correct, nothing is done so far and we'd need to add that functionality to the code in order to keep them.
Comment #34
fjgarlin commentedComment #35
fjgarlin commentedIn the last 3 commits to this MR we can see:
- Adding issue subscribers from the existing issue followers in the drupal.org issue
- Setting the IID of the GitLab issue to be the NID of the drupal.org issue
Comment #36
poker10 commentedWhat about existing forks/merge requests, which are associated with d.o. issues? Will these be migrated too?
Comment #37
fjgarlin commentedThat is a great point. We need to test and check what's going to happen there.
I added it as a blocker, together with another important case that will need to happen as well.
Comment #38
fjgarlin commentedComment #39
fjgarlin commentedComment #40
fjgarlin commentedComment #41
fjgarlin commentedComment #42
fjgarlin commentedRe preserving NID so it becomes the IID of the new issue (requested in several comments).
This is possible if the issue is created as admin. However:
- Doing this makes the author of the issue the admin user.
- Impersonating the user when creating the issue makes the author correct, but does NOT preserve IID.
There is no api method to change the author of an issue. It needs to be set correctly on issue creation.
https://docs.gitlab.com/api/issues/#new-issue
Author, author_id, author_username... are not valid parameters when creating issues (I even tried and they are ignored).
Edit issue method https://docs.gitlab.com/api/issues/#edit-an-issue does not allow IID nor author param either.
Comment #43
fjgarlin commentedFor now, giving priority to keeping IID over issue author, I've added the author information in the description of the migrated issue: https://git.drupalcode.org/project/drupalorg/-/merge_requests/105/diffs?...
It'd show like this:

Comment #44
fjgarlin commentedOne of the blockers is solved now.
Comment #45
ressaThanks for your huge efforts with the GitLab migration @fjgarlin. Since NID is mentioned here, I just want to share something I observed:
Does not redirect to the issue below
Redirects to the issue
https://www.drupal.org/project/drupalorg/issues/3292161
... maybe this is intentional, or maybe not? I thought I'd let you know.
Comment #46
fjgarlin commentedRe redirects, that has been the case for a long time. There are two existing redirects per issue right now.
We are adding this third redirect in the code:
So, when this is done:
- node/NID will 301 redirect to the gitlab issue
- i/NID will 302 redirect to the d.o issue, which will 301 redirect to the gitlab issue
- project/PROJECTNAME/issues/NID will 301 redirect to the gitlab issue
Comment #47
poker10 commentedPersonally, I agree that keeping old NIDs as GitLab IDs seems more beneficial than keeping authors of issues. Great we can solve it at least this way.
Looking at my earlier comment #22 (and #23) - is there a decision whether we want to keep/migrate also the comments redirects? Seems like there are at least two places in 11.x branch (1, 2), where such a link is used. Not sure how many are used in issues' comments itself (can we check it in the database?).
Also have another question - currently the redirects on i/NID and links on node/NID are universal and are working even without knowledge of the specific project, in which the issue is created. I suppose that if we move an issue to a different GitLab project after the migration, the redirect from node/NID would still work to a correct (new) GitLab project?
And speaking about this (but this question is not related to the migration itself), it seems like that for all new issues created in the GitLab after the migration, we will loose the ability to find such issue just by entering the ID somewhere (without knowledge of the specific project)? Presumably, this is also because issues in GitLab have separate numbering in each project?
Thanks!
Comment #48
fjgarlin commentedYeah, the plan is:
- Keep d.o NID as gitlab issue IID, losing author metadata information (it will be in the description)
- Do not keep/do comment redirects (severe performance implications)
- Post migration, gitlab issues from separate projects could have the same IID.
- If you move an issue, gitlab creates/keeps redirects for that
Comment #49
fjgarlin commentedThe other hard blocker is already fixed and in place.
Comment #50
fjgarlin commentedUpdated deployment instructions.
Comment #51
fjgarlin commentedUpdated deployment instructions.
Comment #52
fjgarlin commentedAdded link to contribution records and changed formatting of the top of the issue description with the extra info.
Comment #53
poker10 commentedOnce this is ready, I am curious if we can see a migrated test project somewhere (even in the staging/test env), to help with testing before doing the first production migration of the DA projects? That could probably help identify issues before doing first irreversible production migrations.
And should this issue #3254602: Using GitLab labels for issues on Drupal projects be a blocker too, since we probably need that decided before the first migration? Thanks!
Comment #54
fjgarlin commentedWe will start with some DA-owned projects first. We are currently testing things in our staging instance.
Re labels, we are not changing anything so far, we are migrating what we have as-is.
Comment #55
fjgarlin commentedLabels will be migrated like:
Comment #56
fjgarlin commentedWebhook has been setup.
Comment #57
drummFor labels, we do need to decide whether each label created for migration is project-specific or global (set in the /project & /sandbox groups). While there’s always the ability to change things later, it’s easier to avoid wanting to do bulk updates in GitLab. I’ve updated #3254602: Using GitLab labels for issues on Drupal projects to propose making issue status the only global label, the rest would be project-specific, and I’ve also made some notes on which ones might be scoped labels.
Comment #58
fjgarlin commentedRe #57, it'd be really easy to make most of them project-specific, it's just a matter of commenting out a couple of lines, as shown in the MR via a suggestion.
Comment #59
fjgarlin commentedAll labels are now project specific. Should we need to promote them to group, that's possible:
https://docs.gitlab.com/user/project/labels/#promote-a-project-label-to-...
Comment #61
fjgarlin commentedThe main MR was merged. Any additional changes will be follow-up MRs, much smaller and easier to review.
Comment #63
fjgarlin commented@drumm - follow-up MR: https://git.drupalcode.org/project/drupalorg/-/merge_requests/414/diffs
This was the section that was assigning colors to the labels. We were fetching just the first page, and with this MR we will loop through all of them.
Comment #65
fjgarlin commented#3292161: Decouple issues from www.drupal.org issues (parent and related) was merged and deployed now.
Only pending deployment step is to remove the issue cockpit from the project's page.
Then we can start migrating projects from the opt-in issue (+200 projects).
Comment #72
drummI ran into a couple timeouts. These have been very rare.
We should log the file & line number, so we can track down what exactly timed out. If possible, the URL path being requested would be good to log too. If convenient, we can log the issue nid too, so we have a good list in logs, without needing to review console output.
120 seconds seems like a good timeout, I don’t think we need to adjust that. Depending on what’s going on, we might look into retries or some other error handling. Ideally this is something that happens in staging only.
Comment #73
drummGitLab’s https://git.drupalcode.org/ghost is the equivalent of Drupal’s assigning content to the anonymous user. It can be impersonated: https://git.code-staging.devdrupal.org/project/drupalorg_crosssite/-/iss...
To test on staging, I manually associated anonymous with it:
I don’t want to do that in production, I’m not sure if there might be side effects. For migration, we can hard-code the
ghostusername for uid 0.While we are there,
$fallback_to_adminlooks like it is no longer used, since we’re ensuring everyone has a GitLab account. That logic can be removed.Comment #74
drummComment created date
The migrated comments come in with a current timestamp. I expect that’s something we can’t forge. (If we could forge it by posting as an admin, that trade-off isn’t worth it to me. Knowing who said what is more important.)
Let’s add the comment created time to the header like
Weird comment numbers
https://git.code-staging.devdrupal.org/project/drupalorg_crosssite/-/iss... has some high comments numbers, like “Migrated from comment #14256” which corresponds to “11.0” https://www.drupal.org/project/drupalorg_crosssite/issues/1549374#commen...
These comments were created during the D6 to D7 upgrade where we also added nodechanges and required that every revision have a comment. The comments got a decimal to slot them into the comment thread without changing the surrounding numbers.
nodechanges_get_comment_thread_id()is where this obscure workaround to make these numbers landed.Note issue summary updates
If we can, let’s add something like this when the issue summary was updated.
While it is impractical to import the full issue summary revision history, adding the context that it was updated will help maintainers make crediting decisions when the commenter didn’t add any context for what they did.
Comment #75
drumm#3300073: Update user edit form with identity portal integration has an edge case where the files posted in #3,4,5 aren’t on the node’s list of files for some reason. So we’ll have to call
file_load()in this case to get the file details.Comment #77
nicxvan commentedThat is really unfortunate.
What about moving forward though? Are git lab issue summary diffs available?
Comment #78
fjgarlin commentedFrom slack:
Addressed in https://git.drupalcode.org/project/drupalorg/-/merge_requests/428/diffs?...
--
Yes, this is a feature available in GitLab issues.
Comment #79
fjgarlin commentedRe #72. If there are errors for some issues, we can just re-run the command and it will migrate the remaining ones only.
Commit for more output on debug
(moved stacktrace to watchdog table only as part of this other commit)
--
We were setting it up in code like
$note = $issue->addComment($preamble . "\n\n" . $body, date("c", $comment->created));, but yes, that property is an admin-only one per https://docs.gitlab.com/api/notes/#create-new-issue-note.Commit for this
--
Commit for this
Comment #80
fjgarlin commentedCommit for this
All feedback addressed now.
Comment #82
drummEmpty comments
https://www.drupal.org/project/drupalorg_crosssite/issues/2981570#commen...
only has the issue summary update, and was short-circuited to not migrate. Let’s insert “Updated issue summary” earlier, so this does get a migrated comment. While these are not really substantive comments, I think we should keep them. At the very least, will save a few people asking about gaps in the comment numbers, and may influence maintainers’ crediting decisions.
Image with absolute URL
https://www.drupal.org/project/drupalorg_crosssite/issues/2981570#commen...
has an image with an absolute URL that gets the domain prefix
https://www.staging.devdrupal.orghttps://www…_drupalorg_gitlab_transform_relative_urls()can have theformelement handling removed, there won’t be any working forms migrated.For detecting absolute URLs, let’s do something like
is_null(parse_url($value, PHP_URL_SCHEME))rather than trying to match http/etc, there might be mailto/ftp/gopher/etc.If the URL starts with a single
/, then we can add the domain prefix as we’re doing now.Theoretically someone could have posted a directory-relative URL, like
href="3548544"but that should be very rare, if it happens at all.Comment #85
volegerWill comment URL https://www.drupal.org/project/drupalorg_crosssite/issues/1549374#commen... of #11 comment redirect to the appropriate new comment URL https://git.code-staging.devdrupal.org/project/drupalorg_crosssite/-/iss... ?
Maybe it's possible to add markup to the migration message and add an ID attribute to the comment ID (id="comment-8058371" for `#14256` of the
Migrated from comment #14256.message)?Comment #86
fjgarlin commentedWe are not doing comment redirects. But we are already doing the second part that you mentioned, as a hidden comment. See the code here: https://git.drupalcode.org/project/drupalorg/-/blob/7.x-3.x/drupalorg_gi...
That adds a hidden comment with the original CID and a visible comment with the comment order that we can see.
Comment #87
fjgarlin commentedAddressed feedback from #82:
- Empty comments -> commit
- Image with absolute URL -> commit + commit
Comment #88
drummRe ID attributes - trying this out quickly, and looking at the documentation, I don’t see that GitLab markdown allows custom IDs at all https://docs.gitlab.com/user/markdown/#heading-ids-and-links. I believe the fragment is not passed to the server, so we couldn’t do any special redirecting server-side.
Comment #89
drummThere have been a couple requests for labels in Slack.
Different colors for components, tags, and versions
I think we’d have to do a static variable in
_drupalorg_gitlab_get_labels()to keep track of what we’ve added. Then the API call afterGet the project labels and add descriptions and colors.could be replaced with getting the values back out.Distinguishing “deprecated” components
The available component values are a multi-value text field on the project node. The component of an issue is a text field on that issue. So issues can have components that the project currently does not allow. To preserve the issue data, we do want to keep migrating components as they are on the issue. We could add a
(deprecated)suffix to the label to distinguish that the project no longer wanted to use the component.Comment #90
fjgarlin commentedDifferent colors for components, tags, and versions: commit + commit
Distinguishing “deprecated” components: commit
Comment #94
fjgarlin commentedWeird code formatting: https://git.code-staging.devdrupal.org/project/mgv/-/issues/3450202 + https://git.code-staging.devdrupal.org/project/mgv/-/issues/3447272#note...
Quote looking the same as the automated comment so it might be ignored visually: https://git.code-staging.devdrupal.org/project/mgv/-/issues/3447272#note...
Automated messages for open and close issue appear together due to queue delay: https://git.code-staging.devdrupal.org/project/tagify/-/issues/3545332
I will work on this three things next.
Comment #95
fjgarlin commentedAutomated messages for open and close issue appear together: commit
Comment #97
fjgarlin commentedMR https://git.drupalcode.org/project/drupalorg/-/merge_requests/433/diffs
Addresses: Weird code formatting and Quote looking the same as the automated comment
Comment #100
drummI pushed a few changes around tracking each project’s status:
Since the migration isn’t quick, we might need to track if a migration is in-flight and show the sidebar link to GitLab issues if it has started. Otherwise, there might not be a link to any issues. We can handle that later, as we’re doing the smaller migrations first.
Comment #111
fjgarlin commentedWhile testing projects in staging, we had timeouts on some requests that made some issues be only partly migrated. We could retrigger the whole project migration command, and it'll go through those uncompleted issues in most cases, but it didn't cover all cases.
So a new command to migrate individual issues is added in https://git.drupalcode.org/project/drupalorg/-/merge_requests/440, in case we need it. We need to pass the project and the issue nids, like this:
drush drupalorg_gitlab:migrate-individual-issue config_notify 3478954,3506647and it will re-migrate only and only those issues. The project needs to be fully migrated before using this.Comment #114
fjgarlin commentedThe api-d7 endpoint shouldn't return data if the issue is migrated.
https://git.drupalcode.org/project/drupalorg/-/merge_requests/443/diffs will adapt the format of the returned information to just include the new link.
Comment #118
fjgarlin commentedSome small additions are ready in MR444.
Comment #120
fjgarlin commentedhttps://git.drupalcode.org/project/drupalorg/-/merge_requests/456/diffs
Adds as first comment the same as the "automated messages" are when we are working on new issues.
Comment #123
fjgarlin commentedAfter migrating some more projects, it seems that some emails were queued up, and if they were trying to be delivered after the migration, then notifications were sent. We migrated two projects and it only happened in one, and not for all issues.
We've decided to not enable notifications at the end of the automated migration script, and defer that to a separate drush command.
The MR is here: https://git.drupalcode.org/project/drupalorg/-/merge_requests/461/diffs
Comment #124
fjgarlin commentedUpdated issue summary with the new command to re-enable emails after the migration.
Comment #128
fjgarlin commented@jonathan1055 found an issue where migrated issues didn't have labels.
does NOT work. it does not add the labels but the issue creation is successful.
does WORK!
@drumm will be pushing the fix for this later.
Comment #129
jonathan1055 commentedThank you for fixing it so quick. For info, here is the slack thread in the new #gitlab-issues-feedback channel