AEM - Content as Code | Community
Skip to main content
Level 1
March 31, 2026
Question

AEM - Content as Code

  • March 31, 2026
  • 1 reply
  • 19 views

Are there recommendations/best practices to manage content as code.

One of the team I work with mentioned this as their problem statement “Our code gets deployed through Cloud Manager but our QA cannot test anything yet nor can automated regression tests be triggered through Continuous Test Pipelines because they have to wait until content is authored.”

The human element in the process feels like a huge bottle neck in the process as it is hindering immediate feedback loop.

I am trying to understand what strategies other enterprises who use AEM have implemented in their SDLC process.

For example in a sprint, if the code and content are planned to be delivered together, cant the content creators(BA/Business) be ready with the content that go in with the fragments that get deployed as part of code 

1 reply

rk_pandian
Level 4
March 31, 2026

Hello ​@contentguy! Please see my response below:

  1. You can have limited content as code (maybe until folder level) but not everything, because that alone defeats the purpose of codebase
  2. Some companies have content authoring team who does the authoring once deployment is done
  3. If you dont have a specific authoring team but have CRX access in lower servers, you can install basic content packages for QA from your local. The same can be synced to higher servers via automation - package installation would be the easiest one.
  4. Other way is, you can ship your components with content during deployment. This can be done via _cq_template.xml or default properties for dialog values. Again it is recommended to have only limited content here. Ex: 1 out of 5 cards can be shipped via default values.
  5. For fragments - if the fragments data can be authored in a structured way and placed in a file / cloud location, then you can write a utility to read it, parse it and create fragments. This is very similar to product importers. This can be automated as well (via jobs with CRON or via workflows etc)

Hope this helps!

 

Regards,

Ramkumar