Skip to content

Commit f837869

Browse files
committed
Modernize release flow based on 5.x
* Pin firrtl version to 1.6.0 * Pin chiseltest version used in testing to 0.6.2 * Switch to unipublish * Remove 3.6.0 as MiMa previous version as unipublish won't work with it Will restore checks with 3.6.1 release, this is mitigated by the fact that every backport to this point has been checked. * Update Github Actions versions * Remove CI for documentation and website (handled by main branch)
1 parent 392f415 commit f837869

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)