Skip to content

Instantly share code, notes, and snippets.

@mesmacosta
Last active September 26, 2019 18:53
Show Gist options
  • Select an option

  • Save mesmacosta/6afb23c4bbc20cd35c4f7c35b7e2e236 to your computer and use it in GitHub Desktop.

Select an option

Save mesmacosta/6afb23c4bbc20cd35c4f7c35b7e2e236 to your computer and use it in GitHub Desktop.
{
"name": "sample-pubsub",
"version": "0.0.1",
"dependencies": {
"@google-cloud/pubsub": "^0.18.0"
}
}
const Buffer = require('safe-buffer').Buffer;
const request = require('request');
const url = 'XXXX';
const options = {
url: url,
headers: {
'User-Agent': 'application/json; charset=UTF-8'
},
json: true
};
exports.sendNotification = (event, context) => {
try {
console.log('event:', event);
const messageAsString = Buffer.from(event.data, 'base64').toString();
console.log(messageAsString);
const messageJson = JSON.parse(messageAsString);
const parsedMessageJson = {'projectId': messageJson.projectId, 'status': messageJson.status, 'source': messageJson.source,'logUrl' : messageJson.logUrl};
console.log(parsedMessageJson);
if(parsedMessageJson.status === 'FAILURE' || parsedMessageJson.status === 'SUCCESS'){
options.body = {text: JSON.stringify(parsedMessageJson)};
request.post(options, function (err, response, body) {
console.log('error:', err);
console.log('statusCode:', response && response.statusCode);
console.log('body:', body);
});
}
} catch (err) {
console.log(err);
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment