Adobe Cloud Manager RDEs: Accelerating Development

Contents

Objective

After reading this Article, You should have an understanding of:

  • What is RDE (Rapid Development Environment)?
  • Why do we need RDE?
  • Enabling RDE in Cloud Manager
  • Installation of Adobe I/O CLI, Cloud Manager & RDE Plugins 
  • Package deployment to RDE using Adobe I/O CLI
  • Rapid Development Environment reset
  • Additional RDE Plugin Commands

What is RDE (Rapid Development Environment)?

As an AEM developer, we are familiar with the DEV, QA, UAT, STAGE, and PROD environments. Now, there is a new addition of RDE as part of Adobe Cloud Manager. 

RDE stands for Rapid Development Environment. It’s a specialized environment within AEM as a cloud service that allows developers to deploy code and content quickly from their integrated development environment (IDE) to the cloud. This environment is particularly useful for faster development cycles of near-final code.

Key Features of RDE: 

  • Quick Deployment: Developers can deploy AEM artifacts like code & content packages, OSGi bundles, Apache, and Dispatcher configs swiftly. 
  • Iterative Testing: RDE enables efficient testing in a near-to-prod environment, giving developers confidence in their builds. 
  • Local Development Sync: Unlike regular Cloud Development environments, RDE allows the use of local command-line tools to sync code built locally.

Why do we need RDE?

The significance of RDE in Adobe Cloud Manager can be summarized as follows:

  • Faster Development Cycles: RDE enables quicker iterations, allowing developers to make and test changes rapidly without going through the full CI/CD pipeline.
  • Efficient Testing: It provides an environment that closely resembles production, which is crucial for thorough testing and quality assurance.
  • Increased Productivity: RDE facilitates collaboration among developers to test related features, thereby increasing overall productivity.
  • Avoids Long Deployment Processes: It helps in avoiding the lengthy deployment process typically associated with the full development pipeline.

Enabling RDE in Cloud Manager

You can follow these steps to enable RDE in Cloud Manager:

  1. Log into Cloud Manager at my.cloudmanager.adobe.com and select the appropriate organization. 
  2. Click the program to which you want to add an RDE to show its details. RDEs can be added to both sandbox programs and production programs. 
  3. From the Program Overview page, click Add Environment on the Environments card to add an environment.
  4. In the add environment dialog that appears, select Rapid Development under the select environment type heading. provide a name for the environment, and provide an optional description for the environment. Select a cloud region and click save to add the specified environment.
Add Environment
Add Environment
Add RDE
Add Rapid Development Environment

Installation of Adobe I/O CLI, Cloud Manager & RDE Plugins

#1 Prerequisite: The following should be installed locally:

#2 Adobe I/O CLI tools: Install the Adobe I/O Runtime Extensible CLI, also known as the aio CLI by running the following command:
				
					# Installation of aio cli
npm install -g @adobe/aio-cli

# Verify
aio help

# Update the plugins
npm install -g @adobe/aio-cli
				
			

#3 Adobe Cloud Manager Plugins: Install Cloud Manager plugins by using the aio cli’s plugins:install command

				
					# Installation of Cloud Manager plugins
aio plugins:install @adobe/aio-cli-plugin-cloudmanager

# Update the plugins
aio plugins:update

#Browser-based authentication starts by running this command
aio auth:login

# Logout
aio auth:logout
				
			

#4 Configure AEM (Cloud Manager) Plugins: The AEM plugins must be configured to interact with your RDE. First, using the Cloud Manager UI, copy the values of the Organization, Program, and Environment ID.

  • Organization ID: Navigate to Cloud Manager at https://experience.adobe.com and enter Ctrl +I, Copy the Current Org ID.
  • Program ID: Copy the value from Program Overview > Environments > {ProgramName}-rde > Browser URI > numbers between program/ and /environment 
  • Environment ID: Copy the value from Program Overview > Environments > {ProgramName}-rde > Browser URI > numbers after environment/
Organization ID
Organization ID
Progran and Organization ID
Program and Organization ID
				
					# Setting up the Organization ID
aio config:set cloudmanager_orgid <org-id>

#Setting up the Program ID
aio config:set cloudmanager_programid <program-id>

# Setting up the Environment ID
aio config:set cloudmanager_environmentid <env-id>
    
# Verify the current config values
aio config:list

# Switch or know which organization you are currently logged in organization
aio where

#All program attach to organization Id 
aio cloudmanager:list-programs


				
			

#5 RDE Plugins: Install RDE plugins by using the aio cli’s plugins:install commands as below:

				
					# Installation of RDE Plugins
aio plugins:install @adobe/aio-cli-plugin-aem-rde

# Login status
aio login

# RDE status
aio aem:rde:status

# RDE install commands options
aio aem:rde:install --help

#All aio commands
aio cloudmanager

#Environment List
aio cloudmanager:list-environments OR aio cloudmanager list-environments

#Program List
aio cloudmanager:list-programs OR aio cloudmanager list-programs
				
			

Package deployment using RDE Plugins

Using Adobe I/O CLI and RDE plugins, we can deploy code, content, OSGI configurations, dispatcher configurations, etc. to a rapid development environment.

Prerequisite: If you have an AEM project, use that or clone the WKND Sites project and open it in your favorite IDE to deploy the AEM artifacts onto the RDE.

				
					#Cloning WKND Sites
git clone git@github.com:adobe/aem-guides-wknd.git

#Navigate & Build WKND Project
cd aem-guides-wknd/
mvn clean package

# Installation Syntax
aio aem:rde install <artifact or code.zip>
				
			

Deploy all and dispatcher packages

				
					# Install the 'all' package
aio aem:rde:install all/target/aem-guides-wknd.all-2.1.3-SNAPSHOT.zip

# Install the 'dispatcher' zip
aio aem:rde:install dispatcher/target/aem-guides-wknd.dispatcher.cloud-2.1.3-SNAPSHOT.zip

				
			

Deploy ui.apps package

				
					# Using 'ui.apps' package
cd ui.apps
mvn clean package
aio aem:rde:install target/aem-guides-wknd.ui.apps-2.1.3-SNAPSHOT.zip

# Or by deploying the individual HTL and Dialog XML

# HTL file
aio aem:rde:install ui.apps/src/main/content/jcr_root/apps/wknd/components/helloworld/helloworld.html -t content-file -p /apps/wknd/components/helloworld/helloworld.html

# Dialog XML
aio aem:rde:install ui.apps/src/main/content/jcr_root/apps/wknd/components/helloworld/_cq_dialog/.content.xml -t content-xml -p /apps/wknd/components/helloworld/_cq_dialog/.content.xml

				
			

Deploy core bundle

				
					cd core
mvn clean package
aio aem:rde:install target/aem-guides-wknd.core-2.1.3-SNAPSHOT.jar

				
			

Deploy OSGi configuration

				
					# Deploy individual config file
aio aem:rde:install ui.config/src/main/content/jcr_root/apps/wknd/osgiconfig/config/org.apache.sling.commons.log.LogManager.factory.config~wknd.cfg.json

# Or deploy the complete config package
cd ui.config
mvn clean package
aio aem:rde:install target/aem-guides-wknd.ui.config-2.1.3-SNAPSHOT.zip

				
			

Deploy Apache or Dispatcher configuration

				
					cd dispatcher
mvn clean install
aio aem:rde:install target/aem-guides-wknd.dispatcher.cloud-2.1.3-SNAPSHOT.zip

				
			

Rapid Development Environment reset

The RDE reset function is used to restore the environment to its initial state, which is particularly useful after applying updates or changes. This ensures that developers have a consistent and stable development environment to work on AEM projects. 

We can perform RDE resets using the following two methods:

#1 Using Cloud Manager to reset your RDE

  1. Log into Cloud Manager at my.cloudmanager.adobe.com and select the appropriate organization.
  2. Click the program for which you want to reset the RDE.
  3. From the Overview page, click the Environments tab at the top of the screen.
  4. The Environments window opens and lists all environments for the program.
  5. Click the ellipsis button of the RDE that you want to reset, and then select Reset.
RDE Reset
RDE Reset

#2 Using RDE Plugin Commands

				
					# Reset RDE
aio aem rde reset
				
			

Additional RDE Plugin Commands

				
					# Interact with RapidDev Environments
aio aem:rde --help

# Delete bundles and configs from the current rde
aio aem rde delete

# Get a list of the updates done to the current rde
aio aem rde history

# Install/update bundles, configs, and content-packages
aio aem rde install

# Restart the author and publish of an RDE
aio aem rde restart

# Get a list of the bundles and configs deployed to the current rde
aio aem rde status

				
			

Conclusion

  • So in this post, we made an effort to comprehend the RDE concept in AEM development. The creation, advantages, and usage of rapid development environments were discussed, and we also learned how to deploy code in RDE using Adobe I/O CLI. In the next session, I will explain Program Creation, and Environment Creation in Cloud Manager. I hope you enjoyed this post. If you find it useful, leave us a comment. I would love to hear your thoughts and suggestions to make it better. Also, you can connect with me on LinkedIn.

Leave a Reply

Your email address will not be published. Required fields are marked *