oveits / ProvisioningEngine

Ruby on Rails based ProvisioningEngine Frontend for provisioning of legacy systems via Apache Camel Backend (SOAP/XML+SPML+File import)
3 stars 6 forks source link

master: {Build Status: master branch}[https://travis-ci.org/oveits/ProvisioningEngine]

development branch: {Build Status: development branch}[https://travis-ci.org/oveits/ProvisioningEngine]

== README This README documents describes the purpose of the software and describes the steps are necessary to get the Provisioning Portal up and running.

=== Purpose This ProvisioningEngine / ProvisioningPortal is a Proof of Concept that shows how to manage target systems (in our case VoIP & UC servers) and help administrators to provision Customers, Sites and Users on the target systems.

Check out a running example on https://provisioningengine.herokuapp.com/, a demo that is running with simulated target systems.

For demo purposes, the SW can be run without the Apache Camel module (see below) in simulation mode. An in-built mock service will simulate the answers of the Apache Camel service. Both, synchronous (i.e. foreground mode) or asynchronous mode (i.e. background mode) are possible in simulation mode.

In real live, the ProvisioningEngine uses background jobs to perform the provisioning tasks on VoIP, Voice Mail and Unified Communications systems. The background jobs are managed from the "Provisioning Tasks" tab.

In production, an Apache Camel based connector (private; not published here) is used as connector module for to

=== Installation on Windows or Linux

=== Installation on Nitrous.IO (i.e. a cloud based development platform)

=== Start the Web server

=== Test Execution

== Running the Web Service on Heroku (optional) == You can run a copy of the server on the Heroku's PaaS cloud. In our case, Heroku is used to run the server as a demo on https://salty-peak-4964.herokuapp.com/, which is always available on Internet. Note that the web server often 'sleeps', but it will wake up automatically, when a packet is directed to it. This is, why the first access might need a minute, or so, for the service to react, but subsequent queries run at normal speed.

=== Developers Info: Commit & Production

=== NginX HTTPS Offload (optional) In the productive environment, NginX is used for following purposes:

  1. Offload of HTTPS
  2. Allow more than one web service to use the same IP address in our case, e.g. /customers is redirected to the productive web service running on TCP port 3000, while /dev/customers is redirected to a development branch of the web service running on TCP port 3001

How to set up NginX:

=== Tipps