CICD with IIB / ACE / CP4I

This post is intended to help you understand how an automated build, deployment and test pipeline can be done based on different schemas and videos.

To provide a better understanding, here is a video showing a demo in french (An english version will be done later).

This schema explains the steps to manage the CICD build and deploy parts for IIB, ACE, CP4I.

  • 1. The toolkit already contains maven.
    • You must install the ACE Maven plugin into your m2 repository and upload it also to nexus.
    • Convert your application, policy to a maven project.
    • Insert the necessary information such as ace server binary location, compile esql enabled or not.
    • Build your application, this will create a compressed file.
  • 2. Push your code to GIT.
  • 3. Go to Jenkins, create a Maven project ITEM.
    • Enter the git repository, enable the maven deploy.
    • Your settings.xml with the necessary information.
    • Run your job which will upload the binary to Nexus.
  • 4. Create a new jenkins ITEM.
    • Provide the GroupId, ArtifactID
    • Point the search binaries to nexus
    • The settings.xml should have the information about the ACE Integration server URL, credentials of the Web Admin API.
    • At the run job, select the version to deploy.
    • The job will deploy the version by passing by the web admin API of the integration server.

This schema explains the steps to manage the CICD test part for IIB, ACE, CP4I.

  • 1. To test a message to post to MQ service, create a soapui hermes jms project first and test it manually then create soapui maven project with soapui hermes jms project.
  • 1. To test a message to post to SOAP service, create a soapui project first and test it manually then create soapui maven project with soapui project.
  • 1. To test a message to post to a REST service, create a soapui project first and test it manually then create soapui maven project with soapui project OR create a postman collection first and test it manually then create Newman maven project with your postman collection.
  • 1. !!! Don’t forget to ensure that you have an assert for each reponse you will receive for your services. !!!
  • 1. I suggest to create a maven profile for each environment (for instance DEV/TEST, QA, UAT/ACCEPTENCE, PRODUCTION).
  • 2. Push your Testing project to GIT.
  • 3. Create a jenkins maven ITEM
    • Point to your GIT repository.
    • Add each profile environment available as a combo box.
  • 4. Run the test and wait the job for be in state success or failure.