1
0
mirror of synced 2025-12-31 06:02:42 -05:00
Files
docs/src/workflows/github.js
2023-12-12 14:07:59 +00:00

32 lines
824 B
JavaScript

#!/usr/bin/env node
import dotenv from 'dotenv'
import { Octokit } from '@octokit/rest'
import { retry } from '@octokit/plugin-retry'
if (!process.env.GITHUB_TOKEN) {
dotenv.config()
}
const RetryingOctokit = Octokit.plugin(retry)
// this module needs to work in development, production, and GitHub Actions
//
// GITHUB_TOKEN comes from one of the following sources:
// 1. set in the .env file (development)
// 2. set as a Heroku config var (staging and production)
// 3. an installation token granted via GitHub Actions
const apiToken = process.env.GITHUB_TOKEN
// See https://github.com/octokit/rest.js/issues/1207
export default function github() {
return new Octokit({
auth: `token ${apiToken}`,
})
}
export function retryingGithub() {
return new RetryingOctokit({
auth: `token ${apiToken}`,
})
}