fh-target-openshift3 v0.17.9
fh-target-openshift3
A module to provide pluggable express middleware to FeedHenry APIs for targeting OpeShift V3.
Note: Current existing targets are part of the fh-supercore module. This one has been designed as a standalone module instead.
Using https://github.com/fheng/grunt-fh-build for building.
Usage
var openshift3Target = require('fh-target-openshift3')({logger : logger.getLogger() }); // logger from supercore passed in
// suggested way to build params
var params = _.extend(req.body, req.params);
params.appProps = req.appProps; // app props from millicore call
params.title = 'someuniqueapplicationname'; // all lower case, no spaces
params.mbaasConf = req.mbaasConf; // the mBaaS target config object right from Mongo
params.millicore = { url : '', ...}; // millicore config object as per supercore
// then, interact with target
openshift3Target.host(params, function(err, hostRes){
console.log(hostRes.url);
});
openshift3Target.deploy(params, function(err, cacheKeyPollingResult){
});
Templates
Templates are STI-based build definitions which provide a series of objects to OpenShift for creating an application. At present, only one build template will exist, providing support for
- A Node.js app
- A MongoDB Database
- A Redis instance
This template can be expanded in future to provide more production-suitable templates which include Mongo replicas, clusters Redis.
MBaaS Template
If using the MBaaS Template, the images to use for each service can be configured by setting the templateImages param:
params.templateImages = {
mongodb: 'myregistry.example.com/mongodb_image:latest',
redis: 'myregistry.example.com/redis_image:latest',
fhstatsd: 'myregistry.example.com/fh-statsd_image:latest',
fhmetrics: 'myregistry.example.com/fh-metrics_image:latest',
fhmessaging: 'myregistry.example.com/fh-messaging_image:latest',
fhmbaas: 'myregistry.example.com/fh-mbaas_image:latest'
};
Usage
This module is not published yet so 'npm link' is used.
Pull down the module and npm install
. Then npm link
.
After that, move to the super core folder and npm link fh-target-openshift3
, and all should be good to go.
Integration Tests
Integration tests are written in Mocha and rely on environment variables. To run:
export OS_HOST="someOpenShiftHost.com:8443"
export OS_NAMESPACE="someProjectName"
export OS_TOKEN="1a2bYourBearerTokenHere"
export OS_GIT_URL="some git url e.g. git://github.com/cianclarke/helloworld-cloud.git"
export OS_ROUTE_HOSTNAME="some hostname e.g.inttest.openshift-devops.feedhenry.net"
# then run te tests
grunt fh:integrate
more...
coming soon...
TODO: Add copyright, license, and so forth.
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago