You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+9-22Lines changed: 9 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,6 +15,7 @@ A GitHub Action that runs [semantic-release](https://semantic-release.gitbook.io
15
15
-**Wait for Checks**: Unlike typical `semantic-release` workflows, this action allows you to explicitly wait for all other GitHub checks to complete before proceeding with the release. This ensures that releases are only published after all tests and quality gates have passed. **Note**: This feature does not wait for disabled workflows.
16
16
-**Decoupled Workflow**: By waiting for other checks, this action can run independently of your main CI workflow (which might be triggered by pull requests and merges to `main`). This decoupling reduces the risk of exposing sensitive `semantic-release` tokens in contexts where they are not strictly necessary, a common security concern in open-source projects.
17
17
-**Fast Execution**: The action optimizes for speed by caching dependencies, leading to quicker execution times for your release workflow.
18
+
-**Simplified for Polyglot Repositories**: Abstracts away the Node.js ecosystem, enabling `semantic-release` usage in non-Node.js projects without requiring a `package.json` or various JavaScript/TypeScript configuration files within your repository.
18
19
19
20
## Usage
20
21
@@ -60,6 +61,10 @@ This workflow is now configured to trigger a release on any commit to `main` (or
60
61
- `working-directory` (optional, default: `'.'`) : The directory to search for `semantic-release` configuration files.
61
62
- `allow-force-install` (optional, default: `'false'`): If `'true'`, allows the action to overwrite an existing package.json file and forces npm to install dependencies using the `--force` flag. This can be used to resolve conflicting peer dependency issues but should be used with caution as it may lead to a broken installation.
62
63
64
+
## Outputs
65
+
66
+
None
67
+
63
68
### Configuration
64
69
65
70
This action uses `cosmiconfig` to find your `semantic-release` configuration. It supports the following file formats:
@@ -76,13 +81,12 @@ This action uses `cosmiconfig` to find your `semantic-release` configuration. It
76
81
77
82
### In Node.js (or related) projects
78
83
79
-
For JavaScript/TypeScript projects, you typically use an imperative configuration file like `release.config.mjs` or `release.config.js`. When using such a file, all `semantic-release` plugins must be declared as dependencies in your project's `package.json` file.
84
+
For JavaScript/TypeScript projects, you typically use an imperative configuration file like `release.config.mjs` or `release.config.js`. When using such a file, all `semantic-release` plugins must be declared as development dependencies in your project's `package.json` file.
The action will automatically run `npm install` in your working directory to ensure all these declared dependencies are available for `semantic-release` to function correctly.
@@ -141,6 +127,7 @@ The action will detect the plugins listed in these declarative files, create a t
141
127
142
128
- **[Semantic Release](https://semantic-release.gitbook.io/semantic-release/):** The automated versioning and package publishing tool this action runs.
143
129
- **[Cosmiconfig](https://github.com/cosmiconfig/cosmiconfig):** The universal configuration loader used by this action to find `semantic-release` configurations.
130
+
- **[Semantic Versioning (SemVer)](https://semver.org/):** A widely adopted standard for version numbering that your commit messages can help facilitate with automated tools.
0 commit comments