Nominally Patriotic Meathead

    marathon-node

    1.1.1 • Public • Published

    marathon-node CircleCI

    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 - if true, 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()

    Keywords

    none

    Install

    npm i marathon-node

    DownloadsWeekly Downloads

    10

    Version

    1.1.1

    License

    ISC

    Unpacked Size

    53.5 kB

    Total Files

    27

    Last publish

    Collaborators

    • kevin_mobbs
    • stas1313
    • legendmiha
    • annekov
    • garry_ua
    • olga.virolainen
    • shkarupanick
    • jhorbulyk
    • irisk
    • vi6x
    • juhrmacher
    • illya_98