forked from root/acme.js
remove v2 before awkward merging of v3
This commit is contained in:
parent
9139d89143
commit
d7b3e2e1db
131
examples/cli.js
131
examples/cli.js
|
@ -1,131 +0,0 @@
|
|||
// Copyright 2018 AJ ONeal. All rights reserved
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
'use strict';
|
||||
|
||||
var RSA = require('rsa-compat').RSA;
|
||||
var readline = require('readline');
|
||||
var rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
});
|
||||
|
||||
require('./genkeypair.js');
|
||||
|
||||
function getWeb() {
|
||||
rl.question(
|
||||
'What web address(es) would you like to get certificates for? (ex: example.com,*.example.com) ',
|
||||
function(web) {
|
||||
web = (web || '').trim().split(/,/g);
|
||||
if (!web[0]) {
|
||||
getWeb();
|
||||
return;
|
||||
}
|
||||
|
||||
if (
|
||||
web.some(function(w) {
|
||||
return '*' === w[0];
|
||||
})
|
||||
) {
|
||||
console.log('Wildcard domains must use dns-01');
|
||||
getEmail(web, 'dns-01');
|
||||
} else {
|
||||
getChallengeType(web);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function getChallengeType(web) {
|
||||
rl.question(
|
||||
'What challenge will you be testing today? http-01 or dns-01? [http-01] ',
|
||||
function(chType) {
|
||||
chType = (chType || '').trim();
|
||||
if (!chType) {
|
||||
chType = 'http-01';
|
||||
}
|
||||
|
||||
getEmail(web, chType);
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
function getEmail(web, chType) {
|
||||
rl.question('What email should we use? (optional) ', function(email) {
|
||||
email = (email || '').trim();
|
||||
if (!email) {
|
||||
email = null;
|
||||
}
|
||||
|
||||
getApiStyle(web, chType, email);
|
||||
});
|
||||
}
|
||||
|
||||
function getApiStyle(web, chType, email) {
|
||||
var defaultStyle = 'compat';
|
||||
rl.question(
|
||||
'What API style would you like to test? v1-compat or promise? [v1-compat] ',
|
||||
function(apiStyle) {
|
||||
apiStyle = (apiStyle || '').trim();
|
||||
if (!apiStyle) {
|
||||
apiStyle = 'v1-compat';
|
||||
}
|
||||
|
||||
rl.close();
|
||||
|
||||
var RSA = require('rsa-compat').RSA;
|
||||
var accountKeypair = RSA.import({
|
||||
privateKeyPem: require('fs').readFileSync(
|
||||
__dirname + '/../tests/account.privkey.pem'
|
||||
)
|
||||
});
|
||||
var domainKeypair = RSA.import({
|
||||
privateKeyPem: require('fs').readFileSync(
|
||||
__dirname + '/../tests/privkey.pem'
|
||||
)
|
||||
});
|
||||
var directoryUrl =
|
||||
'https://acme-staging-v02.api.letsencrypt.org/directory';
|
||||
|
||||
if ('promise' === apiStyle) {
|
||||
require('../tests/promise.js').run(
|
||||
directoryUrl,
|
||||
RSA,
|
||||
web,
|
||||
chType,
|
||||
email,
|
||||
accountKeypair,
|
||||
domainKeypair
|
||||
);
|
||||
} else if ('cb' === apiStyle) {
|
||||
require('../tests/cb.js').run(
|
||||
directoryUrl,
|
||||
RSA,
|
||||
web,
|
||||
chType,
|
||||
email,
|
||||
accountKeypair,
|
||||
domainKeypair
|
||||
);
|
||||
} else {
|
||||
if ('v1-compat' !== apiStyle) {
|
||||
console.warn(
|
||||
"Didn't understand '" + apiStyle + "', using 'v1-compat' instead..."
|
||||
);
|
||||
}
|
||||
require('../tests/compat.js').run(
|
||||
directoryUrl,
|
||||
RSA,
|
||||
web,
|
||||
chType,
|
||||
email,
|
||||
accountKeypair,
|
||||
domainKeypair
|
||||
);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
getWeb();
|
Loading…
Reference in New Issue