1+ name : Release for JitPack
2+
3+ on :
4+ workflow_dispatch :
5+ inputs :
6+ version :
7+ description : ' Release version (e.g., 1.2.0)'
8+ required : true
9+ type : string
10+ release_notes :
11+ description : ' Release notes'
12+ required : false
13+ type : string
14+ default : ' New release'
15+
16+ jobs :
17+ release :
18+ runs-on : ubuntu-latest
19+
20+ permissions :
21+ contents : write
22+
23+ steps :
24+ - name : Checkout code
25+ uses : actions/checkout@v4
26+
27+ - name : Set up JDK 11
28+ uses : actions/setup-java@v4
29+ with :
30+ java-version : ' 11'
31+ distribution : ' temurin'
32+
33+ - name : Update version in build.gradle.kts
34+ run : |
35+ # Remove -SNAPSHOT suffix and set the release version
36+ sed -i "s/version = \".*\"/version = \"${{ github.event.inputs.version }}\"/" build.gradle.kts
37+
38+ # Show the updated version
39+ echo "Updated version to:"
40+ grep "^version = " build.gradle.kts
41+
42+ - name : Build with Gradle
43+ run : |
44+ chmod +x ./gradlew
45+ ./gradlew clean build -x test
46+
47+ - name : Run tests
48+ run : ./gradlew test
49+
50+ - name : Build JAR artifacts
51+ run : |
52+ ./gradlew jar
53+ ./gradlew androidJar
54+ ./gradlew jvmJar
55+ ./gradlew sourcesJar
56+ ./gradlew javadocJar
57+
58+ - name : List built artifacts
59+ run : |
60+ echo "Built artifacts:"
61+ ls -la build/libs/
62+
63+ - name : Create Git tag
64+ run : |
65+ git config user.name "GitHub Actions"
66+ git config user.email "actions@github.com"
67+ git tag -a "${{ github.event.inputs.version }}" -m "Release ${{ github.event.inputs.version }}"
68+ git push origin "${{ github.event.inputs.version }}"
69+
70+ - name : Create GitHub Release
71+ uses : softprops/action-gh-release@v1
72+ with :
73+ tag_name : ${{ github.event.inputs.version }}
74+ name : Release ${{ github.event.inputs.version }}
75+ body : |
76+ ## Release ${{ github.event.inputs.version }}
77+
78+ ${{ github.event.inputs.release_notes }}
79+
80+ ### JitPack Usage
81+
82+ Add JitPack repository to your build.gradle:
83+ ```gradle
84+ repositories {
85+ maven { url 'https://jitpack.io' }
86+ }
87+ ```
88+
89+ Add dependency:
90+ ```gradle
91+ dependencies {
92+ implementation 'com.github.unicitynetwork:java-state-transition-sdk:${{ github.event.inputs.version }}'
93+ }
94+ ```
95+
96+ ### Assets
97+ - Main JAR: `java-state-transition-sdk-${{ github.event.inputs.version }}.jar`
98+ - Android JAR: `java-state-transition-sdk-${{ github.event.inputs.version }}-android.jar`
99+ - JVM JAR: `java-state-transition-sdk-${{ github.event.inputs.version }}-jvm.jar`
100+ - Sources: `java-state-transition-sdk-${{ github.event.inputs.version }}-sources.jar`
101+ - Javadoc: `java-state-transition-sdk-${{ github.event.inputs.version }}-javadoc.jar`
102+ files : |
103+ build/libs/*.jar
104+ draft : false
105+ prerelease : false
0 commit comments