GitHub Action to create release.
See action.yml
For more information on these inputs, see the API Documentation
owner: The name of the owner of the repo. Used to identify the owner of the repository. Used when cutting releases for external repositories. Default: Current ownerrepo: The name of the repository. Used to identify the repository on which to release. Used when cutting releases for external repositories. Default: Current repositorytag_name: The name of the tag for this releasename: The name of the releasebody: Text describing the contents of the release. Optional, and not needed if usingbody_path.body_path: A file with contents describing the release. Optional, and not needed if usingbody.draft:trueto create a draft (unpublished) release,falseto create a published one. Default:falseprerelease:trueto identify the release as a prerelease.falseto identify the release as a full release. Default:falsetarget_commitish: Any branch or commit SHA the Git tag is created from, unused if the Git tag already exists. Default: SHA of current commitdiscussion_category_name: When provided this will generate a discussion of the specified category. The category must exist otherwise this will cause the action to fail. This isn't used with draft releases.generate_release_notes: Indicates if release notes should be automatically generated.on_release_exists: Indicate what to do if a release already exists. Options:skip,update,update_only_unreleased,update_only_unreleased_or_skip,error. Defaultskip.remove_assets: Indicates if existing release artifacts should be removed.
The body_path is valuable for dynamically creating a .md within code commits and even within the Github Action steps leading up to the create-release.
For more information on these outputs, see the API Documentation for an example of what these outputs look like
id: The release IDhtml_url: The URL users can navigate to in order to view the release. i.e.https://github.com/octocat/Hello-World/releases/v1.0.0upload_url: The URL for uploading assets to the release, which could be used by GitHub Actions for additional uses, for example the@actions/upload-release-assetGitHub Actiontag_name: The git tag associated with the release. ex:v1.1.0prerelease: Whether the release is a pre-release
permissions:
contents: write
steps:
- name: Create Release
id: create_release
uses: joutvhu/create-release@v1
with:
tag_name: v1.0.0
name: Release v1.0.0
body: |
Changes in this Release
- First Change
- Second Change
draft: false
prerelease: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}This will create a Release, as well as a release event, which could be handled by a third party service, or by GitHub Actions for additional uses, for example the @actions/upload-release-asset GitHub Action.