Skip to content

chore(deps): update weekly update (#13534) #134

chore(deps): update weekly update (#13534)

chore(deps): update weekly update (#13534) #134

name: Publish Servlet images for smoke tests
on:
push:
paths:
- "smoke-tests/images/servlet/**"
- ".github/workflows/publish-smoke-test-servlet-images.yml"
branches:
- main
workflow_dispatch:
permissions:
contents: read
jobs:
prepare:
runs-on: ubuntu-latest
outputs:
tag: ${{ steps.set-tag.outputs.TAG }}
steps:
- id: set-tag
name: Set tag
run: echo "TAG=$(date '+%Y%m%d').$GITHUB_RUN_ID" >> $GITHUB_OUTPUT
publish:
permissions:
contents: read
packages: write
needs: prepare
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash # this is needed for TAG construction below on Windows
strategy:
matrix:
os:
- windows-latest
- ubuntu-latest
smoke-test-server:
- jetty
- liberty
- payara
- tomcat
- tomee
- websphere
- wildfly
exclude:
- os: windows-latest
smoke-test-server: websphere
fail-fast: false
steps:
- name: Support long paths
run: git config --system core.longpaths true
if: matrix.os == 'windows-latest'
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Free disk space
if: matrix.os != 'windows-latest'
run: .github/scripts/gha-free-disk-space.sh
- name: Set up JDK for running Gradle
uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12 # v4.7.0
with:
distribution: temurin
java-version-file: .java-version
- name: Login to GitHub package registry
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Gradle cache
uses: gradle/actions/setup-gradle@94baf225fe0a508e581a564467443d0e2379123b # v4.3.0
with:
# only push cache for one matrix option per OS since github action cache space is limited
cache-read-only: ${{ matrix.smoke-test-suite != 'tomcat' }}
- name: Build Linux docker images
if: matrix.os != 'windows-latest'
run: ./gradlew :smoke-tests:images:servlet:buildLinuxTestImages pushMatrix -PextraTag=${{ needs.prepare.outputs.tag }} -PsmokeTestServer=${{ matrix.smoke-test-server }}
- name: Build Windows docker images
if: matrix.os == 'windows-latest'
run: ./gradlew :smoke-tests:images:servlet:buildWindowsTestImages pushMatrix -PextraTag=${{ needs.prepare.outputs.tag }} -PsmokeTestServer=${{ matrix.smoke-test-server }}
workflow-notification:
permissions:
contents: read
issues: write
needs:
- publish
if: always()
uses: ./.github/workflows/reusable-workflow-notification.yml
with:
success: ${{ needs.publish.result == 'success' }}