Cloud 5 - Repository Modernizer

The guys look into how the repository modernizer helps you transition to AEM as a Cloud Service with helpful overview of how it works and why.

Transcript
So, James, I’m thinking about upgrading - my pith hat - my headwear here - because it really hasn’t - come into fashion since 1814 or so. So I’m thinking about upgrading to this Mandalorian helmet.
Baby Yoda approves.
Hey, James. Hey, Darin. Good to see you. As you know, AEM as a cloud service requires - a separation of content and code. This means a single package cannot deploy - both those apps in runtime writable areas such as content, home, conf or any folder - that is not apps in the repository. Therefore, multiple packages - should be created to separate out that code and content. What other issues - might I face in a migration? Yeah, great question, Darin. I mean, if you’re using Maven, like most folks do, - right, for deploying your cloud service projects, there’s several considerations - that you should take into account.
So first of all, of course, you need to respect the split of mutable - and immutable content and you also have to make sure - that the requisite maven dependencies are established in order to create non - conflicting deterministic deployments. And as you mentioned, - all the packages must be packaged up in a deployable structure. So AEM application deployments - must be comprised of a single AEM package due to the mutable and immutable. And this package should then - in turn contain sub packages that comprise everything required by the application - to function, including the code, any OSGi configurations and any supporting baseline content. So I assume that there are some tools - that can make project migration easier. Absolutely. There’s a very cool repository modernizer tool that can help you migrate - these projects. The objective of the repository - modernizing tool is to take these older projects - and allow them to be used with AEM as a cloud service - compatible structure by creating the following deployment - structure that you see here. So it creates an apps package - for the code. It creates a config package - for the OSGi config. It creates a UI.content package - for the content package. And it also creates an all package - that embeds the four bundles and everything under there.
So what does it do? I mean, I assume it requires - a lot of kind of fiddling to make it work. Yeah, you’re right, Darin. I mean, it’s not an exact science, but but it gives you a really nice skeleton - to kind of start from. But in almost all cases, - developers will have to go in and actually tweak the finished project - to get it working. But I think it might be helpful - if we sort of review exactly what the tool does - to make that tweaking easier for you guys.
Yeah, let’s check it out. So the tool basically does four things. It creates a base project structure - and in this base project structure - will handle single and multiple projects. It will build the structure for each, including those templates, - folders, reactor poms and all of that. And it will also go through and separate, - immutable and immutable content, and it’ll copy it over to the UI apps - or the UI content as appropriate. It’ll rename the OSGi config folders and move those from UI apps to UI config. And importantly, - it’ll translate the OSGi config dot cfg.json format as per - the cloud service specifications. It will also separate out the filter paths - and separate those into the mutable and immutable based on the JCR paths - and add them to the UI apps and UI content as appropriate - and it will update the pom file. It’ll also update all the dependencies, - or it’ll at least try to update those dependencies.
Cool. So how do I install and use this tool? I assume the tools are down below. Absolutely. Yeah. Adobe recommends that we use the Adobe’s IO CLI and there’s more information - available here. This gives you the exact installation instructions - available up on this public GitHub. It can also be installed as a standalone - and in terms of using the tool. The detailed instructions can be found - here, but using it is basically as simple as updating the YAML file - with the correct parameters and execute. And you can see an example of some of - the different parameters available here. But overall, it’s a very useful tool for migrating legacy projects - to AEM as a cloud service.

Content covered in this video

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69