Skip to content

Commit e721c42

Browse files
committed
ci release: add
1 parent 823cce1 commit e721c42

File tree

3 files changed

+64
-2
lines changed

3 files changed

+64
-2
lines changed

.github/workflows/release.yaml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
tags:
6+
- "*"
7+
8+
jobs:
9+
github:
10+
name: GitHub
11+
runs-on: ubuntu-latest
12+
timeout-minutes: 10
13+
steps:
14+
- uses: actions/checkout@v5
15+
- name: Extract release note
16+
run: |
17+
ruby \
18+
-e 'print("## Active Record ADBC adapter "); \
19+
puts(ARGF.read.split(/^## /)[1]. \
20+
gsub(/ {.+?}/, ""). \
21+
gsub(/\[(.+?)\]\[.+?\]/) {$1})' \
22+
NEWS.md > release-note.md
23+
- name: Upload to release
24+
env:
25+
GH_TOKEN: ${{ github.token }}
26+
run: |
27+
title=$(head -n1 release-note.md | sed -e 's/^## //')
28+
tail -n +2 release-note.md > release-note-without-version.md
29+
gh release create ${GITHUB_REF_NAME} \
30+
--discussion-category Announcements \
31+
--notes-file release-note-without-version.md \
32+
--title "${title}"
33+
34+
rubygems:
35+
name: RubyGems
36+
runs-on: ubuntu-latest
37+
timeout-minutes: 10
38+
permissions:
39+
id-token: write
40+
environment: release
41+
steps:
42+
- uses: actions/checkout@v5
43+
- uses: ruby/setup-ruby@v1
44+
with:
45+
ruby-version: ruby
46+
bundler-cache: true
47+
- uses: rubygems/configure-rubygems-credentials@v1.0.0
48+
- name: Push gems
49+
run: |
50+
bundle exec rake release:rubygem_push

NEWS.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# News
2+
3+
## 0.0.1 - 2025-08-19
4+
5+
Initial release!!!

Rakefile

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,15 @@ base_dir = File.join(__dir__)
88
helper = Bundler::GemHelper.new(base_dir)
99
helper.install
1010

11-
release_task = Rake::Task["release"]
12-
release_task.prerequisites.replace(["build", "release:rubygem_push"])
11+
release_task = Rake.application["release"]
12+
# We use Trusted Publishing.
13+
release_task.prerequisites.delete("build")
14+
release_task.prerequisites.delete("release:rubygem_push")
15+
release_task_comment = release_task.comment
16+
if release_task_comment
17+
release_task.clear_comments
18+
release_task.comment = release_task_comment.gsub(/ and build.*$/, "")
19+
end
1320

1421
desc "Run tests"
1522
task :test do

0 commit comments

Comments
 (0)