Mesos
Mesos clients.
Documentation
mesos.Chronos([opts])
Initialize a new Chronos client.
Options
- host (String, default: 127.0.0.1): Chronos address
- port (String, default: 4400): Chronos HTTP port
- secure (Boolean, default: false): enable HTTPS
Usage
var mesos = require('mesos');
var chronos = mesos.Chronos({ host: '10.141.141.10' });
chronos.job.create(opts, callback)
Create job.
Options
- name (String): job name
- schedule (String): ISO-8601 recurring series time
- command (String): command to execute
- epsilon (String): run if missed within this time period (ISO-8601 duration)
- owner (String): email address of job owner
- async (Boolean, default: false): run job asynchronously
chronos.job.destroy(opts, callback)
Delete job.
Options
chronos.job.list(callback)
List jobs.
chronos.job.search(opts, callback)
Search jobs.
Options
- name (String, optional): query on name
- command (String, optional): query on command
- any (String, optional): query on any field
- limit (Number, default: 10): limit the number of results
- offset (Number, default: 0): offset results by number
chronos.job.start(opts, callback)
Manually start job.
Options
chronos.job.stats(opts, callback)
Get jobs statistics.
Options
- name (String, optional): job name
- percentile (String, optional): statistic type
If you specify the job name you'll get all the statistics for that job, otherwise if you specify a percentile you'll get that statistic for all jobs.
You must specify either a job name or a percentile.
chronos.task.update(opts, callback)
Update task.
Options
- id (String): task id
- statusCode (Integer, supports: 0, 1): task succeeded (0) or fail (1)
chronos.task.kill(opts, callback)
Kill tasks.
Options
mesos.Marathon([opts])
Initialize a new Marathon client.
Options
- host (String, default: 127.0.0.1): Marathon address
- port (String, default: 8080): Marathon HTTP port
- secure (Boolean, default: false): enable HTTPS
Usage
var mesos = require('mesos');
var marathon = mesos.Marathon({ host: '10.141.141.10' });
See Marathon REST documentation for more information.
marathon.app.create(opts, callback)
Create and start a new application.
Options
- id (String): app ID
- cpus (Number): number of CPUs for each instance
- mem (Number): amount of memory for each instance
- instances (Number): number of instances
- cmd (String, optional): command to execute
And more, see docs.
marathon.app.list([opts], callback)
List all running applications.
Options
- cmd (String, optional): filter apps by command
marathon.app.get(opts, callback)
Get application with by ID.
Options
marathon.app.versions(opts, callback)
List the versions of an application by ID.
Options
marathon.app.version(opts, callback)
List the configuration of an application by ID at a specified version.
Options
- id (String): app ID
- version (String): app version
marathon.app.update(opts, callback)
Change parameters of a running application. The new application parameters
apply only to subsequently created tasks, and currently running tasks are
not pre-emptively restarted.
Options
- id (String): app ID
- cpus (Number): number of CPUs for each instance
- mem (Number): amount of memory for each instance
- instances (Number): number of instances
- cmd (String, optional): command to execute
And more, see docs.
marathon.app.destroy(opts, callback)
Destroy an applicationb by ID.
Options
marathon.app.tasks(opts, callback)
List all running tasks for an application by ID.
Options
marathon.app.kill(opts, callback)
Kill tasks that belong to an application.
Options
- id (String): app ID
- task (String, optional): kill by task ID
- host (String, optional): restrict to tasks on specified slave (can't use with task)
- scale (Boolean, optional): scale application down by one
marathon.eventSubscription.register(opts, callback)
Register a callback URL as an event subscriber.
Options
- url (String): callback URL
marathon.eventSubscription.list(callback)
List all event subscriber callback URLs.
marathon.eventSubscription.unregister(opts, callback)
Unregister a callback URL.
Options
- url (String): callback URL
marathon.tasks(callback)
List all running tasks.
Development
-
Install Vagrant
-
Clone repository
$ git clone https://github.com/silas/node-mesos.git
-
Switch to project directory
$ cd node-mesos
-
Start VM
$ vagrant up
-
Install client dependencies
$ npm install
-
Run tests
$ npm test
License
This work is licensed under the MIT License (see the LICENSE file).