use github actions packages

This commit is contained in:
Jeremy Daley
2023-02-10 02:30:56 -05:00
parent b1748b08d7
commit 7d88dd59cd
6 changed files with 29 additions and 8477 deletions

View File

@@ -1,28 +1,18 @@
const axios = require('axios')
const core = require('@actions/core')
const github = require('@actions/github')
const HPA = require('https-proxy-agent')
function getApiBaseUrl() {
return process.env.GITHUB_API_URL || 'https://api.github.com'
}
async function enablePagesSite({ repositoryNwo, githubToken, proxy }) {
const pagesEndpoint = `${getApiBaseUrl()}/repos/${repositoryNwo}/pages`
async function enablePagesSite({ githubToken }) {
const octokit = github.getOctokit(githubToken)
try {
const response = await axios.post(
pagesEndpoint,
{ build_type: 'workflow' },
{
...(proxy ? {httpsAgent: HPA(proxy)} : {}),
headers: {
Accept: 'application/vnd.github.v3+json',
Authorization: `Bearer ${githubToken}`,
'Content-type': 'application/json'
}
}
)
const response = await octokit.rest.repos.createPagesSite({
owner: github.context.repo.owner,
repo: github.context.repo.repo
})
const pageObject = response.data
return pageObject
@@ -35,28 +25,24 @@ async function enablePagesSite({ repositoryNwo, githubToken, proxy }) {
}
}
async function getPagesSite({ repositoryNwo, githubToken, proxy }) {
console.log('Using proxy:', proxy)
const octokitOptions = proxy ? { request: { agent: HPA(proxy)}} : {}
const octokit = github.getOctokit(githubToken, octokitOptions)
async function getPagesSite({ githubToken }) {
const octokit = github.getOctokit(githubToken)
const response = await octokit.rest.repos.getPages({
owner: github.context.repo.owner,
repo: github.context.repo.repo
})
console.log(response)
const pageObject = response.data
return pageObject
}
async function findOrCreatePagesSite({ repositoryNwo, githubToken, enablement = true, proxy }) {
async function findOrCreatePagesSite({ githubToken, enablement = true }) {
let pageObject
// Try to find an existing Pages site first
try {
pageObject = await getPagesSite({ repositoryNwo, githubToken, proxy })
pageObject = await getPagesSite({ githubToken })
} catch (error) {
if (!enablement) {
core.error('Get Pages site failed', error)
@@ -68,7 +54,7 @@ async function findOrCreatePagesSite({ repositoryNwo, githubToken, enablement =
if (!pageObject && enablement) {
// Create a new Pages site if one doesn't exist
try {
pageObject = await enablePagesSite({ repositoryNwo, githubToken, proxy })
pageObject = await enablePagesSite({ githubToken })
} catch (error) {
core.error('Create Pages site failed', error)
throw error
@@ -78,7 +64,7 @@ async function findOrCreatePagesSite({ repositoryNwo, githubToken, enablement =
// Try one more time for this extreme edge case!
if (pageObject == null) {
try {
pageObject = await getPagesSite({ repositoryNwo, githubToken })
pageObject = await getPagesSite({ githubToken })
} catch (error) {
core.error('Get Pages site still failed', error)
throw error

View File

@@ -7,7 +7,6 @@ function getRequiredVars() {
githubToken: core.getInput('token'),
staticSiteGenerator: core.getInput('static_site_generator'),
generatorConfigFile: core.getInput('generator_config_file'),
proxy: core.getInput('proxy'),
enablement: core.getInput('enablement') === 'true'
}
}

View File

@@ -9,9 +9,9 @@ const outputPagesBaseUrl = require('./output-pages-base-url')
async function main() {
try {
const { repositoryNwo, githubToken, enablement, staticSiteGenerator, generatorConfigFile, proxy } = getContext()
const { githubToken, enablement, staticSiteGenerator, generatorConfigFile } = getContext()
const pageObject = await findOrCreatePagesSite({ repositoryNwo, githubToken, enablement, proxy })
const pageObject = await findOrCreatePagesSite({ githubToken, enablement })
const siteUrl = new URL(pageObject.html_url)
if (staticSiteGenerator) {