The objective of this project is to implement a containarised framework that can be used to demonstrate best practices around continuous integration for Apigee projects. Done some changes here again to check again and again says Vinayak.
This is not an officially supported Google product.
Project contains a sample proxy for a currency API that retrieves exchange rates for a base currency using fixer.io API as the target.
See Currency API OpenAPI Specification for more information on northbound api design.
The following best practices demonstrated:
-
Error handling - Community Article
-
Deployment suffix for team deployment - Community Article
-
Commit data in proxy description. See pom.
-
Unit testing - Community Article.
-
Integration testing with BDD and apickli - see feature file.
See maven phases document to understand pom structure.
Project contains a Dockerfile that can be used to create a Jenkins image ready to start deploying currency api.
Docker implementation performs the following operations:
-
Jenkins plugin installation - check out the list of plugins installed
-
Setup build jobs - see jobs folder
-
Configure maven settings
-
Configure ssh for github authentication
-
Install node.js and npm
Read the Jenkins build pipeline to understand how pipeline is configured for this demonstration.
Read the setup instructions for step-by-step instructions on how to setup the whole CI process using the sample proxy and Dockerfile.