mirror of
https://github.com/khairul169/github-leaderboard.git
synced 2025-04-28 15:39:31 +07:00
35 lines
676 B
TypeScript
35 lines
676 B
TypeScript
import db from "./db";
|
|
import queue from "./lib/queue";
|
|
import { users } from "./models";
|
|
|
|
const main = async () => {
|
|
const username = process.argv[2];
|
|
if (!username) {
|
|
throw new Error("Missing username");
|
|
}
|
|
|
|
const [user] = await db
|
|
.insert(users)
|
|
.values({ username, name: username })
|
|
.onConflictDoUpdate({
|
|
target: users.username,
|
|
set: { username },
|
|
})
|
|
.returning();
|
|
|
|
await queue.add(
|
|
"fetchUserProfile",
|
|
{ userId: user.id },
|
|
{ jobId: `fetchUserProfile:${user.id}` }
|
|
);
|
|
await queue.add(
|
|
"fetchUserRepos",
|
|
{ userId: user.id },
|
|
{ jobId: `fetchUserRepos:${user.id}` }
|
|
);
|
|
|
|
process.exit();
|
|
};
|
|
|
|
main();
|