-
Notifications
You must be signed in to change notification settings - Fork 0
/
extract-rest-api-id.js
33 lines (29 loc) · 922 Bytes
/
extract-rest-api-id.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/usr/bin/env node
'use strict'
let stdin = process.stdin,
stdout = process.stdout,
inputChunks = []
const stage = process.argv[2]
if (typeof stage === 'undefined') {
const msg = "[ERROR] mandatory parameter 'stage' is not present"
console.error(msg)
console.error(`usage: aws apigateway get-rest-apis --output json | ${process.argv[1]} <stage>`)
console.error(` eg: aws apigateway get-rest-apis --output json | ${process.argv[1]} dev`)
throw new Error(msg)
}
const targetRestApiName = stage + '-wifactoryiot-accountmgt-swagger'
stdin.resume()
stdin.setEncoding('utf8')
stdin.on('data', function (chunk) {
inputChunks.push(chunk);
})
stdin.on('end', function () {
let inputJSON = inputChunks.join('')
let parsedData = JSON.parse(inputJSON)
parsedData.items.forEach(function (curr) {
if (curr.name === targetRestApiName) {
stdout.write(curr.id)
stdout.write('\n')
}
})
})