diff --git a/greenlock.js b/greenlock.js index a8f9b35..955c2a7 100644 --- a/greenlock.js +++ b/greenlock.js @@ -33,7 +33,7 @@ G.create = function(gconf) { U._validMx(gconf.maintainerEmail).catch(function() { console.error( 'invalid maintainer contact info:', - gconf.maintainer.Email + gconf.maintainerEmail ); // maybe a little harsh? process.exit(1); @@ -215,17 +215,17 @@ G.create = function(gconf) { // TODO look at the other one UserEvents.notify({ /* - // maintainer should be only on pre-publish, or maybe install, I think - maintainerEmail: greenlock._defaults._maintainerEmail, - name: greenlock._defaults._maintainerPackage, - version: greenlock._defaults._maintainerPackageVersion, - //action: params.pems._type, - domains: params.altnames, - subscriberEmail: greenlock._defaults._subscriberEmail, - // TODO enable for Greenlock Pro - //customerEmail: args.customerEmail - telemetry: greenlock._defaults.telemetry - */ + // maintainer should be only on pre-publish, or maybe install, I think + maintainerEmail: greenlock._defaults._maintainerEmail, + name: greenlock._defaults._packageAgent, + version: greenlock._defaults._maintainerPackageVersion, + //action: params.pems._type, + domains: params.altnames, + subscriberEmail: greenlock._defaults._subscriberEmail, + // TODO enable for Greenlock Pro + //customerEmail: args.customerEmail + telemetry: greenlock._defaults.telemetry + */ }); } }; @@ -311,13 +311,19 @@ G.create = function(gconf) { } var site = sites[0]; site = JSON.parse(JSON.stringify(site)); - if (!site.store) { - site.store = greenlock._defaults.store; + if (site.store && site.challenges) { + return site; } - if (!site.challenges) { - site.challenges = greenlock._defaults.challenges; - } - return site; + return greenlock.manager.defaults().then(function(mconf) { + if (!site.store) { + site.store = mconf.store || greenlock._defaults.store; + } + if (!site.challenges) { + site.challenges = + mconf.challenges || greenlock._defaults.challenges; + } + return site; + }); }); }; @@ -396,9 +402,14 @@ G.create = function(gconf) { }; greenlock._acme = function(args) { + var packageAgent = greenlock._defaults.packageAgent || ''; + // because Greenlock_Express/v3.x Greenlock/v3 is redundant + if (!/greenlock/i.test(packageAgent)) { + packageAgent = (packageAgent + ' Greenlock/' + pkg.version).trim(); + } var acme = ACME.create({ maintainerEmail: greenlock._defaults.maintainerEmail, - packageAgent: greenlock._defaults.packageAgent, + packageAgent: packageAgent, notify: greenlock._notify, debug: greenlock._defaults.debug || args.debug }); @@ -515,11 +526,6 @@ G._defaults = function(opts) { defaults.find = opts.find; } - if (!defaults._maintainerPackage) { - defaults._maintainerPackage = pkg.name; - defaults._maintainerPackageVersion = pkg.version; - } - if (!defaults.directoryUrl) { if (defaults.staging) { defaults.directoryUrl = diff --git a/package-lock.json b/package-lock.json index 84e4977..68e3073 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "@root/greenlock", - "version": "3.0.7", + "version": "3.0.8", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 1a85a55..cfdbd41 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@root/greenlock", - "version": "3.0.7", + "version": "3.0.8", "description": "The easiest Let's Encrypt client for Node.js and Browsers", "homepage": "https://rootprojects.org/greenlock/", "main": "greenlock.js",