A containerized version of release-it that runs in any environment without requiring a Node.js installation. This project is a wrapper providing the environment and setup to execute release-it directly from a container.
Note
This project is released using release-it and this containerized version, including pre-releases.
At runtime the container:
- Configures Git (user, email, remote URL, safe directory)
- Imports GPG key and enables signed commits (if provided)
- Configures SSH key and starts the SSH agent (if provided)
- Installs the requested NPM and release-it version (defaults to
latest) - Installs any additional release-it plugins from
RELEASE_IT_PLUGINS - Executes
release-itwith the arguments passed to the container
The project must include a valid release-it configuration file.
docker run \
-e GITHUB_TOKEN="<token>" \
-e GIT_EMAIL="you@example.com" \
-e GIT_USERNAME="Your Name" \
-v $(pwd):/app \
ghcr.io/juancarlosjr97/release-it-containerized \
release-it --ci- name: Release
uses: juancarlosjr97/release-it-containerized@1.0.12
with:
github_token: ${{ secrets.RELEASE_IT_GITHUB_TOKEN }}Important
A Personal Access Token (PAT) with contents: write must be stored as a repository secret and passed as github_token. The default ${{ github.token }} is not supported.
- Usage β full input reference, Docker examples, and GitHub Action setup
This project is only possible due to the existence of release-it and all its contributors for the great work.
We welcome contributions! Please see our Contributing Guide for details on:
- How to report bugs
- How to suggest enhancements
- Development workflow
- Commit message conventions
- Pull request process
This project is licensed under the MIT License. See the LICENSE file.