UNPKG

784 BJavaScriptView Raw
1'use strict'
2
3let cli = require('heroku-cli-util')
4
5module.exports = function (path, parts, message) {
6 let logMessage = message || 'Resolving trust chain'
7
8 let sslDoctor = process.env.SSL_DOCTOR_URL || 'https://ssl-doctor.heroku.com/'
9
10 let postData = parts.join('\n')
11
12 let postOptions = {
13 method: 'POST',
14 headers: {
15 'content-type': 'application/octet-stream',
16 'content-length': Buffer.byteLength(postData)
17 },
18 body: postData
19 }
20
21 let promise = cli.got(sslDoctor + path, postOptions).then(function (response) {
22 return response.body
23 }).catch(function (error) {
24 if (error.response && error.response.body) {
25 throw new Error(error.response.body)
26 } else {
27 throw error
28 }
29 })
30
31 return cli.action(logMessage, {}, promise)
32}