1+ name : Nebula Publish
2+ on :
3+ push :
4+ tags :
5+ - v*.*.*
6+ - v*.*.*-rc.*
7+
8+ jobs :
9+ validatepluginpublication :
10+ runs-on : ubuntu-latest
11+ name : Gradle Plugin Publication Validation
12+ env :
13+ NETFLIX_OSS_SONATYPE_USERNAME : ${{ secrets.ORG_SONATYPE_USERNAME }}
14+ NETFLIX_OSS_SONATYPE_PASSWORD : ${{ secrets.ORG_SONATYPE_PASSWORD }}
15+ steps :
16+ - uses : actions/checkout@v4
17+ - name : Setup git user
18+ run : |
19+ git config --global user.name "Nebula Plugin Maintainers"
20+ git config --global user.email "nebula-plugins-oss@netflix.com"
21+ - name : Set up JDKs
22+ uses : actions/setup-java@v4
23+ with :
24+ distribution : ' zulu'
25+ java-version : |
26+ 11
27+ 21
28+ java-package : jdk
29+ - name : Setup Gradle
30+ uses : gradle/actions/setup-gradle@v5
31+ with :
32+ cache-overwrite-existing : true
33+ - name : Verify plugin publication
34+ if : (!contains(github.ref, '-rc.'))
35+ run : ./gradlew --stacktrace -Dgradle.publish.key=${{ secrets.gradlePublishKey }} -Dgradle.publish.secret=${{ secrets.gradlePublishSecret }} -Prelease.useLastTag=true final publishPlugin --validate-only -x check
36+ publish :
37+ if : github.event.base_ref == 'refs/heads/main' # tags must be pushed to main
38+ needs : validatepluginpublication
39+ runs-on : ubuntu-latest
40+ name : Gradle Build and Publish
41+ env :
42+ NETFLIX_OSS_SONATYPE_USERNAME : ${{ secrets.ORG_SONATYPE_USERNAME }}
43+ NETFLIX_OSS_SONATYPE_PASSWORD : ${{ secrets.ORG_SONATYPE_PASSWORD }}
44+ NETFLIX_OSS_SIGNING_KEY : ${{ secrets.ORG_SIGNING_KEY }}
45+ NETFLIX_OSS_SIGNING_PASSWORD : ${{ secrets.ORG_SIGNING_PASSWORD }}
46+ NETFLIX_OSS_REPO_USERNAME : ${{ secrets.ORG_NETFLIXOSS_USERNAME }}
47+ NETFLIX_OSS_REPO_PASSWORD : ${{ secrets.ORG_NETFLIXOSS_PASSWORD }}
48+ steps :
49+ - uses : actions/checkout@v4
50+ - name : Setup git user
51+ run : |
52+ git config --global user.name "Nebula Plugin Maintainers"
53+ git config --global user.email "nebula-plugins-oss@netflix.com"
54+ - name : Set up JDKs
55+ uses : actions/setup-java@v4
56+ with :
57+ distribution : ' zulu'
58+ java-version : |
59+ 11
60+ 21
61+ java-package : jdk
62+ - name : Setup Gradle
63+ uses : gradle/actions/setup-gradle@v5
64+ with :
65+ cache-overwrite-existing : true
66+ - name : Gradle build
67+ run : ./gradlew --stacktrace build
68+ - name : Publish candidate
69+ if : contains(github.ref, '-rc.')
70+ run : ./gradlew --info --stacktrace -Prelease.useLastTag=true candidate
71+ - name : Publish release
72+ if : (!contains(github.ref, '-rc.'))
73+ run : ./gradlew --info --stacktrace -Dgradle.publish.key=${{ secrets.gradlePublishKey }} -Dgradle.publish.secret=${{ secrets.gradlePublishSecret }} -Prelease.useLastTag=true final
0 commit comments