Problem/Motivation
I assumed that there already is an issue for this, but I couldn't find.
The Drupal Upgrade UI module provides two pages /upgrade and /upgrade/log but there are no menu items for it.
Where to put these was discussed a bit was discussed in #2679931: Migrate form should be linked from the UI somewhere starting at #4
It was further discussed around #75.
Note that Migrate Tools has an menu item, /admin/structure/migrate.
Proposed resolution
There has been several suggestion for where to put /upgrade and /upgrade/log.
- admin/config/development
- admin/structure
- admin/reports
The latest patch has the menu items in /admin/reports/upgrade.
The /upgrade link is in the same place it always has been located.
Remaining tasks
Place these links underneath Configuration => Development per comments from yoroy in #51 & #52.
User interface changes

Wording ^ has been updated "Upgrade content and configuration from either a Drupal 6 or a Drupal 7 site."

API changes
Data model changes
| Comment | File | Size | Author |
|---|---|---|---|
| #78 | interdiff.txt | 2.29 KB | quietone |
| #78 | 2701795-78.patch | 1.23 KB | quietone |
| #63 | 2701795-63.patch | 2.81 KB | jofitz |
| #63 | interdiff-58-63.txt | 688 bytes | jofitz |
| #58 | Site upgrade | d8.png | 24.83 KB | jofitz |
Comments
Comment #2
ifrikThis should probably be 8.2
Comment #3
ifrikComment #4
ifrikComment #5
ifrikI've added
migrate_drupal_ui.links.menu.ymlto provide aMigratemenu item in StructureComment #6
ifrikComment #7
ifrikSorry, patches got mixed up and included a composer file.
This is the correct patch
Comment #8
hauruck commentedI'm working on this issue:
I have installed the patch and there are problems to be resolved
Comment #9
hauruck commentedI have changed the menu link to a menu group for migration as a link collection page under admin/structure/migrate/ where other contrib modules can add their links as well.
Comment #10
hauruck commentedComment #11
hauruck commentedComment #12
hauruck commentedSorry, I uploaded the wrong patch!
Comment #13
ifrikThanks hauruck!
The module now provides a general Migration menu item, and a sub-menu item for Drupal Upgrade. This allows contrib modules such as Migrate Tools to be placed under the same menu item in future.
The Drupal Upgrade UI module (as well as the other two migration modules) do not have permission settings, therefore the menu item is displayed to users with the administration role, but only user 1 has access to
/upgrade.Asking for review by somebody who is working on these modules.
Comment #14
eojthebraveIs it possible to define this base route in the migrate module or somewhere else instead of in migrate_drupal_ui? If we define it in Migrate Drupal UI, what happens if you install a contrib module like https://www.drupal.org/project/migrate_tools which will have a UI for running migrations, but not require Migrate Drupal UI (which is aimed at Drupal to Drupal migrations only)?
Comment #15
ifrikThanks eojthebrave,
that's a good point. The main menu item should go into migrate, and and only the menu item for
/upgradeshould be in the Drupal Upgrade UI module.What permission settings do we then need for that main menu item?
Comment #17
heddnNot clear what is the next steps on this issue.
Comment #18
michael_wojcik commentedI'm picking this up today at DrupalCon Dublin.
Will be updating issue summary and re-rolling the patch.
Comment #19
michael_wojcik commentedRemaining tasks:
- Move
/admin/structure/migrateroute to the Migrate module- Adjust permissions on main menu link
Comment #20
michael_wojcik commentedUpon further review, given that migrate_drupal is only run once and can only be run by the root user, we may not want menu links for migrate_drupal_ui after all. Especially since the
/admin/structure/migrateroute is already being claimed currently by the Migrate Tools contrib module.Comment #21
ifrikI think it's a bad UX to provide users with a sub-module that specifically offers a UI for a module, and then not provide a menu item for it.
Also people doing training for migration are reporting that they repeatedly have to point out to users that they need to click on this link in the confirmation message in order to find the page.
If Migrate Tools module already claims that menu item, then we should at least have a slightly different titled menu item.
Comment #22
quietone commentedLet's gather UX issues in one META.
Comment #23
ifrikI've checked this again, and users are likely to go to this page more than once.
Users are asked to enable required modules and then to put the site into maintenance mode before continuing from upgrade page.
If Migrate is already claimed by the contrib module, then the menu item could also be called "Upgrade" - which would be consistent with the page name.
Comment #24
quietone commentedThere is another issue which talks about this, see
https://www.drupal.org/node/2679931#comment-10935637, for a suggested item in /admin/config
Comment #25
quietone commentedBoth yoroy and Bojhan also thought that putting this in reports made sense. So, I thought I'd try it. Attached is a patch that does that and adds an item for /upgrade/log.
Having the upgrade link in reports seems odd, but fits with the fact that 'available updates' is there. I don't mind where it is, I'll leave that for others to decide.
Comment #26
maxocub commentedAssigning for review.
Comment #27
maxocub commentedI think that 'admin/reports' might be a good place to place these menu items that are only accessible by user '1', but the patch still puts them under 'admin/config/development'
I would say 'View the upgrade log.'
Comment #28
leslieg commentedGoing to attempt to work on the changes mentioned during SprintWeekend2017
Comment #30
rakesh.gectcrComment #31
ifrikrakesh.gectcr,
your patch seem to remove the menu items that were added in the previous patches - without giving any information why you've decided to do that.
It doesn't take the proposals in comment 25 and 27 up. It would therefore be better to continue working with patch #25
And two comments about working in the issue queue:
Somebody else had already said that she would work on that during todays sprint. Please respect that because otherwise we end up with double work and frustration.
And please don't rename patches but keep the name that people who originally worked on the issue because otherwise it is really unclear whether a patch is based on the existing work, or whether you started from scratch.
Comment #32
rakesh.gectcr@ifrik I do agree it was mistake the patch I am working on it. I found this issue by checking the tag SprintWeekend2017. FYI she is going work for the same but she is not assigned for herself from last the 6 hours of the comment. So did worked on it.
Comment #33
ifrikHi rakesh.gectcr,
We actually ask people to say in a comment when they are working on an issue instead of assigning it to themselves.
It often gives more information about what or when to expect something, so it's important to look out for that in future, especially during sprints.
Comment #34
rakesh.gectcrComment #35
rakesh.gectcr@ifrik Ok, Will do that. Kindly consider to guide them assign themselves before starting working on an issue. That is one of best practice.
Comment #36
lokapujyaThe menu items are STILL under admin/config/development. But before or along with fixing this, I think the remaining task in the issue summary should be updated: Decide where the menu items should be located.
Comment #37
quietone commentedWe still need to reach agreement on where the menu items should be.
Personally, I'm leaning to /admin/reports because updates is also there.
Comment #38
rakesh.gectcr@lokapujya please see the attached image. After apply [#34], clear the cache and see.

@quietone I am also agreeing with
/admin/reportsComment #39
heddnLet's go with
/admin/reports/upgrade?And
/upgradeComment #40
phenaproxima+1 for this path when reporting the results of the upgrade.
Comment #41
quietone commentedWill respond to #39 and #40.
Comment #42
quietone commentedThe migrate meeting is in favor of these two paths:
/upgrade
/admin/reports/upgrade
This patch puts both of them in the menu at Reports->Site Upgrade->Upgrade and Reports->Site Upgrade->Upgrade log, respectively.
Comment #43
heddnI don't think we want to change migrate_drupal_ui.migration into reports. Just migrate_drupal_ui.log. I recommend migrate_drupal_ui.migration and migrate_drupal_ui.upgrade should be /upgrade & /upgrade/initialize, respectfully.
And I wonder if the parent for migrate_drupal_ui.log should be the admin reports route.
Comment #44
quietone commentedComment #45
quietone commentedDiscussed with heddn and mikeryan on IRC. It was pointed out that install.php and update.php do no have menu items but there seems a need for one for /upgrade. And mikeryan suggested a status report page, which I'll make a new issue for.
Finally, /upgrade and /upgrade/initialize are in the 'Content' menu item.
Comment #47
quietone commentedThis should fix the errors. But the behavior of admin->content isn't what I expect. However, before addressing that, do we all agree on 'Site upgrade' being in the 'Content' menu?
Comment #48
quietone commentedComment #49
mikeryanComment #50
mikeryan@yoroy - Any thoughts on where the upgrade page should be linked in the admin interface?
Thanks.
Comment #51
yoroy commentedHow I think about it is that Migrate should be friends with Configuration Synchronisation because they're both about getting things in/out of Drupal. That would mean the Development section on /admin/config
I'd expect the migration logs to be under /admin/reports. For the logs it's probably more important to clearly link to them from within the Migrate UI screens. Or is the log such an integral part of a migration scenario that we should not move them to somewhere else?
Comment #52
yoroy commentedI'm also thinking about the Development section because although this is about content, it's likely a task done not by content editors but site builders, developers. So more thinking about the role of the person performing the task.
Like this maybe?
Comment #53
heddnLet's do it. Moving back to NW.
Comment #54
mikeryanComment #55
ifrik"Development" sounds like a good place for it.
Comment #56
jofitzI have transferred the migrate menu items to the development section, but I think this needs a little more work. Namely, what should the title (and description) be? In the code it is "Site Upgrade", in @yoroy's screenshot it is "Drupal upgrade", but I think the word "upgrade" is misleading. I realise we are taking the user to /upgrade, but should it not be something more like "Migrate content"? Discuss...
Comment #57
mikeryanI think "Migrate content" would be misleading. This UI is strictly for a complete upgrade of D6 or D7 to D8 - we shouldn't give the impression that it is useful for the general case of migration.
Comment #58
jofitzHaving discussed with @mikeryan in IRC we're going with "Drupal upgrade" from @yoroy's screenshot.
Here's a couple of screenshots of how it now looks.
Comment #59
heddnLooks good to me.
Embedding the screenshots, to make it easier for reviews.
Comment #60
mikeryan@yoroy, can you give this your OK (screenshots in the issue summary)?
Thanks.
Comment #61
yoroy commentedThanks. Is "structure" a thing? I know we have content and configuration. Not sure structure is worth calling out explicitly. And why "versions" instead of "sites"?
Comment #62
heddnWe place the entity field forms underneath 'Structure'. I've always mentally called it structure. But mhhh. Not a big deal to me.
I'm also OK with explicitly stating "versions". Because it doesn't support upgrades from 8.1, which is an "older" drupal site. We explicitly only support upgrading from an older D6 or D7 site. So maybe we just state the versions and leave it at that?
Comment #63
jofitzUpdated description according to @heddn's suggestion.
Comment #64
heddnComment #65
heddnI've updated the IS to include the new wording. An updated screenshot would help, but I think its fairly clear without so just moving this along to RTBC.
Comment #66
ifrikThe Migrate Drupal module is only for migrating from one Drupal site to another. At least that's what we discussed previously for its the hook_help text. Therefore it is okay to use "Drupal" in the menu item. The location also makes sense.
I'm glad that we got this to RTBC now.
Comment #67
yoroy commentedOne final nitpick: Is there a reason for using "Upgrade" as the verb in the description vs. "Import"? Maybe a small distinction, but to me "Upgrade" communicates changing things within the same environment, and "Import" communicates moving stuff from old site A to new site B. Isn't the latter closer to what will actually happen?
Comment #68
mikeryanTo me, the task that someone using this UI is trying to accomplish is to transform their existing Drupal 6 or 7 site into an exactly corresponding Drupal 8 site (i.e., they are upgrading their D6/D7 site), and the fact that this is accomplished by copying into a skeletal D8 installation rather than altering in-place is an implementation detail, not the essence of what is being accomplished.
As with "migrate", my problem with "import" is it implies a more general scope than the very narrowly-focused tool we are actually providing. Contrib is providing migrate/import tools, and the existence of a core UI that looks like a general migrate/import tool would be confusing.
Comment #69
yoroy commentedThanks for explaining. Given that, I agree that "import" is not the better word.
Comment #70
lauriiiIs there a reason why we have chosen the path /upgrade instead of /admin/config/development/upgrade which would be the convention other admin paths are following?
I also updated the commit credits.
Comment #71
ifrikLaurii,
the developers of the migrate module choose this path but didn't provide a menu item, so they probably didn't think about any path that would be more structured. Renaming it would be consistent, but should be checked with them.
Comment #72
mikeryanThe short path mirrors /update.php, which this UI replaces for major system upgrades. With the menu link, having the short path now seems less important than it was (although I personally find it convenient when debugging the upgrade path;). The feeling in #drupal-migrate seems to be we like /upgrade just fine, but aren't wedded to it - whatever the UX people think.
Comment #73
heddnThe reason for /upgrade is to make it analogous to /update.php. It makes it convenient for documentation and communication how to upgrade. However, with a UI menu item, it isn't as critical any more. I cannot say I feel too strongly about keeping it where it is, but I sure like it.
The only strong pro I can think of is that changing it would require a CR, because a lot of folks know that /upgrade is the path.
I suppose we could bikeshed on the URL, but I just want to get this in so if the consensus is to change, I'll go with the consensus.
Comment #74
yoroy commentedYeah my reading was that as an operation this is of similar impact to /install and /update, especially since you want to do this first thing with an empty installation because you lose any prior changes.
Comment #75
gábor hojtsySo reading this issue, the question from @eojthebrave did not seem to be answered other than @ifrik saying
All the menu items are in migrate_drupal_ui. And this way it may not make sense to make the UI extensible with the interim page, is there? I am not 100% aware of how other contribs integrate with (and depend on) migrate_drupal_ui. Do they? Sounds like the migration menu item would house more UI modules, which may or may not be limited to Drupal 6/7 => 8 upgrades? Then having the menu item in migrate_drupal_ui is not good and its description is not good. On the other hand, if the description and menu item placement is good, then which modules would put other migration options on the new overview page?
Comment #76
heddnDiscussed in the weekly migrate maintainers meeting. We decided to remove the landing page at /upgrade and move /upgrade/initialize into its place. /upgrade will launch you into the upgrade process directly.
Logic: There is no need to make /upgrade extensible; it is for upgrades only. If migrate needs a landing page, it isn't going to use /migrate or something of that ilk.
Moving back to NW, but this should come back to review pretty quick after those changes.
Comment #77
gábor hojtsyYay that sounds great.
Comment #78
quietone commentedComment #79
heddnUpdated the IS a little to document the logic on where the links are located. This is now ready as all feedback is now addressed.
Comment #80
ifrikThanks,
for the patch and for updating the issue description.
I just checked whether the hook_help text needed to be updated, but the text is still correct as it is.
Comment #81
gábor hojtsyTested this with the intention to commit. The /upgrade page and its link works well, placed well. The out of the line URL seems a bit odd, and we can change it since its still an alpha experimental module. So if there is no reason to keep it like that anymore, we can change it. If we want to keep it to be similar to other basic Drupal paths, that is fine by me as well.
What strikes me odd is that the status report path just redirects to a filtered version of the logs page, so its not really its own page. When you click the URL it ends up at a different URL / breadcrumb, etc. Do we have anything like that in Drupal core and/or expect users to not be puzzled by this? I can see how practical that is to implement, but it looks odd as a user.
Comment #82
quietone commentedGábor Hojtsy, there is an issue about making a migration status report page, #2853708: Make a status report page for Migrate UI with links to incremental migrations/rollbacks/etc.. Maybe that could be used to address ending up at a different URL / breadcrumb. Perhaps a landing page, which has a link to the filtered report? Just a quick thought.
Comment #84
heddnRandom testbot failure.
Comment #86
himanshu-dixit commentedRandom Test Failure. Setting back to RTBC
Comment #88
quietone commentedPassing again, back to RTBC
Comment #91
gábor hojtsyThanks all, looks good now, committed :)
Comment #92
gábor hojtsyCorrect final branch and adding string change tag.
Comment #93
ifrikThanks a lot everybody!
Comment #95
maxocub commented