"use strict";

if (!process.env.HEROKU_API_KEY || !process.env.APPS) {
  console.error("Please provide HEROKU_API_KEY and APPS.");
  process.exit(1);
}

var util = require("util");
var metricsd = require("metricsd"),
    metrics = metricsd({
      host: process.env.METRICSD_HOST,
      port: process.env.METRICSD_PORT,
      prefix: process.env.METRICSD_PREFIX
    }),
    request = require("request");

var DEBUG = process.env.DEBUG;
var HEROKU_API_KEY = process.env.HEROKU_API_KEY;

// TODO extract this into lib/
var processLogs = function(app) {
  request.get({
    url: util.format("https://api.heroku.com/apps/%s/logs?logplex=true&tail=1", app),
    auth: {
      user: "******",
      pass: HEROKU_API_KEY
    }
  }, function(err, rsp, body) {
    if (err) {
      console.error(err);
      return;
Beispiel #2
0
"use strict";

var assert = require("assert"),
    crypto = require("crypto"),
    url = require("url"),
    util = require("util");

var metricsd = require("metricsd"),
    request = require("request");

var metrics = metricsd({
  log: !process.env.DISABLE_METRICS
});

var AWS_ACCESS_KEY_ID,
    AWS_SECRET_ACCESS_KEY,
    S3_BUCKET,
    S3_URL,
    CACHE_EVERYTHING;

module.exports = function(options) {
  AWS_ACCESS_KEY_ID = options.AWS_ACCESS_KEY_ID || process.env.AWS_ACCESS_KEY_ID;
  AWS_SECRET_ACCESS_KEY= options.AWS_SECRET_ACCESS_KEY || process.env.AWS_SECRET_ACCESS_KEY;
  S3_BUCKET = options.S3_BUCKET || process.env.S3_BUCKET;
  S3_URL = options.S3_URL || process.env.S3_URL || "http://s3.amazonaws.com";
  CACHE_EVERYTHING = options.CACHE_EVERYTHING === undefined ? !!process.env.CACHE_EVERYTHING : options.CACHE_EVERYTHING;

  return {
    isCacheable: isCacheable,
    fetchAndStore: fetchAndStore,
    populateHeaders: populateHeaders,
Beispiel #3
0
    metricsd = require("metricsd"),
    request = require("request"),
    retry = require("retry"),
    SphericalMercator = require("sphericalmercator"),
    tilelive = require("tilelive"),
    tileliveMapnik = require("tilelive-mapnik");

tileliveMapnik.registerProtocols(tilelive);

var q = require("../lib/queue"),
    tbd = require("../lib");

http.globalAgent.maxSockets = 200;

var metrics = metricsd({
  log: !!process.env.ENABLE_METRICS
});

var ACCESS_KEY_ID = env.require("AWS_ACCESS_KEY_ID"),
    SECRET_ACCESS_KEY = env.require("AWS_SECRET_ACCESS_KEY"),
    S3_BUCKET = env.require("S3_BUCKET"),
    PATH_PREFIX = process.env.PATH_PREFIX || "",
    DEBUG = !!process.env.DEBUG;

// add a leading slash if necessary
if (PATH_PREFIX && PATH_PREFIX.indexOf("/") !== 0) {
  PATH_PREFIX = "/" + PATH_PREFIX;
}


tbd.getSources({