If you already using DevOps for deployments with your Content Hub environments, then you probably already aware of the breaking change that Sitecore introduced a few months ago. You can read the full notification on the Sitecore Support page The new version of the package import/export engine become the default in both the UI and CLI from Tuesday, September 30 according to the notification. Because of the breaking changes introduced, this means existing CICD pipelines won’t work. In fact, there is a high risk of breaking your environments if you try use existing CICD pipelines without refactoring.
In this blog post, I will look into details what breaking changes were introduced and how to re-align your existing CICD pipelines to work with the new import/export engine.
So what has changed in the new Import/Export engine?
Below is a screenshot from the official Sitecore docs summarizing the change. You can also access the change log here.
There is no further details available from the docs on specifics of the breaking change. However, it is very straightforward to figure out that Sitecore fundamentally changed the package architecture in the new import/export engine.
Resources are grouped by type
Within Sitecore Content Hub Import/Export UI, you have an option to Export components using both the previous/legacy engine and the new engine. As shown below, you can notice a toggle for Enable Legacy version, which when switched on will allow you to export a package with previous/legacy engine.
Also we can note that Publish definition configurations and Email templates are now available for Import/Export with the new engine. Email templates are unchecked by default.
If you did a quick comparison between the export package from the old/legacy engine vs the new engine, it comes clear that Sitecore has updated the packaging structure to organise content by resource type rather than by export category
This change makes navigation more straightforward and ensures greater consistency throughout the package.
Summary of the changes between legacy and new export packages
Below is a graphic showing how the package structure was changed. On the left hand-side, we have the legacy/old package and on the right hand side is the new one.
Full comparison of package contents between old and new
Below is a more detailed comparison, showing how the packages differ.
Component
Legacy package sub folders
New package sub folders
Copy profiles
copy_profiles
entities
Email templates
n/a
entities
Entity definitions
entities schema option_lists
datasources entities schema
Export profiles
export_profiles
entities
Media processing
media_processing_sets
entities
Option lists
option_lists
datasources
Policies
policies
datasources entities policies schema
Portal pages
entities portal_pages
datasources entities policies schema
Publish definition configurations
n/a
entities
Rendition links
rendition_links
entities
Settings
settings
entities
State flows
state_flows
datasources entities policies schema
Taxonomies
taxonomies
datasources entities schema
Triggers
actions triggers
entities
Scripts
actions scripts
entities
Resources are grouped by type
Instead of separate folders like portal_pages, media_processing_sets, or option_lists, the new export engine places files according to their resource type.
For example:
All entities are stored in the entities/ folder.
All datasources (such as option lists) are found in datasources/ folder
Policies and schema files have their own dedicated folders.
Each resource is saved as an individual JSON file named with its unique identifier.
Related components are now separated
When a resource includes related items—such as a portal page referencing multiple components—each component is now saved in its own JSON file.
These files are no longer embedded or nested under the parent resource.
Updating your CICD pipelines
It is very straight forward to update you existing CICD pipelines once we have analysed and understood the new package architecture. You can revisit my previous blog post where I covered this topic in detail You need to simply map your previous logic to work with the new package architecture. You will also need to re-baseline your Content Hub environments within your source control so that you are using the new package architecture.
Next steps
In this blog post, I have looked at the new Content Hub Import/Export engine. I dived into how you can analyse the packages produced from the legacy/old engine and compared it with the new engine. I hope you find this valuable and the analysis provides a view of what has changed in the new package architecture.
Please let me know if you have any comments above and would like me to provide further or additional details.
Summary: Liz and Spyros gave a high level overview of the Sitecore XM Cloud Marketplace Apps, headlining it as “Extensibility Umbrella” comprising of a Public Portal and Developer Marketplace.
Session key takeaways:
Developers can now leverage the CLI, SDK on GitHub to build extensions to integrate with XM Cloud APIs.
Developers can embed features into Pages directly or creating standalone tools.
Developers can build applications that enhances functionality and streamline workflows
Spyros’s live demo of building a sample Marketplace App showcased that we can start leveraging existing the developer tooling right now to build the apps.
Session: Leading in the new era of AI
Hans Verbeeck (Technology Manager @ Microsoft)
Summary: Hans session covered the journey of AI to date, highlighting how things have changed from the early days of Scaling Laws that pretty much limited computing capacity. With computing capacity and storage readily available with cloud and data centres, Microsoft has made rapid progress with Copilots, AI platform and Agent Frameworks. He amplified the need to make a choice between Buy or Build in this new era of AI and he was leaning towards “better of Buying” or “consider Buying before Building”.
Session key takeaways
When it comes to AI, better of Buying” or “consider Buying before Building”
Think of what you can Buy first
Copilot is the UX for AI, Copilot is for Humans
Agents are for Processes
Sitecore Stream is AI-enabled capabilities with Sitecore products, that is underpinned by Brand-aware AI, Copilots & Agents and Agentic Workflows.
Sitecore Stream leverage Azure’s scalability, reliability, security, advanced analytics, AI and machine learning
Session: Lessons learned – 2 years after building our first XM Cloud platform
Derk Hudepol (Avanade CX Solution lead & Architect and Technology MVP)
Summary: In this session Derk took us through his journey with XM Cloud over the past two years at BDR Thermea. They had started small—with just one site—after building a solid core platform. From there, things really took off as they expanded to support five brands and over ten sites, adding features like eCommerce and search along the way. Derk also shared the lessons learnt and some tips and tricks working with XM cloud.
Session key takeaways
Have a solid basis for your CM Cloud solution
It is challenging to keep up with a continuously updating platform (XM Cloud)
Less is more, XM Cloud provided a lot better adoption compared to XP platform
Implement workflows from Day 1 for XM Cloud projects
Experience Edge comes with a lot of benefits, but also has challenges around rate limiting, stale content /cache issues and lack of Admin UI
Session: Building advanced RAG systems with Sitecore products. Putting AI assistants in Production
Sergey Baranov (Technology MVP)
Summary: Sergey’s session was a classic of how to get value from your data leveraging AI. In his well researched and presented session, he demonstrated how to unlock the potential of your data by transforming it into meaningful interactions with advanced Retrieval-Augmented Generation (RAG) systems.
Sergey explored how to design advanced virtual agents using RAG, connecting LLMs with Sitecore tools like CDP, Personalize, and OrderCloud to create personalized, data-driven customer interactions, while also covering optimization, cost-efficiency, and quality monitoring
Session key takeaways
Know differences between traditional Virtual Assistants and Naive RAG systems
Understand Large Language Models (LLM) limitations when building RAGs, such as limited knowledge, hallucinations, no personalisation
Naive RAG versus Advanced RAG: the former improves responses of LLM responses, the latter improves the quality of RAG
GPT-40 mini is recommended for RAGs (actually always leverage mini versions in RAGs)
Session: The Future of Design Library for Multi-Site, Multi-Channel Content
Liz Nelson (Product Lead of XM Cloud)
Eirini Kalampogia (Product Director, Sitecore)
Summary: Liz doesn’t need introduction, but Eirini this was her first presentation. During the session Liz and Eirini shared how a centralized Design Library helps manage components and design across complex multi-site, multi-channel ecosystems. It improves consistency, streamlines workflows, and boosts developer efficiency through integration with client codebases, unified templates, and usage metrics—creating a one-stop hub for scalable, high-quality digital experiences. The session had a live demo that showcased identifying “duplicate” components with new Design Library – a common pain point marketers face today.
Session key takeaways
Design system is needed so that we can have consistency across channels, have visibility of components, with faster delivery cycles (and reduced tech debt).
Design library gives marketers autonomy they much so need
Design at scale is a smarter way to manage components
Avoiding fragmentations of components (marketer vs developer), code & no-code means better together
Look out for future announcements on Design Library and capabilities available within Sitecore products. Especially leveraging AI component generation, whereby a marketer starts component creation (no-code) and developer later takes AI-generated code and improves it. And marketer plays with it iteratively
The vision being “A single platform where devs build structure, marketers bring stories to life and AI scales the creative output across audiences and channels”
Session: Sitecore Stream in Platform DXP
Vignesh Vishwanath (Product Manager, Sitecore)
Summary: This was a session by Vignesh where he provided a full overview of the Sitecore Stream module within Sitecore Platform DX. He showcased the available features today as well what is in the roadmap.
Session key takeaways
Demonstrated Language translation with Stream Translate (which adds new item version)
You can use Stream with Content Structure, Content Auditing (review and suggest improvements)
You can use Stream for Image to Alt Text
You can use Stream for Component Generation (leveraging prompts)
Session: The joys and challenges of managing thousands of websites in a single Sitecore instance
Adam Najmanowicz (Developer)
Summary: Adam need no introduction. His session theme was basically lessons learnt, tips and tricks from the joys and challenges of managing a large number of websites in a single Sitecore instance.
Session key takeaways
Don’t run in integrated mode for XM Cloud
Servers are “cattle not pets”
Go headless node from the very start of XM Cloud projects
Reusability of content and settings is super important
Session: Better XM/XP deployments with Kubernetes
Peter Procházka (Sitecore Solutions Architect @ Accenture and Technology MVP)
Summary: Pete’s session was mostly lesson learnt and his insights using Kubernetes with Sitecore XM/XP workloads. He showcased Kubernetes and how it enables cloud orchestration and self-healing among other features. This session was more valuable for anyone transitioning from IaaS or PaaS, as Pete shared useful reference architectures.
Session key takeaways
Nice recap of what Traditional vs Cloud-based services workloads look like, IaaS vs CaaS
Local developer workflows and process to follow
Docker architecture, Image registry, Docker compose and override files
Why Kubernetes (with declarative vs imperative use cases) and pros/cons for either approach
Session: Synchronizing Sitecore XM Cloud Content with Azure DevOps
Robbert Hock (Technology MVP)
Summary: This was a fast-paced 15-minute lightning talk in which Robbert Hock(who needs no introduction) shared how his team addressed a common challenge with Sitecore XM Cloud: keeping lower Sitecore XM Cloud environments synchronized with production. I will point you to read more about it on Robbert follow up blog post. Robbert actually demonstrated his solution as well as the Azure DevOps CI/CD pipelines his team had built.
Session: Sitecore’s Marketplace roadmap review & Developer program
Below is a high level summary of other sessions I managed to attend
Session: Our Conversational AI future – Predicting the new web by looking to the past
Presented by Rob Coyle (Director of Product Design, Sitecore)
Summary: Rob session was on “a speculative future of Web and CMS” where he demonstrated concepts such as: “Show recommendations based on time to go home”. He explored futuristic use cases such as Content remixes and Agent rules.
Session: Unlocking Inclusivity – Alt-Text So Good, Even Robots Can’t Resist
Presented by Anna Pokorna (Ambassador MVP)
Summary: In this session, Anna shared how they leveraged AI to automate the generation of Image alt-text and metadata for their client. Thereby enhancing accessibility, SEO, and maintaining brand tone of voice. The solution was implemented over a year ago, well before Sitecore Stream was announced, highlighting Anna’s company forward-thinking approach as the industry now moves toward similar capabilities.
Session: Full Circle – The Architect of XM Cloud builds an XM Cloud Site (as a partner for the first time)
Presented Andy Cohen (Honorary MVP)
Summary: Andy Cohen doesn’t need further introduction — the founding architect of XM Cloud, was sharing his own story and experiences as he built his first project on XM Cloud—this time from a partner perspective. It was an interesting session that was well attended.
Session: Diversity in the Age of AI – Why It Matters More Than Ever?
Presented by Daniela Militaru (Senior Sales Engineer, Sitecore)
Summary: Daniela’s session was a group discussion in the format of a fire-side chat where the audience explored the vital role that diverse perspectives play in developing ethical, innovative, and effective AI solutions. Very engaging and great to see so many contributions from the engaged audience in this important AI topic.
Session: A walk-through of XM Cloud Content
Presented by Alistair Deneys (System Architect, Sitecore). I already covered this as part of the Key Product Roadmaps announcements in part one post.
Round up from Sitecore community
Below is a summary of related blog posts from our Sitecore community, whereby Sitecore MVPs, marketers and developers alike are sharing their key takeaways as well. Please note this list has not been presented in any particular ordering.
Overall, I observed a positive sentiment during this conference. There was positive energy and buzz throughout the event, and this was echoed in various social media posts as well. I have also provided a round up from Sitecore community for your convenience – I hope you get time to read through the blog posts to corroborate my key takeaways and feedback from other attendees. SUGCON Europe is a key event in Sitecore calendar and there is already talk about next year! We are also looking forward to SUGCON ANZ later in the year and Sitecore Symposium is back again in Orlando during November 2025. In the meantime, stay tuned.
Within your Visual Studio project, create local.settings.json file at the root of the project. A sample json file is shown below. This will be used to configure all the configuration settings to allow you to run and debug the Func app locally.
The local.settings.json file stores app settings and settings used by local development tools. Settings in the local.settings.json file are used only when you’re running your project locally.
Because the local.settings.json may contain secrets, such as connection strings, you should never store it in a remote repository.
DevOps best practices
Microsoft Azure portal func app application settings
Similarly, you will need to configure all the configuration setting on your Microsoft Azure portal for your test or production Func app instances.
Clicking on Configuration menu, then Application settings tab will launch the page similar to the one shown below.
Below is a complete list of the Func app application settings
cf_account_id your Cloudflare account identifier
cf_api_base_url your Cloudflare API base URL
cf_api_token your Cloudflare API token
cf_webhook_url your Cloudflare webhook URL
ch_base_url your Content Hub instance base URL
ch_client_id your Content Hub instance client identifier
ch_client_secret your Content Hub instance client secret
ch_create_publiclinks_script_id your Content Hub action scrip identifier for creating public links
ch_get_data_script_id your Content Hub action scrip identifier for getting data
ch_password your Content Hub integration user password
ch_username your Content Hub integration user username
funcapp_api_key your custom Func app API key configured within your Content Hub integration
Next steps
In this blog post, we have explored at how to configure your Function app application settings to allow you to run and debug it in your local development environment. We also looked at configuring them on your published Func app on your Microsoft Azure portal.
Try Windows Azure and SQL Azure for free with no obligations.
You can run an Extra Small Windows Azure instance free through September 30th, 2011 using the Windows Azure platform free trial. You also get a free 1GB SQL Azure database for the first 90 days of your trial.