diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2018-04-04 22:48:27 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-04-04 22:48:27 +0900 |
| commit | cf160285f82a200a6f042cf924272809280bac79 (patch) | |
| tree | 9cf0211613474ecf5868e8a2bd59469a83bc9bb3 /src/queue/processors/http/report-github-failure.ts | |
| parent | Merge pull request #1393 from akihikodaki/duplicate (diff) | |
| parent | Retry HTTP requests (diff) | |
| download | misskey-cf160285f82a200a6f042cf924272809280bac79.tar.gz misskey-cf160285f82a200a6f042cf924272809280bac79.tar.bz2 misskey-cf160285f82a200a6f042cf924272809280bac79.zip | |
Merge pull request #1394 from akihikodaki/duplicate
Retry HTTP requests
Diffstat (limited to 'src/queue/processors/http/report-github-failure.ts')
| -rw-r--r-- | src/queue/processors/http/report-github-failure.ts | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/queue/processors/http/report-github-failure.ts b/src/queue/processors/http/report-github-failure.ts new file mode 100644 index 0000000000..21683ba3c2 --- /dev/null +++ b/src/queue/processors/http/report-github-failure.ts @@ -0,0 +1,24 @@ +import * as request from 'request-promise-native'; +import User from '../../../models/user'; +const createPost = require('../../../server/api/endpoints/posts/create'); + +export default async ({ data }) => { + const asyncBot = User.findOne({ _id: data.userId }); + + // Fetch parent status + const parentStatuses = await request({ + url: `${data.parentUrl}/statuses`, + headers: { + 'User-Agent': 'misskey' + }, + json: true + }); + + 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); +}; |