Skip to content

Commit

Permalink
Incorporate the spirit of changes from https://github.com/actions/con…
Browse files Browse the repository at this point in the history
  • Loading branch information
James M. Greene authored and James M. Greene committed Aug 5, 2022
1 parent 0a94d4c commit bce6391
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 3 deletions.
10 changes: 7 additions & 3 deletions src/api-client.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
const axios = require('axios')
const core = require('@actions/core')

function getApiBaseUrl() {
return process.env.GITHUB_API_URL || 'https://api.github.com'
}

async function enablePagesSite({ repositoryNwo, githubToken }) {
const pagesEndpoint = `https://api.github.com/repos/${repositoryNwo}/pages`
const pagesEndpoint = `${getApiBaseUrl()}/repos/${repositoryNwo}/pages`

try {
const response = await axios.post(
Expand Down Expand Up @@ -30,7 +34,7 @@ async function enablePagesSite({ repositoryNwo, githubToken }) {

async function getPagesSite({ repositoryNwo, githubToken }) {
try {
const pagesEndpoint = `https://api.github.com/repos/${repositoryNwo}/pages`
const pagesEndpoint = `${getApiBaseUrl()}/repos/${repositoryNwo}/pages`

const response = await axios.get(pagesEndpoint, {
headers: {
Expand Down Expand Up @@ -84,4 +88,4 @@ async function findOrCreatePagesSite({ repositoryNwo, githubToken, enablement =
return pageObject
}

module.exports = { findOrCreatePagesSite, enablePagesSite, getPagesSite }
module.exports = { findOrCreatePagesSite, enablePagesSite, getPagesSite, getApiBaseUrl }
21 changes: 21 additions & 0 deletions src/api-client.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,27 @@ describe('apiClient', () => {
jest.spyOn(core, 'debug').mockImplementation(jest.fn())
})

describe('getApiBaseUrl', () => {
it('returns GITHUB_API_URL environment variable when set', async () => {
const expectedBaseUrl = 'https://api.ghe.com'
process.env.GITHUB_API_URL = expectedBaseUrl
const result = apiClient.getApiBaseUrl()
delete process.env.GITHUB_API_URL
expect(result).toEqual(expectedBaseUrl)
})

it('defaults to GitHub API if GITHUB_API_URL environment variable is empty', async () => {
process.env.GITHUB_API_URL = ''
const result = apiClient.getApiBaseUrl()
delete process.env.GITHUB_API_URL
expect(result).toEqual('https://api.github.com')
})

it('defaults to GitHub API if GITHUB_API_URL environment variable is not set', async () => {
const result = apiClient.getApiBaseUrl()
expect(result).toEqual('https://api.github.com')
})
})

describe('enablePagesSite', () => {
it('makes a request to create a page', async () => {
Expand Down

0 comments on commit bce6391

Please sign in to comment.