Skip to content

Commit 8a37fde

Browse files
committed
Fix ebmc release workflow
* fix copy&paste error when creating .rpm * uploading the release artefacts appears to require a release; hence, create a draft release before uploading * fix ccache keys for Ubuntu build * Use 4 parallel jobs; Github runners for public repos offer 4 CPUs
1 parent 8e1b6c2 commit 8a37fde

File tree

1 file changed

+39
-23
lines changed

1 file changed

+39
-23
lines changed

.github/workflows/ebmc-release.yaml

Lines changed: 39 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,39 @@ on:
66
name: Create Release
77

88
jobs:
9+
get-version-information:
10+
name: Get Version Information
11+
runs-on: ubuntu-20.04
12+
outputs:
13+
version: ${{ steps.split-version.outputs._1 }}
14+
steps:
15+
- uses: jungwinter/split@v2
16+
id: split-ref
17+
with:
18+
msg: ${{ github.ref }}
19+
separator: '/'
20+
- uses: jungwinter/split@v2
21+
id: split-version
22+
with:
23+
msg: ${{ steps.split-ref.outputs._2 }}
24+
separator: '-'
25+
26+
perform-draft-release:
27+
name: Perform Draft Release
28+
runs-on: ubuntu-20.04
29+
needs: [get-version-information]
30+
steps:
31+
- name: Create draft release
32+
uses: actions/create-release@v1
33+
env:
34+
EBMC_VERSION: ${{ needs.get-version-information.outputs.version }}
35+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
36+
with:
37+
tag_name: ebmc-${{ env.EBMC_VERSION }}
38+
release_name: ebmc-${{ env.EBMC_VERSION }}
39+
draft: true
40+
prerelease: false
41+
942
ubuntu-22_04-package:
1043
name: Package for Ubuntu 22.04
1144
runs-on: ubuntu-22.04
@@ -22,18 +55,18 @@ jobs:
2255
with:
2356
save-always: true
2457
path: .ccache
25-
key: ${{ runner.os }}-20.04-make-gcc-${{ github.ref }}-${{ github.sha }}-PR
58+
key: ${{ runner.os }}-22.04-make-gcc-${{ github.ref }}-${{ github.sha }}-PR
2659
restore-keys: |
27-
${{ runner.os }}-20.04-make-gcc-${{ github.ref }}
28-
${{ runner.os }}-20.04-make-gcc
60+
${{ runner.os }}-22.04-make-gcc-${{ github.ref }}
61+
${{ runner.os }}-22.04-make-gcc
2962
- name: ccache environment
3063
run: |
3164
echo "CCACHE_BASEDIR=$PWD" >> $GITHUB_ENV
3265
echo "CCACHE_DIR=$PWD/.ccache" >> $GITHUB_ENV
3366
- name: Get minisat
3467
run: make -C lib/cbmc/src minisat2-download
3568
- name: Build with make
36-
run: make -C src -j2 CXX="ccache g++"
69+
run: make -C src -j4 CXX="ccache g++"
3770
- name: Run the ebmc tests with SAT
3871
run: make -C regression/ebmc test
3972
- name: Run the verilog tests
@@ -107,7 +140,7 @@ jobs:
107140
- name: Get minisat
108141
run: make -C lib/cbmc/src minisat2-download
109142
- name: Build with make
110-
run: make CXX="ccache g++ -Wno-class-memaccess" LIBS="-lstdc++fs" -C src -j2
143+
run: make CXX="ccache g++ -Wno-class-memaccess" LIBS="-lstdc++fs" -C src -j4
111144
- name: Print ccache stats
112145
run: ccache -s
113146
- name: Run the ebmc tests with SAT
@@ -144,7 +177,7 @@ jobs:
144177
mkdir %{buildroot}/usr/lib
145178
mkdir %{buildroot}/usr/bin
146179
mkdir %{buildroot}/usr/lib/ebmc
147-
cp ${SRC}/src/ebmc/jcover %{buildroot}/usr/bin/
180+
cp ${SRC}/src/ebmc/ebmc %{buildroot}/usr/bin/
148181
149182
%files
150183
/usr/bin/ebmc
@@ -167,23 +200,6 @@ jobs:
167200
asset_name: ${{ steps.create_packages.outputs.deb_package_name }}
168201
asset_content_type: application/x-deb
169202

170-
get-version-information:
171-
name: Get Version Information
172-
runs-on: ubuntu-20.04
173-
outputs:
174-
version: ${{ steps.split-version.outputs._1 }}
175-
steps:
176-
- uses: jungwinter/split@v2
177-
id: split-ref
178-
with:
179-
msg: ${{ github.ref }}
180-
separator: '/'
181-
- uses: jungwinter/split@v2
182-
id: split-version
183-
with:
184-
msg: ${{ steps.split-ref.outputs._2 }}
185-
separator: '-'
186-
187203
perform-release:
188204
name: Perform Release
189205
runs-on: ubuntu-20.04

0 commit comments

Comments
 (0)