| ## --------------------------------------------------------------------------- |
| ## Licensed to the Apache Software Foundation (ASF) under one or more |
| ## contributor license agreements. See the NOTICE file distributed with |
| ## this work for additional information regarding copyright ownership. |
| ## The ASF licenses this file to You under the Apache License, Version 2.0 |
| ## (the "License"); you may not use this file except in compliance with |
| ## the License. You may obtain a copy of the License at |
| ## |
| ## http://www.apache.org/licenses/LICENSE-2.0 |
| ## |
| ## Unless required by applicable law or agreed to in writing, software |
| ## distributed under the License is distributed on an "AS IS" BASIS, |
| ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ## See the License for the specific language governing permissions and |
| ## limitations under the License. |
| ## --------------------------------------------------------------------------- |
| |
| name: master pr build |
| |
| on: |
| pull_request: |
| branches: |
| - master |
| - 0.7.x |
| |
| env: |
| MAVEN_OPTS: -Xmx4g -Xms1g -Dhttp.keepAlive=false -Dmaven.wagon.http.pool=false -Dmaven.wagon.http.retryHandler.count=3 |
| |
| jobs: |
| mvn: |
| timeout-minutes: 180 |
| runs-on: ubuntu-20.04 |
| if: github.repository == 'apache/servicecomb-pack' |
| strategy: |
| matrix: |
| java: [ '8', '11' ] |
| fail-fast: false |
| steps: |
| - uses: actions/checkout@v2 |
| with: |
| persist-credentials: false |
| - name: Set up JDK ${{ matrix.java }} |
| uses: actions/setup-java@v1 |
| with: |
| java-version: ${{ matrix.java }} |
| - name: Cache Maven Repository |
| uses: actions/cache@v2 |
| with: |
| path: | |
| ~/.m2/repository/ |
| !~/.m2/repository/org/apache/servicecomb |
| key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} |
| restore-keys: ${{ runner.os }}-m2 |
| - name: Show the first log message |
| run: git log -n1 |
| - name: Build and test |
| if: ${{ success() }} |
| run: ./mvnw clean install -Pdocker -B |
| - name: Upload unit test results |
| if: ${{ failure() }} |
| uses: actions/upload-artifact@v2 |
| with: |
| name: surefire-reports |
| path: ./**/target/surefire-reports/ |
| if-no-files-found: ignore |
| - name: Verify demo |
| if: ${{ success() }} |
| run: ./mvnw clean verify -f demo -Pdemo -Pdocker -Ddocker.useColor=false -Ddocker.showLogs -B |
| - name: Verify Acceptance tests |
| if: ${{ success() }} |
| run: ./mvnw clean verify -f acceptance-tests -Pdemo -Pdocker -Ddocker.useColor=false -Ddocker.showLogs -B |