marathon-node
v1.1.1
Published
Node.js client library for Mesos Marathon's REST API
Downloads
35
Readme
marathon-node
Node.js client library for Mesos Marathon's REST API powered by Bluebird promises.
const opts = {};
const marathon = require('marathon-node')(MARATHON_URL, opts);
marathon.app
.getList()
.then(console.log)
.catch(console.error);
Options
Options passed to request lib. Overview of all the options is here.
HTTP Authentication example:
const opts = {
auth: {
user: 'foo',
pass: 'baz'
}
};
Other options:
logTime
- iftrue
, logs requests time to console
Marathon Event Bus
To manage event stream EventSource client is used.
Example:
const marathon = require('marathon-node')(MARATHON_URL, opts);
const eventSourceOpts = {
eventType: ['status_update_event'], // (string|array) Marathon will stream only this kind of events. (optional, Marathon >= 1.3.7)
proxy: 'http://your.proxy.com' // (string) Proxy host (optional)
};
const es = marathon.events.createEventSource(eventSourceOpts);
es.addEventListener('status_update_event', event => console.log('status_update_event'));
es.on('open', () => console.log('opened'));
es.on('error', err => console.error(err));
You can find more info in the official documentation Marathon Event Bus docs.
Methods
Apps (marathon.apps.methodName)
getList(parameters)
getOne(id)
getVersions(id)
getVersion(id, version)
getTasks(id)
create(body)
update(id, body, force)
restart(id, force)
destroy(id)
killTasks(id, parameters)
killTask(id, task, scale)
Groups (marathon.groups.methodName)
getList()
create(body)
getOne(id)
update(id, body, force)
destroy(id, force)
Tasks (marathon.tasks.methodName)
getList()
kill(body, scale, wipe)
Deployments (marathon.deployments.methodName)
getList()
destroy(id)
Event Stream (marathon.events.methodName)
attach()
(deprecated)createEventSource(opts)
Event Subscriptions (marathon.subscriptions.methodName)
getList()
create(callbackUrl)
Queue (marathon.queue.methodName)
get()
resetDelay(appId)
Server Info (marathon.info.methodName)
get()
Leader (marathon.leader.methodName)
get()
abdicate()
Miscellaneous (marathon.misc.methodName)
ping()