summaryrefslogtreecommitdiff
path: root/src/processor/report-github-failure.ts
blob: f42071142efe55d8e40e3a44166b1198c45c00c5 (plain)
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
import * as request from 'request';
import User from '../server/api/models/user';
const createPost = require('../server/api/endpoints/posts/create');

export default ({ data }, done) => {
	const asyncBot = User.findOne({ _id: data.userId });

	// Fetch parent status
	request({
		url: `${data.parentUrl}/statuses`,
		headers: {
			'User-Agent': 'misskey'
		}
	}, async (err, res, body) => {
		if (err) {
			console.error(err);
			return;
		}
		const parentStatuses = JSON.parse(body);
		const parentState = parentStatuses[0].state;
		const stillFailed = parentState == 'failure' || parentState == 'error';
		const text = stillFailed ?
			`**⚠️BUILD STILL FAILED⚠️**: ?[${data.message}](${data.htmlUrl})` :
			`**🚨BUILD FAILED🚨**: →→→?[${data.message}](${data.htmlUrl})←←←`;

		createPost({ text }, await asyncBot);
		done();
	});
};