From: Abhinay Agarwal Date: Sun, 14 Feb 2021 13:45:11 +0530 Subject: Release to Maven Central using Github Actions --- Release to Maven Central using Github Actions --- --- 'a/.github/workflows/build.yml' +++ b/.github/workflows/build.yml @@ -24,4 +24,15 @@ jobs: - name: Verify project run: mvn clean verify -# TODO: Deploy Snapshots + - name: Configure GIT + run: | + git config user.name "${{ github.event.head_commit.committer.name }}" + git config user.email "${{ github.event.head_commit.committer.email }}" + + - name: Deploy snapshots + run: | + mvn deploy -DskipTests=true -Dgpg.skip + with: + server-id: ossrh + server-username: ${{ secrets.SONATYPE_USERNAME }} + server-password: ${{ secrets.SONATYPE_PASSWORD }} \ No newline at end of file --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,42 @@ +name: Release +on: + push: + tags: + - '*' + +jobs: + build: + name: Build + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Setup Java 11 + uses: actions/setup-java@v1 + with: + java-version: 11 + + - name: Configure GIT + run: | + git config user.name "${{ github.event.head_commit.committer.name }}" + git config user.email "${{ github.event.head_commit.committer.email }}" + + - name: Release artifacts + run: | + mvn deploy -DskipTests=true -B -U -Prelease + with: + server-id: ossrh + server-username: ${{ secrets.SONATYPE_USERNAME }} + server-password: ${{ secrets.SONATYPE_PASSWORD }} + gpg-private-key: ${{ secrets.GPG_PRIVATE_KEY }} + gpg-passphrase: ${{ secrets.GPG_PASSPHRASE }} + + - name: Update new version + run: | + TAG=${GITHUB_REF/refs\/tags\//} + newVersion=${TAG%.*}.$((${TAG##*.} + 1)) + mvn versions:set -DnewVersion=$newVersion-SNAPSHOT -DgenerateBackupPoms=false + git commit pom.xml -m "Prepare development of $newVersion" + git push https://${GITHUB_ACTOR}:${{ secrets.GITHUB_TOKEN }}@github.com/${GITHUB_REPOSITORY} HEAD:master \ No newline at end of file --- 'a/README.md' +++ b/README.md @@ -1,9 +1,8 @@ -# util +# Stream-Pi Utilities Library ![version](https://img.shields.io/badge/Version-1.0.0-green) -This package contains the shared code between Server and Client, -like Alerts, ComboBox, etc. +Repository contains controls like Alerts, ComboBox, etc. used in both Server and Client. ## Prerequisites --- 'a/pom.xml' +++ b/pom.xml @@ -6,74 +6,166 @@ com.stream-pi util - 1.0.0-SNAPSHOT + 0.0.1-SNAPSHOT https://stream-pi.com/ - - - - org.apache.maven.plugins - maven-jar-plugin - 3.1.0 - - - test-jar - package - - test-jar - - - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.8.1 - - 11 - - - - - UTF-8 11 - 11.5.0 - 11.5.0 + 16-ea+6 + 11.5.0 - 16-ea+6 + 2.2.1 + 3.1.0 + 1.6 - org.kordamp.ikonli - ikonli-fontawesome5-pack - ${IkonliFA5PackVersion} - - - org.openjfx javafx-controls - ${JavaFXVersion} + ${javafx.version} - - org.openjfx - javafx-base - ${JavaFXVersion} + org.kordamp.ikonli + ikonli-javafx + ${ikonli.version} - org.kordamp.ikonli - ikonli-javafx - ${IkonliVersion} + ikonli-fontawesome5-pack + ${ikonli.version} - + + + + org.apache.maven.plugins + maven-jar-plugin + 3.1.0 + + + test-jar + package + + test-jar + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + + + + + + release + + + + org.apache.maven.plugins + maven-source-plugin + 2.2.1 + + + attach-sources + + jar-no-fork + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + ${javadoc.plugin.version} + + + attach-javadocs + + jar + + + + + 8 + + + + org.apache.maven.plugins + maven-gpg-plugin + ${gpg.plugin.version} + + + sign-artifacts + verify + + sign + + + + --pinentry-mode + loopback + + + + + + + + + + + + Stream Pi + https://www.stream-pi.com + + + + GitHub + https://github.com/Stream-Pi/util/issues + + + + + GPL-3.0 License + https://www.gnu.org/licenses/gpl-3.0.en.html + repo + + + + + + Debayan Sutradhar + debayansutradhar3@gmail.com + Stream Pi + https://www.stream-pi.com + + + + + https://github.com/stream-pi/util + scm:git:git://github.com/stream-pi/util.git + scm:git:ssh://git@github.com:stream-pi/util.git + + + + + ossrh + https://oss.sonatype.org/content/repositories/snapshots + + + ossrh + https://oss.sonatype.org/service/local/staging/deploy/maven2/ + + \ No newline at end of file