Skip to content

Commit

Permalink
Refactor actions
Browse files Browse the repository at this point in the history
  • Loading branch information
alanocallaghan committed Sep 11, 2024
1 parent 95cdc7c commit a575be7
Show file tree
Hide file tree
Showing 5 changed files with 128 additions and 0 deletions.
42 changes: 42 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Run gradle build

on:
push:
branches:
- "main"
pull_request:
branches:
- "main"
workflow_dispatch:
workflow_call:

permissions:
contents: read

jobs:
build:
runs-on: ubuntu-latest

steps:

- uses: actions/checkout@v4

- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'

- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v2

- name: Build with Gradle
uses: gradle/gradle-build-action@v3
with:
arguments: build

- uses: actions/upload-artifact@v4
with:
path: build/libs/*.jar
name: build
retention-days: 7
23 changes: 23 additions & 0 deletions .github/workflows/github_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Make draft release

on:
workflow_dispatch:

jobs:
build:
name: Run build
uses: ./.github/workflows/build.yml

release:
needs: build
permissions:
contents: write
runs-on: ubuntu-latest
steps:

- uses: actions/download-artifact@v4

- name: Release
env:
GH_TOKEN: ${{ github.token }}
run: gh release create --draft ${{ github.ref_name }} --title ${{ github.ref_name }} build/*.jar
43 changes: 43 additions & 0 deletions .github/workflows/maven.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Publish to SciJava Maven

on:
workflow_call:
inputs:
release:
required: false
type: boolean
default: false

jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- uses: actions/setup-java@v3
with:
java-version: '21'
distribution: 'temurin'

- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@e6e38bacfdf1a337459f332974bb2327a31aaf4b

- name: Add release flag if input variable is set
if: ${{ inputs.release }}
shell: bash
run: |
echo "RELEASE_FLAG='-P release=true'" >> $GITHUB_ENV
- name: Publish snapshot
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: publish -P toolchain=21 $RELEASE_FLAG
env:
MAVEN_USER: ${{ secrets.MAVEN_USER }}
MAVEN_PASS: ${{ secrets.MAVEN_PASS }}
- uses: actions/upload-artifact@v3
if: ${{ inputs.release }}
with:
name: ${{ github.event.repository.name }}-release-jar
path: build/libs
retention-days: 7
11 changes: 11 additions & 0 deletions .github/workflows/maven_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: Publish release to SciJava Maven

on:
workflow_dispatch:

jobs:
build:
name: Publish release
uses: ./.github/workflows/maven.yml
with:
release: true
9 changes: 9 additions & 0 deletions .github/workflows/maven_snapshot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
name: Publish snapshot to SciJava Maven

on:
workflow_dispatch:

jobs:
build:
name: Publish snapshot
uses: ./.github/workflows/maven.yml

0 comments on commit a575be7

Please sign in to comment.