diff --git a/README.md b/README.md index 2397704..0bdca87 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,10 @@ the npmts.json is the main config file. You can use it to customize the behaviou ```json { "mode":"default", - "codecov":true, + "codecov":{ + "publish":true, + "token":"sometoken" + }, "ts":{ "./customdir/*.ts":"./" }, diff --git a/dist/npmts.options.js b/dist/npmts.options.js index 070fb89..f083fe9 100644 --- a/dist/npmts.options.js +++ b/dist/npmts.options.js @@ -41,9 +41,10 @@ exports.run = function (configArg) { : plugins.beautylog.info("NOT A RELEASE build!"); exports.isRelease() && exports.doPublish() ? plugins.beautylog.info("All right: This is the first subBuild, so this one publishes COVERAGE + DOCS when tests succeed!") : plugins.beautylog.info("We are not publishing anything!"); - // handle coveralls - config.codecov ? void (0) : config.codecov = true; - exports.isCi() ? void (0) : config.codecov = false; + // handle codecov + config.codecov ? void (0) : config.codecov = {}; + config.codecov.publish ? void (0) : config.codecov.publish = false; + exports.isCi() && (process.env.TRAVIS || config.codecov.token) ? void (0) : config.codecov = false; config.coverageTreshold ? void (0) : config.coverageTreshold = 70; // handle docs config.docs ? void (0) : config.docs = {}; diff --git a/dist/npmts.publish.js b/dist/npmts.publish.js index 59c2714..fa1d5be 100644 --- a/dist/npmts.publish.js +++ b/dist/npmts.publish.js @@ -1,13 +1,24 @@ "use strict"; require("typings-global"); var plugins = require("./npmts.plugins"); -var NpmtsTests = require("./npmts.tests"); +var paths = require("./npmts.paths"); var NpmtsJsdoc = require("./npmts.jsdoc"); +exports.publishCoverage = function (configArg) { + var done = plugins.Q.defer(); + plugins.beautylog.log("now uploading coverage data to codecov.io"); + var stream = plugins.gulp.src([plugins.path.join(paths.cwd, "./coverage/lcov.info")]) + .pipe(plugins.g.codecov()) + .pipe(plugins.g.gFunction(function () { + plugins.beautylog.ok("Coverage data has been uploaded to codecov.io!"); + done.resolve(configArg); + }, "atEnd")); + return done.promise; +}; exports.run = function (configArg) { var done = plugins.Q.defer(); var config = configArg; var promiseArray = []; - config.codecov && config.doPublish ? promiseArray.push(NpmtsTests.publishCoverage(configArg)) : void (0); + config.codecov.publish ? promiseArray.push(exports.publishCoverage(configArg)) : void (0); config.docs.publish ? promiseArray.push(NpmtsJsdoc.publishDocs(configArg)) : void (0); promiseArray.length === 0 ? plugins.beautylog.info("Did not publish anything!") : void (0); plugins.Q.all(promiseArray).then(done.resolve); diff --git a/dist/npmts.tests.js b/dist/npmts.tests.js index 32b8fce..5433377 100644 --- a/dist/npmts.tests.js +++ b/dist/npmts.tests.js @@ -3,17 +3,6 @@ require("typings-global"); var plugins = require("./npmts.plugins"); var paths = require("./npmts.paths"); var npmts_promisechain_1 = require("./npmts.promisechain"); -exports.publishCoverage = function (configArg) { - var done = plugins.Q.defer(); - plugins.beautylog.log("now uploading coverage data to codecov.io"); - var stream = plugins.gulp.src([plugins.path.join(paths.cwd, "./coverage/lcov.info")]) - .pipe(plugins.g.codecov()) - .pipe(plugins.g.gFunction(function () { - plugins.beautylog.ok("Coverage data has been uploaded to codecov.io!"); - done.resolve(configArg); - }, "atEnd")); - return done.promise; -}; /** * * @returns {*} diff --git a/test/assets/npmts.json b/test/assets/npmts.json index 97cbe73..fc3a41b 100644 --- a/test/assets/npmts.json +++ b/test/assets/npmts.json @@ -12,7 +12,6 @@ "./subts2/typings.json", "./customdir/typings.json" ], - "codecov":true, "docs": { "publish":true }, diff --git a/ts/npmts.options.ts b/ts/npmts.options.ts index db75305..208ca5e 100644 --- a/ts/npmts.options.ts +++ b/ts/npmts.options.ts @@ -49,9 +49,11 @@ export var run = function(configArg){ isRelease() && doPublish() ? plugins.beautylog.info("All right: This is the first subBuild, so this one publishes COVERAGE + DOCS when tests succeed!") : plugins.beautylog.info("We are not publishing anything!"); - // handle coveralls - config.codecov ? void(0) : config.codecov = true; - isCi() ? void(0) : config.codecov = false; + // handle codecov + config.codecov ? void(0) : config.codecov = {}; + config.codecov.publish ? void(0) : config.codecov.publish = false; + isCi() && (process.env.TRAVIS || config.codecov.token) ? void(0) : config.codecov = false; + config.coverageTreshold ? void(0) : config.coverageTreshold = 70; diff --git a/ts/npmts.publish.ts b/ts/npmts.publish.ts index bc0f6fc..20e1b54 100644 --- a/ts/npmts.publish.ts +++ b/ts/npmts.publish.ts @@ -1,15 +1,25 @@ import "typings-global"; import plugins = require("./npmts.plugins"); import paths = require("./npmts.paths"); -import NpmtsTests = require("./npmts.tests"); import NpmtsJsdoc = require("./npmts.jsdoc"); +export let publishCoverage = function(configArg){ + let done = plugins.Q.defer(); + plugins.beautylog.log("now uploading coverage data to codecov.io"); + var stream = plugins.gulp.src([plugins.path.join(paths.cwd,"./coverage/lcov.info")]) + .pipe(plugins.g.codecov()) + .pipe(plugins.g.gFunction(function(){ + plugins.beautylog.ok("Coverage data has been uploaded to codecov.io!"); + done.resolve(configArg); + },"atEnd")); + return done.promise; +}; export let run = function(configArg){ let done = plugins.Q.defer(); let config = configArg; let promiseArray = []; - config.codecov && config.doPublish ? promiseArray.push(NpmtsTests.publishCoverage(configArg)) : void(0); + config.codecov.publish ? promiseArray.push(publishCoverage(configArg)) : void(0); config.docs.publish ? promiseArray.push(NpmtsJsdoc.publishDocs(configArg)) : void(0); promiseArray.length === 0 ? plugins.beautylog.info("Did not publish anything!") : void(0); diff --git a/ts/npmts.tests.ts b/ts/npmts.tests.ts index 779250f..d2ee360 100644 --- a/ts/npmts.tests.ts +++ b/ts/npmts.tests.ts @@ -3,18 +3,6 @@ import plugins = require("./npmts.plugins"); import paths = require("./npmts.paths"); import {npmtsOra} from "./npmts.promisechain"; -export let publishCoverage = function(configArg){ - let done = plugins.Q.defer(); - plugins.beautylog.log("now uploading coverage data to codecov.io"); - var stream = plugins.gulp.src([plugins.path.join(paths.cwd,"./coverage/lcov.info")]) - .pipe(plugins.g.codecov()) - .pipe(plugins.g.gFunction(function(){ - plugins.beautylog.ok("Coverage data has been uploaded to codecov.io!"); - done.resolve(configArg); - },"atEnd")); - return done.promise; -}; - /** * * @returns {*}