[close #772] Fix flaky integration tests #609
Workflow file for this run
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: CI | |
on: | |
pull_request: | |
push: | |
branches: | |
- master | |
jobs: | |
format: | |
name: Check Format | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up JDK 8 | |
uses: actions/setup-java@v2 | |
with: | |
java-version: '8.0' | |
distribution: 'adopt' | |
- run: | | |
./dev/javafmt | |
if [[ $(git diff) != "" ]] | |
then | |
echo "code format error, please run the following commands:" | |
echo " ./dev/javafmt" | |
exit 1 | |
fi | |
integration-test: | |
name: Integration Test - ${{ matrix.tikv_version }} | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
tikv_version: [v5.0.4] | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up JDK 8 | |
uses: actions/setup-java@v2 | |
with: | |
java-version: '8.0' | |
distribution: 'adopt' | |
- name: Install TiUP | |
run: | | |
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh | |
/home/runner/.tiup/bin/tiup install playground pd:${{ matrix.tikv_version }} tikv:${{ matrix.tikv_version }} | |
- name: Start TiUP Playground | |
run: | | |
# Start TiKV in APIV1TTL | |
touch tiup-v1ttl.log | |
/home/runner/.tiup/bin/tiup playground ${{ matrix.tikv_version }} --tag rawkv --mode tikv-slim --kv 1 --without-monitor --kv.config /home/runner/work/client-java/client-java/.github/config/tikv_rawkv.toml --pd.config /home/runner/work/client-java/client-java/.github/config/pd.toml --pd.port 2379 2>&1 >> tiup-v1ttl.log & | |
timeout 300 grep -q "PD Endpoints:" <(tail -f tiup-v1ttl.log) | |
cat tiup-v1ttl.log | |
echo "Wait for bootstrap" | |
sleep 15s | |
# Start TiKV in APIV1 | |
touch tiup-v1.log | |
/home/runner/.tiup/bin/tiup playground ${{ matrix.tikv_version }} --tag txnkv --mode tikv-slim --kv 1 --without-monitor --kv.config /home/runner/work/client-java/client-java/.github/config/tikv_txnkv.toml --pd.config /home/runner/work/client-java/client-java/.github/config/pd.toml --pd.port 2381 2>&1 >> tiup-v1.log & | |
timeout 300 grep -q "PD Endpoints:" <(tail -f tiup-v1.log) | |
cat tiup-v1.log | |
echo "Wait for bootstrap" | |
sleep 15s | |
# Get PD address | |
echo "RAWKV_PD_ADDRESSES=127.0.0.1:2379" >> $GITHUB_ENV | |
echo "TXNKV_PD_ADDRESSES=127.0.0.1:2381" >> $GITHUB_ENV | |
- name: Run Integration Test | |
run: mvn clean test | |
- name: Print TiKV logs | |
if: failure() | |
run: | | |
echo "RawKV TiKV logs" | |
cat /home/runner/.tiup/data/rawkv/tikv-0/tikv.log | |
echo "TxnKV TiKV logs" | |
cat /home/runner/.tiup/data/txnkv/tikv-0/tikv.log | |
- name: Upload coverage | |
uses: codecov/codecov-action@v2 | |
with: | |
files: ${{ github.workspace }}/target/site/jacoco/jacoco.xml | |
fail_ci_if_error: true | |
verbose: true |