Evolution of the AEMaaCS Build Pipeline

Are you ready to discover the exciting evolution of the AEMaaCS Build Pipeline? Join me, as I take you on a journey through the changes and advancements we've made since our initial launch.

While we've always prioritized maintaining backward compatibility, we've also been hard at work ensuring scalability, resiliency, and efficiency. In this talk, I'll reveal the challenges we faced, the recent and upcoming changes we've implemented, and the positive impact they've had on the overall build experience.

But that's not all - I'll also be providing guidance on how to tackle deployment issues and optimize deployment performance, empowering you to take control over your application's build experience in AEMaaCS.

You mention Kubernetes jobs and Docker registries - is Docker actually used, even as image format, of is it actually OCI?

Dominik Suess

We are using dockerfiles to define our images.

Robert Munteanu

Well, Kubernetes did deprecate and remove the Docker shim, so it's not used at run time. To my knowledge, most container registries now support the OCI format as well.

When will the build&deploy time match the Edge Delivery Services deployment time?

Robert Munteanu

The CloudManager full stack pipeline is a mechanism for deploying code changes. EDS is a mechanism for deploying content changes. By design, they are not comparable :-)

Dominik Suess

There is no deployment as such by design in edge delivery services- so there is nothing this could be compared against. Edge delivery services could rather be compared to the frontend pipeline as changes only affect what’s processed on the client.

-achim

How much time did we gain? At avg/max?

Robert Munteanu

It depends. We saw the largest gains for projects which already had long buildImage times, but we don't have any hard data to announce right now.

Jörg Hoh

The obvious question: do we have change anything to benefit from these improvements?

Robert Munteanu

No, nothing to change on the customer side.

Dominik Suess

Rollout will happen over the course of the next weeks and months. Due to business critical times before xmas we will hold back on rolling out environments for November & December

Are you also considering using other build tools like gradle ?

Robert Munteanu

That is something which is out of scope for our team. We can't speak for what CloudManager is considering.

Henry Kuijpers

Will you soon support JDK 17?

Simon

Want to know as well. ;)

wolf

Here as well.

Konrad Windszus

JDK21 maybe?

Rogier

+1

JeffreyV

+1

Robert Munteanu

Yes, but since you did not define "soon", we will leave this as an implementation detail ;-) Jokes aside, what are the gains you expect from Java 17? Not being sarcastic, just trying to generate a mental model from myself.

Georg Henzler

Developer just expect to use latest JDKs... there are some nice language additions that are probably not mission-critical, it's more about AEM being perceived as an "up-to-date" platform for people that create code for it. I'm also talking about the ones that start coding/learn AEM next year, I want them to be able to use JDK 21 ideally.

wolf

Managers, especially service operations and IRM ones, including those that developers are working for are somewhat less impressed about JRE 11 being out of support. And Adobe “we have a special deal with Oracle to still offer it” is seen as a fig leaf at best. As for concrete features, 17 is not that big on them, but memory management and threading changes in 21 are a significant improvement.

wolf

Inspecting logs requires use of AIO CLI that is officially not supporting any non-EOL version of Node - when will it be brought up to speed?

Robert Munteanu

Our team does not manage the AIO CLI so we can't make any statements about that, sorry.

Tomasz S

Are you looking to expose more debugging info through cm in order to help customers understand quicker whats wrong? Often you can see the problematic logs only through support which can take few days to respond...

Robert Munteanu

Yes! It would be great if you could give us some examples. There is always a balancing act when exposing information through the logs so concrete actions would be very helpful.

Peter Puzanovs

In terms of using Helm, if you were doing it again from scratch, what would you have done differently?

Dominik Suess

Design for optimized resource consumption & scalability and avoid feature specific helm changes as this makes the templates harder readable and a bit more challenging to detect breaking changes. And we would start with helm3 from the start which would certainly have led to a different template design