Skip to content

Merge pull request #353 from gocd-contrib/dependabot/github_actions/g… #251

Merge pull request #353 from gocd-contrib/dependabot/github_actions/g…

Merge pull request #353 from gocd-contrib/dependabot/github_actions/g… #251

name: Test and Release
on:
push:
branches: [ master ]
workflow_dispatch:
inputs:
prerelease:
description: 'The release should be an experimental release'
default: 'NO'
required: true
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
docker-version: # See https://endoflife.date/docker-engine / https://download.docker.com/linux/static/stable/x86_64/
- "25.0" # 2024-01 --> EOL ?
- "29" # 2025-11 --> EOL ?
fail-fast: false
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Set up JDK
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
with:
java-version: 21
distribution: temurin
cache: gradle
- name: Set up Docker
uses: docker/setup-docker-action@1a6edb0ba9ac496f6850236981f15d8f9a82254d # v5.0.0
with:
version: 'type=image,tag=${{ matrix.docker-version }}'
set-host: 'true'
- run: docker swarm init
- name: Test with Gradle
run: ./gradlew assemble check
githubRelease:
needs: test
runs-on: ubuntu-latest
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@fe104658747b27e96e4f7e80cd0a94068e53901d # v2.16.1
with:
egress-policy: audit
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 0
- name: Set up JDK
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
with:
java-version: 21
distribution: temurin
cache: gradle
- name: Release with Gradle
run: ./gradlew githubRelease
env:
GITHUB_USER: "gocd-contrib"
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
PRERELEASE: "${{ github.event.inputs.prerelease }}"