Skip to content

Commit fc5bae9

Browse files
authored
Merge pull request #4213 from chipsalliance/jackkoenig/3.6.x/modernize-release-flow
[3.6.x] Modernize Release Flow
2 parents 67b1089 + f837869 commit fc5bae9

File tree

10 files changed

+145
-158
lines changed

10 files changed

+145
-158
lines changed

.github/workflows/backport-fixup.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
original_pr: ${{ steps.original.outputs.pr }}
2929

3030
steps:
31-
- uses: actions/checkout@v3
31+
- uses: actions/checkout@v4
3232
- name: Figure out backport PR number
3333
id: backport
3434
run: |
@@ -57,7 +57,7 @@ jobs:
5757
if: ${{ needs.resolve_prs.outputs.original_pr }}
5858

5959
steps:
60-
- uses: actions/checkout@v3
60+
- uses: actions/checkout@v4
6161
- name: Copy over labels
6262
env:
6363
GH_TOKEN: ${{ github.token }}

.github/workflows/build-scala-cli-example/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ runs:
2626
# Need to publishLocal to test the example
2727
- name: Publish Local
2828
shell: bash
29-
run: sbt publishLocal
29+
run: sbt "unipublish / publishLocal"
3030
- name: Test Scala CLI Example
3131
shell: bash
3232
run: scala-cli chisel-example.scala

.github/workflows/enable-bincompat-checking.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ jobs:
3737
branches: ${{ steps.determine-branches.outputs.branches }}
3838

3939
steps:
40-
- uses: actions/checkout@v3
40+
- uses: actions/checkout@v4
4141
with:
4242
fetch-depth: 0
4343
- name: Check Valid
@@ -70,14 +70,14 @@ jobs:
7070
branch: ${{ fromJson(needs.determine_branches.outputs.branches) }}
7171

7272
steps:
73-
- uses: actions/checkout@v3
73+
- uses: actions/checkout@v4
7474
- name: Create file
7575
run: |
7676
VERSION=${{ needs.determine_version.outputs.version }}
7777
VERSION_NO_V=${VERSION#v}
7878
echo $VERSION_NO_V >> project/previous-versions.txt
7979
- name: Open PR
80-
uses: peter-evans/create-pull-request@v5
80+
uses: peter-evans/create-pull-request@v6
8181
with:
8282
base: ${{ matrix.branch }}
8383
branch: bincompat/${{ matrix.branch }}/${{ needs.determine_version.outputs.version }}

.github/workflows/install-espresso/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ runs:
1010
using: composite
1111
steps:
1212
- id: cache-espresso
13-
uses: actions/cache@v3
13+
uses: actions/cache@v4
1414
with:
1515
path: /usr/local/bin/espresso
1616
key: espresso-${{ runner.os }}-${{ inputs.version }}

.github/workflows/release-notes.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ on:
1818
jobs:
1919
generate_release_notes:
2020
name: Generate Release Notes
21-
runs-on: ubuntu-22.04
21+
runs-on: ubuntu-latest
2222

2323
steps:
2424
- name: Checkout
@@ -41,7 +41,7 @@ jobs:
4141
run: echo "$CHANGELOG" >> $GITHUB_STEP_SUMMARY
4242
- name: Upload Release Notes (on release)
4343
if: github.event_name == 'release'
44-
uses: softprops/action-gh-release@v0.1.15
44+
uses: softprops/action-gh-release@v2.0.5
4545
with:
4646
body: ${{ steps.release-notes.outputs.changelog }}
4747
- name: Error on uncategorized PRs

.github/workflows/scala-cli-example.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,21 @@ jobs:
1212

1313
steps:
1414
- name: Checkout
15-
uses: actions/checkout@v3
15+
uses: actions/checkout@v4
1616
# Need to fetch full history for deriving version
1717
with:
1818
fetch-depth: 0
1919
- name: Build and Test Scala-CLI Example
2020
uses: ./.github/workflows/build-scala-cli-example
2121
- name: Upload Example
22-
uses: actions/upload-artifact@v3
22+
uses: actions/upload-artifact@v4
2323
with:
2424
name: chisel-example.scala
2525
path: chisel-example.scala
2626
retention-days: 7
2727
- name: Upload To Release Page
2828
if: github.event_name == 'release'
29-
uses: softprops/action-gh-release@v0.1.15
29+
uses: softprops/action-gh-release@v2.0.5
3030
with:
3131
files: chisel-example.scala
3232

.github/workflows/setup-oss-cad-suite/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ runs:
1010
using: composite
1111
steps:
1212
- id: cache-oss-cad-suite
13-
uses: actions/cache@v3
13+
uses: actions/cache@v4
1414
with:
1515
path: oss-cad-suite
1616
key: oss-cad-suite-${{ runner.os }}-${{ inputs.version }}

.github/workflows/test.yml

Lines changed: 23 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
11
name: Continuous Integration
22

33
on:
4+
workflow_dispatch:
45
pull_request:
56
push:
7+
tags:
8+
- '*'
69
branches:
7-
- master
8-
- 3.6.x
9-
- 3.5.x
10-
- 3.4.x
11-
- 3.3.x
12-
- 3.2.x
10+
- main
11+
- '*.x'
1312

1413
jobs:
1514
ci:
@@ -25,15 +24,15 @@ jobs:
2524

2625
steps:
2726
- name: Checkout
28-
uses: actions/checkout@v3
27+
uses: actions/checkout@v4
2928
- name: Install Tabby OSS Cad Suite
3029
uses: ./.github/workflows/setup-oss-cad-suite
3130
- name: Install Espresso
3231
uses: ./.github/workflows/install-espresso
3332
with:
3433
version: ${{ matrix.espresso }}
3534
- name: Setup Scala
36-
uses: actions/setup-java@v3
35+
uses: actions/setup-java@v4
3736
with:
3837
distribution: 'adopt'
3938
java-version: ${{ matrix.jvm }}
@@ -45,16 +44,16 @@ jobs:
4544
- name: Test
4645
run: sbt ++${{ matrix.scala }} test
4746
- name: Binary compatibility
48-
run: sbt ++${{ matrix.scala }} mimaReportBinaryIssues
47+
run: sbt ++${{ matrix.scala }} unipublish/mimaReportBinaryIssues
4948

5049
doc:
5150
name: Formatting
5251
runs-on: ubuntu-20.04
5352
steps:
5453
- name: Checkout
55-
uses: actions/checkout@v3
54+
uses: actions/checkout@v4
5655
- name: Setup Scala
57-
uses: actions/setup-java@v3
56+
uses: actions/setup-java@v4
5857
with:
5958
distribution: 'adopt'
6059
java-version: '11'
@@ -66,18 +65,18 @@ jobs:
6665

6766
integration:
6867
name: Integration Tests (w/ chiseltest)
69-
runs-on: ubuntu-20.04
68+
runs-on: ubuntu-latest
7069
steps:
7170
- name: Checkout
72-
uses: actions/checkout@v3
71+
uses: actions/checkout@v4
7372
- name: Install Tabby OSS Cad Suite
7473
uses: ./.github/workflows/setup-oss-cad-suite
7574
- name: Install Espresso
7675
uses: ./.github/workflows/install-espresso
7776
- name: Install CIRCT
7877
uses: ./.github/workflows/install-circt
7978
- name: Setup Scala
80-
uses: actions/setup-java@v3
79+
uses: actions/setup-java@v4
8180
with:
8281
distribution: 'adopt'
8382
java-version: '11'
@@ -98,11 +97,11 @@ jobs:
9897
scala: [ "2.13.10", "2.12.17" ]
9998
steps:
10099
- name: Checkout
101-
uses: actions/checkout@v3
100+
uses: actions/checkout@v4
102101
- name: Install Tabby OSS Cad Suite
103102
uses: ./.github/workflows/setup-oss-cad-suite
104103
- name: Setup Scala
105-
uses: actions/setup-java@v3
104+
uses: actions/setup-java@v4
106105
with:
107106
distribution: 'adopt'
108107
java-version: '11'
@@ -113,48 +112,12 @@ jobs:
113112
- name: Unit Tests
114113
run: sbt ++${{ matrix.scala }} standardLibrary/test
115114

116-
website:
117-
name: Build Mdoc & Website
118-
runs-on: ubuntu-latest
119-
120-
steps:
121-
- name: Checkout
122-
uses: actions/checkout@v2
123-
- name: Setup Scala
124-
uses: olafurpg/setup-scala@v10
125-
with:
126-
java-version: adopt@1.8
127-
- name: Cache Scala
128-
uses: coursier/cache-action@v5
129-
- name: Setup Ruby
130-
uses: actions/setup-ruby@v1
131-
- name: Setup Jekyll
132-
run: |
133-
gem install jekyll -v 4.2.0
134-
gem install jekyll-redirect-from
135-
- name: Install CIRCT
136-
uses: ./.github/workflows/install-circt
137-
#TODO: make the microsite building include building ScalaDoc
138-
- name: Build the docs
139-
run: sbt doc
140-
- name: Build the microsite
141-
run: make -C website
142-
env:
143-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
144-
- name: Tar built website
145-
run: tar zcf website.tar.gz website/docs/target/site
146-
- name: Share Built Website
147-
uses: actions/upload-artifact@v3
148-
with:
149-
name: website
150-
path: website.tar.gz
151-
152115
scala-cli-example:
153116
name: Test Chisel Scala-CLI Example
154117
runs-on: ubuntu-latest
155118
steps:
156119
- name: Checkout
157-
uses: actions/checkout@v3
120+
uses: actions/checkout@v4
158121
# Need to fetch full history for deriving version
159122
with:
160123
fetch-depth: 0
@@ -167,7 +130,7 @@ jobs:
167130
# When adding new jobs, please add them to `needs` below
168131
check-tests:
169132
name: "check tests"
170-
needs: [ci, integration, std, doc, website, scala-cli-example]
133+
needs: [ci, integration, std, doc, scala-cli-example]
171134
runs-on: ubuntu-20.04
172135
if: success() # only run if all tests have passed
173136
outputs:
@@ -208,11 +171,13 @@ jobs:
208171

209172
steps:
210173
- name: Checkout
211-
uses: actions/checkout@v3
174+
uses: actions/checkout@v4
175+
with:
176+
fetch-depth: 0
212177
- name: Install CIRCT
213178
uses: ./.github/workflows/install-circt
214179
- name: Setup Scala
215-
uses: actions/setup-java@v3
180+
uses: actions/setup-java@v4
216181
with:
217182
distribution: 'adopt'
218183
java-version: '8'
@@ -222,6 +187,8 @@ jobs:
222187
- name: Publish
223188
run: sbt -DdisableFatalWarnings ci-release
224189
env:
190+
CI_SNAPSHOT_RELEASE: "+unipublish/publish"
191+
CI_SONATYPE_RELEASE: "+unipublish/publishSigned"
225192
PGP_PASSPHRASE: ${{ secrets.PGP_PASSPHRASE }}
226193
PGP_SECRET: ${{ secrets.PGP_SECRET }}
227194
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}

0 commit comments

Comments
 (0)