Skip to content

Commit 872c7cf

Browse files
Add release tag workflow
Signed-off-by: Paul Wagner <paultristanwagner@gmail.com>
1 parent 0d1efd4 commit 872c7cf

File tree

3 files changed

+62
-12
lines changed

3 files changed

+62
-12
lines changed

.github/workflows/maven.yml

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,24 @@ on:
1111

1212
jobs:
1313
build:
14-
1514
runs-on: ubuntu-latest
1615

1716
steps:
18-
- uses: actions/checkout@v2
17+
- name: Checkout repository
18+
uses: actions/checkout@v4
19+
1920
- name: Set up JDK 16
20-
uses: actions/setup-java@v2
21+
uses: actions/setup-java@v4
2122
with:
2223
java-version: '16'
2324
distribution: 'adopt'
2425
cache: maven
26+
2527
- name: Build with Maven
2628
run: mvn -B package --file pom.xml
29+
30+
- name: Upload artifact
31+
uses: actions/upload-artifact@v4
32+
with:
33+
name: satchecking
34+
path: target/satchecking-1.0-SNAPSHOT.jar

.github/workflows/release_tag.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Release Tag
2+
3+
on:
4+
push:
5+
tags:
6+
- v*
7+
8+
permissions:
9+
contents: write
10+
11+
jobs:
12+
build:
13+
uses: ./.github/workflows/maven.yml
14+
release-tag:
15+
name: Release Tag
16+
needs: build
17+
runs-on: ubuntu-22.04
18+
steps:
19+
- name: Download artifact
20+
uses: actions/download-artifact@v4
21+
with:
22+
name: satchecking
23+
- name: Rename artifact
24+
env:
25+
tag: ${{ github.ref_name }}
26+
run: mv satchecking-*.jar satchecking-v${tag#v}.jar
27+
- name: Create release
28+
env:
29+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
30+
tag: ${{ github.ref_name }}
31+
run: |
32+
gh release create "$tag" satchecking-v${tag#v}.jar \
33+
--repo="$GITHUB_REPOSITORY" \
34+
--title="v${tag#v}"

README.md

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,12 @@ The techniques used here are introduced in the RWTH University
55
lecture '[Satisfiability checking](https://ths.rwth-aachen.de/teaching/winter-term-2021-2022/lecture-satisfiability-checking/)'
66
by Prof. Dr. Erika Ábrahám.
77

8-
# How to build and run the project
9-
Clone the git repository:
10-
`git clone https://github.com/paultristanwagner/satisfiability-checking.git`
11-
Navigate into the created directory:
12-
`cd satisfiability-checking`
13-
Let Maven build the project:
14-
`mvn package`
15-
Run the project:
16-
`java -jar target/satchecking-1.0-SNAPSHOT.jar`
8+
# How to run the project
9+
Under [Releases](https://github.com/paultristanwagner/satisfiability-checking/releases) you can find the latest version of the project.
10+
Download the jar file and run it with the following command: <br>
11+
```
12+
java -jar satchecking-v1.0.0.jar
13+
```
1714
Now you should see the command prompt indicated by a `>` symbol.
1815

1916
# SMT solver
@@ -172,3 +169,14 @@ UNSAT! (feasible, but unbounded)
172169
Solution: x=-1/2;
173170
Time: 0ms
174171
```
172+
173+
## Optional: Build the project from source
174+
Clone the git repository:
175+
`git clone https://github.com/paultristanwagner/satisfiability-checking.git`
176+
Navigate into the created directory:
177+
`cd satisfiability-checking`
178+
Let Maven build the project:
179+
`mvn package`
180+
Run the project:
181+
`java -jar target/satchecking-1.0-SNAPSHOT.jar`
182+
Now you should see the command prompt indicated by a `>` symbol.

0 commit comments

Comments
 (0)