AEM OpenCloud Manager is a set of Jenkins pipelines for provisioning and managing AEM OpenCloud environments.
These pipelines can be provisioned to a CI/CD system (currently only supports Jenkins) and serves as
Learn more about AEM OpenCloud Manager:
AEM OpenCloud Manager is part of AEM OpenCloud platform.
-
Either clone AEM OpenCloud Manager
git clone https://github.com/shinesolutions/aem-opencloud-manager.git
or download one of the released versions -
Install the following required tools:
Alternatively, you can use AEM Platform BuildEnv Docker container to run AEM OpenCloud Manager build targets.
-
Resolve the Python packages dependencies by running
make deps
-
Provision required plugins onto Jenkins instance:
make jenkins-init config_path=<path/to/config/dir>
, which installs the following plugins: -
Approve the following script signatures, unfortunately you currently have to approve these methods manually one by one via prompts on Jenkins log output.
method java.net.URI getHost
method java.net.URI getPath
method java.net.URI getScheme
new java.net.URI java.lang.String
staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods drop java.lang.Object[] int
staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods init java.lang.Object[]
- Set up the required AWS Permissions
- Create configuration file
- Generate and provision the pipelines onto a Jenkins instance:
make jenkins-aws config_path=<path/to/config/dir>
- Visit your Jenkins instance and you should find a new folder named
aem-opencloud-<version>
Category | Description |
---|---|
installation | Install AEM OpenCloud libraries (Packer AEM, AEM AWS Stack Builder, AEM Stack Manager Messenger, AEM Test Suite) followed by the AEM AWS Stack Builder dependency libraries. |
machine-images | Create machine images containing AEM installations and utilities. |
manage-environments | Create and delete AEM Stack Manager, AEM Consolidated, and AEM Full-Set environments. |
operational-tasks | Run AEM operational tasks such as deploying AEM packages, taking backups, flushing cache, promoting AEM Author Standby to become Primary, and many others. |
testing | Run various tests against AEM environments. |
You can run integration test for generating and provisioning Jenkins pipelines using the command make test-integration cicd_type=jenkins platform_type=aws
, which downloads the dependencies from the Internet.
If you're working on the dependencies of AEM OpenCloud Manager and would like to test them as part of pipelines generation and provisioning, you need to:
- Clone the dependency repos AEM Hello World Config at the same directory level as AEM OpenCloud Manager
- Make your code changes against those dependency repos
- Run
make test-integration-local cicd_type=jenkins platform_type=aws
for integration testing using local dependencies, which copies those local dependency repos to AEM OpenCloud Manager and use them as part of the test