blob: ac28f8fc307783b1d80f83ff6c62ecc799c6336b [file] [log] [blame]
#
# 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: CI - Unit - Flaky
on:
pull_request:
branches:
- master
push:
branches:
- branch-*
jobs:
unit-test-flaky:
name:
runs-on: ubuntu-latest
timeout-minutes: 120
steps:
- name: checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
ref: ${{ github.event.pull_request.head.sha }}
- name: Check if this pull request only changes documentation
id: docs
run: echo "::set-output name=changed_only::no"
- name: Set up JDK 1.8
uses: actions/setup-java@v1
if: steps.docs.outputs.changed_only == 'no'
with:
java-version: 1.8
- name: Set up Maven
uses: apache/pulsar-test-infra/setup-maven@master
if: steps.docs.outputs.changed_only == 'no'
with:
maven-version: 3.6.1
- name: build the project
if: steps.docs.outputs.changed_only == 'no'
run: mvn -B clean install -DskipTests
- name: run PersistentTransactionBuffer test
if: steps.docs.outputs.changed_only == 'no'
run: mvn -B -pl pulsar-broker -Dorg.slf4j.simpleLogger.defaultLogLevel=ERROR clean install -Dtest=PersistentTransactionBufferTest -DfailIfNoTests=false -fn
- name: run ServerCnx test
if: steps.docs.outputs.changed_only == 'no'
run: mvn -B -pl pulsar-broker -Dorg.slf4j.simpleLogger.defaultLogLevel=ERROR clean install -Dtest=ServerCnxTest -DfailIfNoTests=false -fn
- name: run MessagePublishThrottling test
if: steps.docs.outputs.changed_only == 'no'
run: mvn -B -pl pulsar-broker -Dorg.slf4j.simpleLogger.defaultLogLevel=ERROR clean install -Dtest=MessagePublishThrottlingTest -DfailIfNoTests=false -fn
- name: run PrimitiveSchema test
if: steps.docs.outputs.changed_only == 'no'
run: mvn -B -pl pulsar-client -Dorg.slf4j.simpleLogger.defaultLogLevel=ERROR clean install -Dtest=PrimitiveSchemaTest -DfailIfNoTests=false -fn
- name: run BlobStoreManagedLedgerOffloaderTest
if: steps.docs.outputs.changed_only == 'no'
run: mvn -B -pl tiered-storage/jcloud -Dorg.slf4j.simpleLogger.defaultLogLevel=ERROR clean install -Dtest=BlobStoreManagedLedgerOffloaderTest -DfailIfNoTests=false -fn
- name: run unit tests
if: steps.docs.outputs.changed_only == 'no'
run: mvn -B -Dorg.slf4j.simpleLogger.defaultLogLevel=ERROR test '-Dtest=AdminApiOffloadTest,AdminApiSchemaValidationEnforced,V1_AdminApiTest2,PulsarFunctionE2ETest,MessageIdSerialization,AdminApiTest2,PulsarFunctionLocalRunTest,PartitionedProducerConsumerTest,KafkaProducerSimpleConsumerTest,ProxyTest' -DfailIfNoTests=false -fn
- name: package surefire artifacts
if: failure()
run: |
rm -rf artifacts
mkdir artifacts
find . -type d -name "*surefire*" -exec cp --parents -R {} artifacts/ \;
zip -r artifacts.zip artifacts
- uses: actions/upload-artifact@master
name: upload surefire-artifacts
if: failure()
with:
name: surefire-artifacts
path: artifacts.zip