Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/duplocloud/ghactions-start-gitflow-release
Starts a gitflow release
https://github.com/duplocloud/ghactions-start-gitflow-release
duplocloud gitflow gitflow-release sdlc
Last synced: 18 days ago
JSON representation
Starts a gitflow release
- Host: GitHub
- URL: https://github.com/duplocloud/ghactions-start-gitflow-release
- Owner: duplocloud
- Created: 2022-03-01T20:27:53.000Z (almost 3 years ago)
- Default Branch: develop
- Last Pushed: 2024-01-03T16:49:12.000Z (about 1 year ago)
- Last Synced: 2024-12-13T23:18:11.750Z (about 1 month ago)
- Topics: duplocloud, gitflow, gitflow-release, sdlc
- Homepage: https://duplocloud.com
- Size: 33.2 KB
- Stars: 1
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Github Action to start a gitflow release
This action starts a gitflow release, and opens a pull request for the release.
# Usage
## Example
Here is an example of what to put in your `.github/workflows/start-release.yml` file to use this workflow.
```yaml
name: Start Release
on:
workflow_dispatch:
inputs:
version:
description: 'Next version number'
required: true
env:
git_user: some-bot # CHANGE ME!
git_email: [email protected] # CHANGE ME!
jobs:
start-release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
ref: develop # Always release from develop
fetch-depth: 0
persist-credentials: false # Needed so we can push with different credentials.
# NOTE: Pushing with different credentials allows admins to push protected branches.
# NOTE: Pushing with different credentials allow workflows to trigger from the push.# START THE RELEASE
- name: Initialize mandatory git config
run: |
git config --global user.name $git_user &&
git config --global user.email $git_email
- name: Start gitflow release
uses: duplocloud/ghactions-start-gitflow-release@master
with:
github_token: ${{ secrets.RELEASE_BOT_GITHUB_TOKEN }}
version: ${{ github.event.inputs.version }}
precommit_run: |
echo "v${{ github.event.inputs.version }}" >VERSION
```## Inputs
| Name | Description | Required | Default |
|------|-------------|----------|---------|
| version | The release version (without any leading prefix) | true | unset |
| tag_prefix | The tag prefix (defaults to "v") | true | `"v"` |
| github_token | Github token to use for pushing and creating the PR | true | unset |
| precommit_run | Shell commands to run prior to making release commit. If no commands are given, no commit will be made. | false | unset |
| commit_message | Commit message to use for the release commit. If no precommit_run is given, no commit will be made. | false | `"[release] version bump"` |
| create_pr | Whether or not to create a pull request. | false | true |
| target_ref | pull request base (defaults to master). Only used if creating a PR. | false | `"master"` |## Outputs
| Name | Description |
|------|-------------|
| release_tag | release git tag (with version prefix) |
| release_branch | release git branch |
| pull_request_id | pull request ID |
| pull_request_url | pull request URL |