...
For steps to manually publish the artefacts see How to upload and use maven jar artifactsAndroid client libraries on Maven/Sonatype
Github Actions CI
You can create a new Github action workflow file and name it release.yml with the following sample configuration used for building, signing and publishing the FHIR Core Quest application as a Github release.
NOTE: Remember to update the content with the module names corresponding to your project.
Code Block | ||
---|---|---|
| ||
# This workflow will build a Java project with Gradle
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
name: Snapshot Release
on:
push:
tags:
- v[0-9]+.[0-9]+.[0-9]+-SNAPSHOT
- v[0-9]+.[0-9]+.[0-9]+-[0-9a-zA-Z]+-SNAPSHOT
- v[0-9]+.[0-9]+.[0-9]+-[0-9a-zA-Z]+-[0-9a-zA-Z]+-SNAPSHOT
env:
NEXUS_USERNAME: ${{ secrets.NEXUS_USERNAME }}
NEXUS_PASSWORD: ${{ secrets.NEXUS_PASSWORD }}
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Cancel previous workflow runs
uses: styfle/cancel-workflow-action@0.9.1
with:
access_token: ${{ github.token }}
- name: Checkout 🛎️
uses: actions/checkout@v2
with:
fetch-depth: 2
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Run unit tests with Gradle
run: ./gradlew :opensrp-core:clean :opensrp-core:testDebugUnitTest --stacktrace
- name: Generate & upload library snapshot artifact AAR (Android Archive) file
run: ./gradlew :opensrp-core:uploadArchives -PmavenLocal=false --stacktrace -PsonatypeUsername=${{ secrets.NEXUS_USERNAME }} -PsonatypePassword=${{ secrets.NEXUS_PASSWORD }}
- name: Github Release
uses: softprops/action-gh-release@v1
with:
prerelease: ${{ contains(github.ref, '-alpha') || contains(github.ref, '-beta') }}
|
Publishing via TAG
As part of integrating Continuous Delivery(CD) into the development lifecycle, CI has been set up to trigger artefact generation. The configuration requires the tag to have a prefix in the glob pattern formats:v[0-9]+.[0-9]+.[0-9]+-SNAPSHOT
...