Skip to content

Commit b99619e

Browse files
include sha256 sums of artifacts in release notes
1 parent a45630e commit b99619e

File tree

3 files changed

+55
-11
lines changed

3 files changed

+55
-11
lines changed

.github/release.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# .github/release.yml
2+
# see https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes#configuring-automatically-generated-release-notes
3+
4+
changelog:
5+
exclude:
6+
authors:
7+
- cryptobot
8+
- dependabot
9+
- github-actions
10+
categories:
11+
- title: What's New 🎉
12+
labels:
13+
- enhancement
14+
- title: Bugfixes 🐛
15+
labels:
16+
- bug
17+
- title: Other Changes 📎
18+
labels:
19+
- "*"
20+
exclude:
21+
labels:
22+
- bug
23+
- enhancement

.github/workflows/build.yml

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ jobs:
2525
if: startsWith(github.ref, 'refs/tags/')
2626
run: ./mvnw versions:set --file ./pom.xml -DnewVersion=${GITHUB_REF##*/}
2727
- name: Build and Test
28-
id: buildAndTest
2928
run: >
3029
./mvnw -B verify
3130
jacoco:report
@@ -41,12 +40,30 @@ jobs:
4140
with:
4241
name: artifacts
4342
path: target/*.jar
43+
- name: Calculate Checksums
44+
id: checksums
45+
run: |
46+
SHA256SUMS=$(shasum -a256 target/*.jar)
47+
echo "sha256=${SHA256SUMS}" >> $GITHUB_OUTPUT
4448
- name: Create Release
45-
uses: actions/create-release@v1 # NOTE: action is unmaintained and archived
4649
if: startsWith(github.ref, 'refs/tags/')
47-
env:
48-
GITHUB_TOKEN: ${{ secrets.CRYPTOBOT_RELEASE_TOKEN }} # release as "cryptobot"
50+
uses: softprops/action-gh-release@v1
4951
with:
50-
tag_name: ${{ github.ref }}
51-
release_name: Release ${{ github.ref }}
52-
prerelease: true
52+
token: ${{ secrets.CRYPTOBOT_RELEASE_TOKEN }}
53+
body: |-
54+
## Maven Coordinates
55+
```xml
56+
<dependency>
57+
<groupId>org.cryptomator</groupId>
58+
<artifactId>siv-mode</artifactId>
59+
<version>${{ github.ref_name }}</version>
60+
</dependency>
61+
```
62+
63+
## Artifact Checksums
64+
```txt
65+
${{ steps.checksums.outputs.sha256 }}
66+
```
67+
68+
See [README.md](../#reproducible-builds) section regarding reproducing this build.
69+
generate_release_notes: true

README.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public void encryptWithAssociatedData() {
5353
</dependencies>
5454
```
5555

56-
## JPMS
56+
## Java Module
5757

5858
From version 1.3.2 onwards this library is an explicit module with the name `org.cryptomator.siv`. You can use it by adding the following line to your `module-info.java`.
5959

@@ -63,11 +63,15 @@ requires org.cryptomator.siv;
6363

6464
Because BouncyCastle classes are shaded, this library only depends on `java.base`.
6565

66-
## Building
66+
## Reproducible Builds
6767

68-
This is a Maven project. To build it, run `./mvnw clean install`.
68+
This is a Maven project that can be built using `mvn install`. However, if you want to build this reproducibly, please make sure:
6969

70-
Requires JDK 11.0.3 or newer at build time due to JPMS support.
70+
1. Use the same build environment
71+
* The same [JDK as our CI builds](https://github.com/cryptomator/siv-mode/blob/develop/.github/workflows/build.yml#L15-L16)
72+
* Ideally the same same arch and OS (x86_64 Linux)
73+
* Same locale (en_US) and linebreaks (POSIX)
74+
2. Use `./mvnw install` instead (or `./mvnw verify` or `./mvnw package -DskipTests`, depending on your intentions)
7175

7276
## License
7377
Distributed under the MIT X Consortium license. See the LICENSE file for more info.

0 commit comments

Comments
 (0)