UNPKG

openhim-mediator-utils

Version:
56 lines (44 loc) 1.34 kB
'use strict' const fs = require('fs') const https = require('https') const path = require('path') const OPENHIM_CORE_SERVICE_NAME = 'localhost' const OPENHIM_MEDIATOR_API_PORT = 8080 const OPENHIM_API_PASSWORD = process.env.OPENHIM_API_PASSWORD || 'openhim-password' const OPENHIM_API_USERNAME = process.env.OPENHIM_API_USERNAME || 'root@openhim.org' const authHeader = new Buffer.from( `${OPENHIM_API_USERNAME}:${OPENHIM_API_PASSWORD}` ).toString('base64') const jsonData = JSON.parse( fs.readFileSync(path.resolve(__dirname, 'openhim-import.json')) ) const data = JSON.stringify(jsonData) const options = { protocol: 'https:', hostname: OPENHIM_CORE_SERVICE_NAME, port: OPENHIM_MEDIATOR_API_PORT, path: '/metadata', method: 'POST', headers: { 'Content-Type': 'application/json', 'Content-Length': data.length, Authorization: `Basic ${authHeader}` }, rejectUnauthorized: false } const req = https.request(options, res => { if (res.statusCode == 401) { throw new Error(`Incorrect OpenHIM API credentials`) } if (res.statusCode != 201) { throw new Error(`Failed to import OpenHIM config: ${res.statusCode}`) } console.log('Successfully Imported OpenHIM Config') }) req.on('error', error => { console.error('Failed to import OpenHIM config: ', error) }) req.write(data) req.end()