From 266ea7eb8c90943aa9cddd3b0ed326d5e8784a26 Mon Sep 17 00:00:00 2001 From: David van der Spek Date: Mon, 30 Dec 2024 10:22:36 +0100 Subject: [PATCH] feat: add ability to unset GITHUB_ACTION env var Signed-off-by: David van der Spek --- README.md | 1 + action.yml | 3 +++ src/handleOptions.js | 4 ++-- src/index.js | 5 +++++ src/inputs.json | 1 + 5 files changed, 12 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 60c1952..b10745a 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,7 @@ then make sure that you configure this in your `package.json` file: | extra_plugins | false | Extra plugins for pre-install. [[Details](#extra_plugins)] | | dry_run | false | Whether to run semantic release in `dry-run` mode. [[Details](#dry_run)] | | ci | false | Whether to run semantic release with CI support. [[Details](#ci)]
Support for **semantic-release above v16**. | +| unset_gha_env | false | Whether to unset the GITHUB_ACTIONS environment variable. | | extends | false | Use a sharable configuration [[Details](#extends)] | | working_directory | false | Use another working directory for semantic release [[Details](#working_directory)] | | tag_format | false | Specify format of tag (useful for monorepos) | diff --git a/action.yml b/action.yml index 45a53a8..d513c7d 100644 --- a/action.yml +++ b/action.yml @@ -23,6 +23,9 @@ inputs: ci: required: false description: 'Whether to run semantic release with CI support (default: true). It will override the ci attribute in your configuration file' + unset_gha_env: + required: false + description: 'Whether to unset the GITHUB_ACTIONS environment variable. This can be useful when trying to run semantic-release as part of PR checks.' extends: required: false description: 'One or several sharable configurations, https://semantic-release.gitbook.io/semantic-release/usage/configuration#extends' diff --git a/src/handleOptions.js b/src/handleOptions.js index 829667f..7a42a49 100644 --- a/src/handleOptions.js +++ b/src/handleOptions.js @@ -126,8 +126,8 @@ exports.handleRepositoryUrlOption = () => { core.debug(`repository_url input: ${repositoryUrl}`); if (repositoryUrl) { - return { r: repositoryUrl }; + return { r: repositoryUrl }; } else { return {}; } -}; \ No newline at end of file +}; diff --git a/src/index.js b/src/index.js index a8c64c8..1b783b7 100644 --- a/src/index.js +++ b/src/index.js @@ -27,6 +27,11 @@ const release = async () => { await preInstall(core.getInput(inputs.extra_plugins)); await preInstall(core.getInput(inputs.extends)); + if (core.getInput(inputs.unset_gha_env) === 'true') { + core.debug('Unset GITHUB_ACTIONS environment variable'); + delete process.env.GITHUB_ACTIONS; + } + const semanticRelease = await import('semantic-release'); const result = await semanticRelease.default({ ...handleBranchesOption(), diff --git a/src/inputs.json b/src/inputs.json index 244af82..8cc96e9 100644 --- a/src/inputs.json +++ b/src/inputs.json @@ -5,6 +5,7 @@ "extra_plugins": "extra_plugins", "dry_run": "dry_run", "ci": "ci", + "unset_gha_env": "unset_gha_env", "extends": "extends", "working_directory": "working_directory", "tag_format": "tag_format",