danistrebel / maven-jenkins-ci-demo

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Continuous Integration for Apigee Proxies using Maven

Read the docs here

CI for Apigee Proxies

The Objective of this project is to provide a containerised Jenkins image, prepackaged with required plugins and Apigee Jobs. This should not be used for a production setup, instead please refer to the Jenkins Documentation.

This is not an officially supported Google product.

Components

Sample Apigee Proxy - Currency API

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 are demonstrated:

[pomxmlsnippet](docs-src/images/pomxml sample snippet.png)

See maven phases document to understand pom structure.

Dockerfile

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.

About

License:Apache License 2.0


Languages

Language:JavaScript 66.9%Language:Shell 14.3%Language:Dockerfile 9.6%Language:Gherkin 9.2%