-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
62 lines (59 loc) · 2.01 KB
/
index.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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
const axios = require("axios");
const authorizationToken = process.env.authorizationToken;
exports.handler = (event, context, callback) => {
let headerMessage, styleType;
if (event.body.status === "success") {
headerMessage = `Deployment to ${event.body.environment} environment is successful`;
styleType = "SUCCESS";
} else {
headerMessage = `Deployment to ${event.body.environment} environment was not successful`;
styleType = "ERROR";
}
if (event.body.status === "running")
return {
statusCode: 200,
body: "Pipeline is still running"
};
return axios
.post(
"https://konfhub.jetbrains.space/api/http/chats/messages/send-message",
{
recipient: {
className: "MessageRecipient.Member",
member: "username:Srushith"
},
content: {
className: "ChatMessage.Block",
style: styleType,
outline: {
icon: { icon: "merge-request-small" },
text: "Deployment Status"
},
sections: [
{
className: "MessageSection",
header: headerMessage,
elements: [],
footer: `Job Details: ${event.body.deployable_url}`
}
]
}
},
{
headers: {
Accept: "application/json",
"Content-Type": "application/json",
Authorization: authorizationToken
}
}
)
.then((response) => {
return {
statusCode: 200,
body: "Message triggered successfully"
};
})
.catch((error) => {
console.log("Error", error);
});
};