send max 4 requests to Gitea concurrently
parent
8330f93a3d
commit
463c1967b4
|
@ -19,6 +19,7 @@
|
||||||
"homepage": "https://github.com/jaedle/mirror-to-gitea#readme",
|
"homepage": "https://github.com/jaedle/mirror-to-gitea#readme",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@octokit/rest": "^16.2.0",
|
"@octokit/rest": "^16.2.0",
|
||||||
|
"p-queue": "^6.6.2",
|
||||||
"superagent": "^4.0.0"
|
"superagent": "^4.0.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
12
src/index.js
12
src/index.js
|
@ -1,5 +1,6 @@
|
||||||
const {Octokit} = require('@octokit/rest');
|
const {Octokit} = require('@octokit/rest');
|
||||||
const request = require('superagent');
|
const request = require('superagent');
|
||||||
|
const {default: PQueue} = require('p-queue');
|
||||||
|
|
||||||
|
|
||||||
async function getGithubRepositories(username, token) {
|
async function getGithubRepositories(username, token) {
|
||||||
|
@ -90,13 +91,14 @@ async function main() {
|
||||||
url: giteaUrl,
|
url: giteaUrl,
|
||||||
token: giteaToken,
|
token: giteaToken,
|
||||||
};
|
};
|
||||||
|
|
||||||
const giteaUser = await getGiteaUser(gitea);
|
const giteaUser = await getGiteaUser(gitea);
|
||||||
githubRepositories.forEach(
|
|
||||||
async repository => {
|
const queue = new PQueue({ concurrency: 4 });
|
||||||
|
await queue.addAll(githubRepositories.map(repository => {
|
||||||
|
return async () => {
|
||||||
await mirror(repository, gitea, giteaUser);
|
await mirror(repository, gitea, giteaUser);
|
||||||
}
|
};
|
||||||
);
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
main();
|
main();
|
||||||
|
|
Loading…
Reference in New Issue