Eco Pipeline is a component of the Eco tool. Eco Pipeline provides application teams with a CI/CD orchestration platform to integrate automated delivery steps with manual steps such as decision-gate approvals.
The Eco tool is an easy-to-use, self-service automation process to generate a new microService based on defined seeds/templates. Users can use the Eco tool from beginning to end of the microservice deployment lifecycle beginning with scaffolding the mS project and deploying it on Kubernetes through the Jenkins pipeline.
- Linux
- Maven 3.x.x
- Java 8
- MariaDB
- AAF (here)
- CatalogAPI
- Jenkins Job Base
- Email Host
- Kubernetes Namespace
- Install and configure Maven and Java. Many robust installation guides exist for both products and there is not a need for an additional guide here.
- Clone the Eco Pipeline repository.
- Install and configure MariaDB. Create the database schema by running pipelineschema.sql.
- Follow the installation and deployment instructions for AAF (here) and CatalogAPI. Eco pipeline is dependent on both. Be sure to create a namespace in AAF.
- Navigate to the project in a terminal and run
mvn install
using the settings.xml file provided with the project.
- Configure Eco Pipeline by filling out the configuration files src/main/resources/system.properties, src/main/resources/application.properties, src/main/resources/cadi.properties, and etc/cadi.properties. Fields are preset with default values, localhost addresses, or the dummy text "replaceme".
- Generate a new keyfile and use it to replace the dummy file in etc/aafkeystore.
- Create a run configuration with com.att.cicdpipeline.deploymentpipeline.Application as the main class
- Add arguments
-Dorg.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASH=true
-Dorg.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true
- Launch with the run configuration.
- The first time Eco Pipeline is run after creating the database schema, you must create a Camunda account. Use a browser to access http://hostofecopipeline:8888 (e.g. If running locally, navigate to http://localhost:8888). You will be redirected to an account creation page. The username MUST be demo and the password MUST be password. If you wish to use another user/password combination, you must edit the source code. You may give any values for the name and email fields. Confirm the account by signing in after submitting. This process does not need to be repeated unless the database is reset. Eco Pipeline is now ready to be used.
More details can be found in the wiki for this project (here)