Feat/document headers method level protocol listeners (#654) #4
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: springwolf-plugins | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
types: [ opened, synchronize, ready_for_review ] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
strategy: | |
fail-fast: false | |
matrix: | |
plugin: [ "amqp", "cloud-stream", "jms", "kafka", "sns", "sqs" ] | |
env: | |
plugin: springwolf-plugins/springwolf-${{ matrix.plugin }}-plugin | |
example: springwolf-examples/springwolf-${{ matrix.plugin }}-example | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'temurin' | |
java-version: '17' | |
- name: Setup Gradle | |
uses: gradle/actions/setup-gradle@v3 | |
- name: Check formatting (before running tests) on plugin | |
run: ./gradlew -p ${{ env.plugin }} spotlessCheck | |
- name: Check formatting (before running tests) on example | |
run: ./gradlew -p ${{ env.example }} spotlessCheck | |
- name: Run unit tests | |
run: ./gradlew -p ${{ env.plugin }} test | |
- name: Run integration tests | |
run: ./gradlew -p ${{ env.example }} test | |
- name: Run build, check, analyzeDependencies on plugin | |
run: ./gradlew -p ${{ env.plugin }} build | |
- name: Run build, check, analyzeDependencies on example | |
run: ./gradlew -p ${{ env.example }} build | |
- name: Publish docker image | |
if: github.ref == 'refs/heads/master' | |
run: ./gradlew -p ${{ env.example }} dockerBuildImage dockerPushImage | |
env: | |
ORG_GRADLE_PROJECT_SNAPSHOT: true | |
ORG_GRADLE_PROJECT_DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} | |
ORG_GRADLE_PROJECT_DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Publish package | |
if: github.ref == 'refs/heads/master' | |
run: ./gradlew -p ${{ env.plugin }} publish | |
env: | |
ORG_GRADLE_PROJECT_SNAPSHOT: true | |
ORG_GRADLE_PROJECT_SIGNINGKEY: ${{secrets.ORG_GRADLE_PROJECT_SIGNINGKEY}} | |
ORG_GRADLE_PROJECT_SIGNINGPASSWORD: ${{secrets.ORG_GRADLE_PROJECT_SIGNINGPASSWORD}} | |
ORG_GRADLE_PROJECT_MAVEN_URL: https://s01.oss.sonatype.org/content/repositories/snapshots/ | |
ORG_GRADLE_PROJECT_MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }} | |
ORG_GRADLE_PROJECT_MAVEN_PASSWORD: ${{ secrets.MAVEN_PASSWORD }} |