Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const Promise = require('bluebird')
- const fs = require('fs')
- const octokit = require('@octokit/rest')()
- octokit.authenticate({
- type: 'basic',
- username: 'USER',
- password: 'PASS',
- })
- function handleGithubResponse(response, filename) {
- const data = response.data
- data.filter(
- issue => !issue.pull_request
- ).forEach(
- issue => fs.appendFileSync(`${filename}`, `${issue.title}\n`)
- )
- }
- async function getIssueTitles({owner, repo, filename}) {
- let response = await octokit.issues.getForRepo({
- owner, repo, per_page: 100, state: 'all'
- })
- handleGithubResponse(response, filename)
- while (octokit.hasNextPage(response)) {
- response = await octokit.getNextPage(response)
- handleGithubResponse(response, filename)
- }
- }
- const repos = [
- {
- owner: 'facebook',
- repo: 'react',
- filename: 'react-issues.txt',
- }, {
- owner: 'vuejs',
- repo: 'vue',
- filename: 'vue-issues.txt',
- }, {
- owner: 'angular',
- repo: 'angular',
- filename: 'angular-issues.txt',
- },
- ]
- Promise.mapSeries(repos, getIssueTitles)
Add Comment
Please, Sign In to add comment