1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import { sendLarkMessage } from "https://esm.town/v/tzq/sendLarkMessage";
import { lastPushedAtForRepositories } from "https://esm.town/v/tzq/lastPushedAtForRepositories";
import { getInformationOfTheGitHubReposiroty } from "https://esm.town/v/tzq/getInformationOfTheGitHubReposiroty";
export async function monitoringGitHubRepository(repository) {
return await getInformationOfTheGitHubReposiroty(repository)
.then((resp) => {
if (!lastPushedAtForRepositories[repository]) {
lastPushedAtForRepositories[repository] = "";
}
if (lastPushedAtForRepositories[repository] != resp.pushed_at) {
lastPushedAtForRepositories[repository] = resp.pushed_at;
return sendLarkMessage(`${repository} has been updated!`);
}
return "No updates";
});
}
👆 This is a val. Vals are TypeScript snippets of code, written in the browser and run on our servers. Create scheduled functions, email yourself, and persist small pieces of data — all from the browser.