39 linhas
1.1 KiB
JavaScript
Ficheiro executável
39 linhas
1.1 KiB
JavaScript
Ficheiro executável
#!/usr/bin/env node
|
|
'use strict';
|
|
|
|
// See https://git.coolaj86.com/coolaj86/acme-challenge-test.js
|
|
var tester = require('acme-challenge-test');
|
|
require('dotenv').config();
|
|
|
|
// Usage: node ./test.js example.com xxxxxxxxx
|
|
var zone = process.argv[2] || process.env.ZONE;
|
|
var config = {
|
|
serviceAccountPath:
|
|
process.argv[3] || process.env.GOOGLE_APPLICATION_CREDENTIALS,
|
|
token: process.argv[4] || process.env.TOKEN
|
|
};
|
|
var challenger = require('./index.js').create(config);
|
|
|
|
// Google has its own special authentication
|
|
var sa = require(config.serviceAccountPath);
|
|
require('./lib/auth.js')
|
|
.getToken(sa)
|
|
.then(function(/*jwt*/) {
|
|
//console.info('\nAuthorization: Bearer ' + jwt + '\n');
|
|
|
|
// The dry-run tests can pass on, literally, 'example.com'
|
|
// but the integration tests require that you have control over the domain
|
|
return tester
|
|
.testZone('dns-01', zone, challenger)
|
|
.then(function() {
|
|
console.info('PASS', zone);
|
|
})
|
|
.catch(function(e) {
|
|
console.error(e.message);
|
|
console.error(e.stack);
|
|
});
|
|
})
|
|
.catch(function(err) {
|
|
console.error(err.stack);
|
|
});
|