mirror of
https://iceshrimp.dev/Crimekillz/jointrashposs.git
synced 2024-11-22 00:43:50 +01:00
(gas) 更新履歴が出るようにした
This commit is contained in:
parent
cee4e6b6e7
commit
01dd0ba750
@ -1,6 +1,4 @@
|
||||
// プログラムを変更したら都度「デプロイ」を行うこと
|
||||
|
||||
// スクリプト プロパティを取得
|
||||
// 変更したら「デプロイ」を行うこと
|
||||
const env = PropertiesService.getScriptProperties().getProperties();
|
||||
|
||||
// Misskey
|
||||
@ -10,7 +8,9 @@ const MI_API_TOKEN = env.MISSKEY_API_TOKEN ?? null;
|
||||
const CF_API_TOKEN = env.CF_API_TOKEN ?? null;
|
||||
const CF_ZONE_ID = env.CF_ZONE_ID ?? null;
|
||||
|
||||
// Webhook受信時のハンドラ
|
||||
// Github 前のコミットSHA
|
||||
const GH_PREVIOUS_COMMIT_SHA = env.GH_PREVIOUS_COMMIT_SHA ?? null;
|
||||
|
||||
function doPost(e) {
|
||||
const params = JSON.parse(e.postData.getDataAsString());
|
||||
|
||||
@ -26,15 +26,29 @@ function doPost(e) {
|
||||
|
||||
// デプロイされたことをMisskeyに通知する
|
||||
if (MI_API_TOKEN) {
|
||||
postToMisskey(params);
|
||||
setTimeout(() => postToMisskey(params), 5000);
|
||||
}
|
||||
|
||||
// 今回のSHAを保存
|
||||
PropertiesService.getScriptProperties().setProperty('GH_PREVIOUS_COMMIT_SHA', params.deployment.sha);
|
||||
}
|
||||
|
||||
function getChangeLog(d) {
|
||||
if (!GH_PREVIOUS_COMMIT_SHA) return null;
|
||||
|
||||
const res = JSON.parse(UrlFetchApp.fetch(`https://api.github.com/repos/misskey-dev/misskey-hub-next/compare/${GH_PREVIOUS_COMMIT_SHA}...${d.deployment.sha}`).getContentText());
|
||||
|
||||
return res.commits.map((commit) => `・${commit.commit.message.split('\n')[0]}`).reverse().join('\n');
|
||||
}
|
||||
|
||||
function postToMisskey(d) {
|
||||
var data = {
|
||||
i: MI_API_TOKEN,
|
||||
text: `$[tada 📢] **Misskey Hub が更新されました!**
|
||||
早速チェックしましょう ▶ ${d?.repository?.homepage ?? 'https://misskey-hub.net/'}`,
|
||||
早速チェックしましょう ▶ ${d?.repository?.homepage ?? 'https://misskey-hub.net/'}
|
||||
|
||||
**【今回の更新点】**
|
||||
${getChangeLog(d) ?? "取得できませんでした…"}`,
|
||||
visibility: 'public',
|
||||
cw: null,
|
||||
localOnly: false,
|
||||
|
Loading…
Reference in New Issue
Block a user