name: CI on: workflow_dispatch: push: paths-ignore: - '.github/**' jobs: build: runs-on: ubuntu-latest strategy: fail-fast: false matrix: include: - nickname: linux jdk8 java: 8 disable-samples: true - nickname: linux jdk11 java: 11 disable-samples: false - nickname: linux jdk17 java: 17 disable-samples: false name: CI Build ${{ matrix.nickname }} steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v2 with: distribution: adopt java-version: ${{ matrix.java }} cache: maven - name: Build env: DISABLE_SAMPLES: ${{ matrix.disable-samples }} run: ./mvnw -B package publish: runs-on: ubuntu-latest if: github.repository_owner == 'spring-projects' needs: [build] steps: - uses: actions/checkout@v2 - uses: jvalkeal/setup-maven@v1 with: maven-version: 3.8.4 - uses: actions/setup-java@v2 with: distribution: adopt java-version: 8 cache: maven - uses: jfrog/setup-jfrog-cli@v2 with: version: 1.50.0 env: JF_ARTIFACTORY_SPRING: ${{ secrets.JF_ARTIFACTORY_SPRING }} - name: Configure JFrog Cli run: | jfrog rt mvnc \ --server-id-deploy repo.spring.io \ --repo-deploy-releases release \ --repo-deploy-snapshots snapshot echo JFROG_CLI_BUILD_NAME=spring-shell-21x >> $GITHUB_ENV echo JFROG_CLI_BUILD_NUMBER=$GITHUB_RUN_NUMBER >> $GITHUB_ENV - name: Build and Publish env: DISABLE_SAMPLES: true run: | jfrog rt mvn clean install -B -DskipTests jfrog rt build-publish