Skip to content

Commit 42f0763

Browse files
authored
ci(release): use native GitHub release notes and add e2e gate (#318)
1 parent dc817c3 commit 42f0763

File tree

8 files changed

+27
-32
lines changed

8 files changed

+27
-32
lines changed
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
1-
name: Checks
1+
name: Branch Checks
22

33
on:
4-
push:
5-
branches: [main]
64
pull_request:
75

86
env:
Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
1-
name: E2E
1+
name: Branch E2E Checks
22

33
on:
4-
push:
5-
branches: [main]
64
pull_request:
75
types: [opened, synchronize, reopened, labeled]
86

@@ -12,15 +10,15 @@ permissions:
1210

1311
jobs:
1412
build-gateway:
15-
if: github.event_name == 'push' || contains(github.event.pull_request.labels.*.name, 'e2e')
13+
if: contains(github.event.pull_request.labels.*.name, 'e2e')
1614
uses: ./.github/workflows/docker-build.yml
1715
with:
1816
component: gateway
1917
platform: linux/arm64
2018
runner: build-arm64
2119

2220
build-cluster:
23-
if: github.event_name == 'push' || contains(github.event.pull_request.labels.*.name, 'e2e')
21+
if: contains(github.event.pull_request.labels.*.name, 'e2e')
2422
uses: ./.github/workflows/docker-build.yml
2523
with:
2624
component: cluster

.github/workflows/ci-image.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: CI Image
1+
name: Build CI Image
22

33
on:
44
push:

.github/workflows/dco.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
name: "DCO Assistant"
2+
23
on:
34
issue_comment:
45
types: [created]

.github/workflows/docs-build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Docs
1+
name: Docs Build
22

33
on:
44
push:

.github/workflows/docs-preview-pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: docs-preview-pr
1+
name: Docs PR Preview
22

33
on:
44
pull_request:

.github/workflows/release-dev.yml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,16 @@ jobs:
6161
component: cluster
6262
cargo-version: ${{ needs.compute-versions.outputs.cargo_version }}
6363

64+
e2e:
65+
needs: [build-gateway, build-cluster]
66+
uses: ./.github/workflows/e2e-test.yml
67+
with:
68+
image-tag: ${{ github.sha }}
69+
runner: build-arm64
70+
6471
tag-ghcr-dev:
6572
name: Tag GHCR Images as Dev
66-
needs: [build-gateway, build-cluster]
73+
needs: [build-gateway, build-cluster, e2e]
6774
runs-on: build-amd64
6875
timeout-minutes: 10
6976
steps:
@@ -84,7 +91,7 @@ jobs:
8491
8592
build-python-wheels:
8693
name: Stage Python Wheels
87-
needs: [compute-versions, build-gateway, build-cluster]
94+
needs: [compute-versions]
8895
runs-on: build-amd64
8996
timeout-minutes: 120
9097
outputs:

.github/workflows/release-tag.yml

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ jobs:
4242
cargo_version: ${{ steps.v.outputs.cargo }}
4343
# Semver without 'v' prefix (e.g. 0.6.0), used for image tags and release body
4444
semver: ${{ steps.v.outputs.semver }}
45-
previous_tag: ${{ steps.prev.outputs.tag }}
4645
steps:
4746
- uses: actions/checkout@v4
4847
with:
@@ -63,19 +62,6 @@ jobs:
6362
echo "cargo=$(uv run python tasks/scripts/release.py get-version --cargo)" >> "$GITHUB_OUTPUT"
6463
echo "semver=${RELEASE_TAG#v}" >> "$GITHUB_OUTPUT"
6564
66-
- name: Find previous release tag
67-
id: prev
68-
run: |
69-
set -euo pipefail
70-
# List tags matching v*.*.* sorted by version descending, keep only
71-
# stable releases (no pre-release suffixes like -rc1), skip the current tag
72-
PREV=$(git tag --list 'v*.*.*' --sort=-version:refname \
73-
| grep -P '^v\d+\.\d+\.\d+$' \
74-
| grep -v "^${RELEASE_TAG}$" \
75-
| head -n1 || true)
76-
echo "tag=${PREV}" >> "$GITHUB_OUTPUT"
77-
echo "Previous release tag: ${PREV:-"(none, first release)"}"
78-
7965
build-gateway:
8066
needs: [compute-versions]
8167
uses: ./.github/workflows/docker-build.yml
@@ -90,9 +76,16 @@ jobs:
9076
component: cluster
9177
cargo-version: ${{ needs.compute-versions.outputs.cargo_version }}
9278

79+
e2e:
80+
needs: [build-gateway, build-cluster]
81+
uses: ./.github/workflows/e2e-test.yml
82+
with:
83+
image-tag: ${{ github.sha }}
84+
runner: build-arm64
85+
9386
tag-ghcr-release:
9487
name: Tag GHCR Images for Release
95-
needs: [compute-versions, build-gateway, build-cluster]
88+
needs: [compute-versions, build-gateway, build-cluster, e2e]
9689
runs-on: build-amd64
9790
timeout-minutes: 10
9891
steps:
@@ -118,7 +111,7 @@ jobs:
118111
119112
build-python-wheels:
120113
name: Stage Python Wheels
121-
needs: [compute-versions, build-gateway, build-cluster]
114+
needs: [compute-versions]
122115
runs-on: build-amd64
123116
timeout-minutes: 120
124117
outputs:
@@ -454,12 +447,10 @@ jobs:
454447
name: OpenShell ${{ env.RELEASE_TAG }}
455448
prerelease: false
456449
tag_name: ${{ env.RELEASE_TAG }}
457-
generate_release_notes: false
450+
generate_release_notes: true
458451
body: |
459452
## OpenShell ${{ env.RELEASE_TAG }}
460453
461-
${{ needs.compute-versions.outputs.previous_tag != '' && format('**Full changelog**: [{0}...{1}](https://github.com/{2}/compare/{0}...{1})', needs.compute-versions.outputs.previous_tag, env.RELEASE_TAG, github.repository) || '' }}
462-
463454
### Quick install
464455
465456
Requires the [GitHub CLI (`gh`)](https://cli.github.com) to be installed and authenticated.

0 commit comments

Comments
 (0)