mirror of
https://github.com/actualbudget/actual.git
synced 2026-03-20 22:28:08 -05:00
* actions/setup-node * actions/cache * actions/checkout * docker/* * actions/*-artifact * actions/stale * others * note
65 lines
2.2 KiB
YAML
65 lines
2.2 KiB
YAML
name: Generate release PR
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
ref:
|
|
description: 'Commit or branch to release'
|
|
required: true
|
|
default: 'master'
|
|
version:
|
|
description: 'Version number for the release (optional)'
|
|
required: false
|
|
default: ''
|
|
|
|
jobs:
|
|
generate-release-pr:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
with:
|
|
ref: ${{ github.event.inputs.ref }}
|
|
- name: Set up environment
|
|
uses: ./.github/actions/setup
|
|
with:
|
|
download-translations: 'false'
|
|
- name: Bump package versions
|
|
id: bump_package_versions
|
|
shell: bash
|
|
run: |
|
|
declare -A packages=(
|
|
[web]="desktop-client"
|
|
[electron]="desktop-electron"
|
|
[sync]="sync-server"
|
|
[api]="api"
|
|
)
|
|
|
|
for key in "${!packages[@]}"; do
|
|
pkg="${packages[$key]}"
|
|
|
|
if [[ -n "${{ github.event.inputs.version }}" ]]; then
|
|
version=$(yarn workspace @actual-app/ci-actions tsx bin/get-next-package-version.ts \
|
|
--package-json "./packages/$pkg/package.json" \
|
|
--version "${{ github.event.inputs.version }}" \
|
|
--update)
|
|
else
|
|
version=$(yarn workspace @actual-app/ci-actions tsx bin/get-next-package-version.ts \
|
|
--package-json "./packages/$pkg/package.json" \
|
|
--type auto \
|
|
--update)
|
|
fi
|
|
|
|
eval "NEW_${key^^}_VERSION=\"$version\""
|
|
done
|
|
|
|
echo "version=$NEW_WEB_VERSION" >> "$GITHUB_OUTPUT"
|
|
- name: Create PR
|
|
uses: peter-evans/create-pull-request@c0f553fe549906ede9cf27b5156039d195d2ece0 # v8.1.0
|
|
with:
|
|
token: ${{ secrets.ACTIONS_UPDATE_TOKEN }}
|
|
commit-message: '🔖 (${{ steps.bump_package_versions.outputs.version }})'
|
|
title: '🔖 (${{ steps.bump_package_versions.outputs.version }})'
|
|
body: 'Generated by [generate-release-pr.yml](../tree/master/.github/workflows/generate-release-pr.yml)'
|
|
branch: 'release/v${{ steps.bump_package_versions.outputs.version }}'
|