From 12b8ec3b9b63e8f2e009ba376c74dab8e584d57e Mon Sep 17 00:00:00 2001 From: "James M. Greene" Date: Wed, 22 Feb 2023 08:18:54 -0600 Subject: [PATCH] Move setting 'page_url' output variable to top-level index --- src/deployment.js | 6 ------ src/index.js | 17 +++++++++++++++-- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/src/deployment.js b/src/deployment.js index e314604..4a40c29 100644 --- a/src/deployment.js +++ b/src/deployment.js @@ -102,12 +102,6 @@ class Deployment { this.deploymentInfo != null ? this.deploymentInfo['status_url'] : `${this.githubApiUrl}/repos/${this.repositoryNwo}/pages/deployment/status/${this.buildVersion}` - let pageUrl = this.deploymentInfo != null ? this.deploymentInfo['page_url'] : '' - const previewUrl = this.deploymentInfo != null ? this.deploymentInfo['preview_url'] : '' - if (this.isPreview && previewUrl) { - pageUrl = previewUrl - } - core.setOutput('page_url', pageUrl) const timeout = Number(core.getInput('timeout')) const reportingInterval = Number(core.getInput('reporting_interval')) const maxErrorCount = Number(core.getInput('error_count')) diff --git a/src/index.js b/src/index.js index 36301db..73a4b02 100644 --- a/src/index.js +++ b/src/index.js @@ -3,9 +3,10 @@ // without the user having to do the tar process themselves. const core = require('@actions/core') -// const github = require('@actions/github'); // TODO: Not used until we publish API endpoint to the @action/github package const { Deployment } = require('./deployment') +const getContext = require('./context') + const deployment = new Deployment() async function cancelHandler(evtOrExitCodeOrError) { @@ -14,6 +15,8 @@ async function cancelHandler(evtOrExitCodeOrError) { } async function main() { + const { isPreview } = getContext() + let idToken = '' try { idToken = await core.getIDToken() @@ -22,8 +25,18 @@ async function main() { core.setFailed(`Ensure GITHUB_TOKEN has permission "id-token: write".`) return } + try { - await deployment.create(idToken) + const deploymentInfo = await deployment.create(idToken) + + // Output the deployed Pages URL + let pageUrl = deploymentInfo?.['page_url'] || '' + const previewUrl = deploymentInfo?.['preview_url'] || '' + if (isPreview && previewUrl) { + pageUrl = previewUrl + } + core.setOutput('page_url', pageUrl) + await deployment.check() } catch (error) { core.setFailed(error)