Skip to content

Prepare release

Prepare release #32

name: "Prepare release"
on:
workflow_dispatch:
inputs:
last_minor:
description: "Next release after this one is going to be a major (don't check on patch-level releases)"
type: boolean
default: false
jobs:
prepare:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- id: pipeline_context
uses: ./.github/actions/extract_pipeline_context
with:
last_minor: ${{ inputs.last_minor }}
- uses: ruby/setup-ruby@v1
env:
BUNDLE_GEMFILE: "dev_tools/Gemfile"
with:
ruby-version: "3.1"
bundler-cache: true
- name: "Bump version"
run: |
cd dev_tools/ && bin/bump-version \
${{ steps.pipeline_context.outputs.candidate_version }}
- name: "Bump docker image version"
if: github.ref_name == 'main'
run: |
cd dev_tools/ && bin/bump-docker-image-version \
${{ steps.pipeline_context.outputs.candidate_version }}
- name: "Bump installer starter frontend version"
if: github.ref_name == 'main'
run: |
cd dev_tools/ && bin/bump-starter-frontend-version \
${{ steps.pipeline_context.outputs.candidate_patch_branch }}
- name: "Update Changelog"
run: |
cd dev_tools/ && bin/update-changelog \
${{ github.token }} \
${{ github.repository }} \
${{ steps.pipeline_context.outputs.candidate_tag }}
- name: "Compute labels for the PR"
id: pr_labels
run: |
if [ ${{ inputs.last_minor }} == 'true' ]; then
last_minor_label="release:generate-last_minor"
else
last_minor_label=""
fi
echo "labels='changelog:skip release:generate $last_minor_label'" >> $GITHUB_OUTPUT
- uses: ./.github/actions/commit_and_submit_pull_request
with:
labels: ${{ steps.pr_labels.outputs.labels }}
message: |
Prepare release for Solidus ${{ steps.pipeline_context.outputs.candidate_tag }}
This code has been automatically generated by our 'Prepare release' GitHub
action.
The actual release is not part of the automation, and it still needs to be manually done by a maintainer.