Skip to content

Commit f49c201

Browse files
[CNSL-1935] Add automated release PR workflow
Added GitHub Actions workflow that automatically creates release PRs when pending-deploy-* branches are merged to main. The workflow uses the reusable workflow from cockroachdb/actions and updates the version number in CHANGELOG.md, go.mod, config files, and documentation. Co-Authored-By: roachdev-claude <roachdev-claude-bot@cockroachlabs.com>
1 parent 7777b8d commit f49c201

4 files changed

Lines changed: 69 additions & 1 deletion

File tree

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Create Release PR
2+
3+
on:
4+
pull_request:
5+
types: [closed]
6+
branches:
7+
- main
8+
workflow_dispatch:
9+
10+
permissions:
11+
contents: write
12+
pull-requests: write
13+
14+
jobs:
15+
create-release-pr:
16+
# Run on merged PRs with pending-deploy- prefix, or manual workflow_dispatch
17+
if: github.event_name == 'workflow_dispatch' || (github.event.pull_request.merged && startsWith(github.event.pull_request.head.ref, 'pending-deploy-'))
18+
uses: cockroachdb/actions/.github/workflows/create-release-pr.yml@v0
19+
with:
20+
fork_owner: crl-console-bot
21+
fork_repo: cockroach-cloud-sdk-go
22+
build_script: build/update_version.sh
23+
files_to_commit: |
24+
go.mod
25+
internal/spec/config.yaml
26+
README.md
27+
docs/README.md
28+
pkg/client/configuration.go
29+
secrets:
30+
fork_push_token: ${{ secrets.FORK_PUSH_TOKEN }}
31+
pr_create_token: ${{ secrets.GITHUB_TOKEN }}

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
### Added
11+
12+
- Automated release workflow that creates release PRs when `pending-deploy-*`
13+
branches are merged to main, updating the version number in all relevant files
14+
1015
## [7.1.0] - 2026-04-14
1116

1217
### Added

Makefile

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,17 @@ generate-openapi-client: bin/goimports
1616
-c internal/spec/config.yaml
1717
mv internal/openapi-generator/docs ./
1818
mv internal/openapi-generator/*.md ./docs/
19-
cp ./docs/README.md ./
19+
@$(MAKE) sync-readme
2020
bin/goimports -w ./internal/openapi-generator/
2121
go fmt ./internal/openapi-generator/...
2222
mv ./internal/openapi-generator/*.go pkg/client/
2323
@$(MAKE) add-boilerplate
2424

25+
# Copy docs/README.md to root README.md
26+
.PHONY: sync-readme
27+
sync-readme:
28+
cp ./docs/README.md ./
29+
2530
bin/goimports:
2631
@TOOLPKG=github.com/cockroachdb/gostdlib/x/tools/cmd/goimports@v1.19.0 $(MAKE) build-tool
2732

scripts/lib/logging.sh

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#!/usr/bin/env bash
2+
# Logging functions for GitHub Actions workflows
3+
4+
# Output an informational message to stderr
5+
log_info() {
6+
local message="$1"
7+
echo "$message" >&2
8+
}
9+
10+
# Output an error message using GitHub Actions workflow command format
11+
# https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-an-error-message
12+
log_error() {
13+
local message="$1"
14+
echo "::error::$message" >&2
15+
}
16+
17+
# Output a warning message using GitHub Actions workflow command format
18+
log_warning() {
19+
local message="$1"
20+
echo "::warning::$message" >&2
21+
}
22+
23+
# Output a notice message using GitHub Actions workflow command format
24+
log_notice() {
25+
local message="$1"
26+
echo "::notice::$message" >&2
27+
}

0 commit comments

Comments
 (0)