DO NOT MERGE: Test CI #145
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: Integration tests | |
on: | |
pull_request: | |
branches: | |
- master | |
push: | |
branches: | |
- master | |
jobs: | |
integration-tests: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
pulsar: | |
- "datastax/lunastreaming:2.10_2.3" | |
- "apachepulsar/pulsar:2.10.2" | |
cassandra: | |
- cassandra_version: 3.0.27 | |
ccm_version: 3.0.27 | |
is_dse: false | |
- cassandra_version: 3.11.13 | |
ccm_version: 3.11.13 | |
is_dse: false | |
- cassandra_version: 4.0.4 | |
ccm_version: 4.0.4 | |
is_dse: false | |
- cassandra_version: dse-5.1 | |
ccm_version: 5.1.31 | |
is_dse: true | |
- cassandra_version: dse-6.0 | |
ccm_version: 6.0.18 | |
is_dse: true | |
- cassandra_version: dse-6.7 | |
ccm_version: 6.7.17 | |
is_dse: true | |
- cassandra_version: dse-6.8 | |
ccm_version: 6.8.24 | |
is_dse: true | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up JDK 8 | |
uses: actions/setup-java@v2 | |
with: | |
java-version: 8 | |
distribution: 'temurin' | |
- name: Save JDK8 path | |
run: | | |
export JDK8_PATH=$JAVA_HOME | |
echo "JDK8_PATH=$JDK8_PATH" >> $GITHUB_ENV | |
- name: Set up JDK 11 | |
uses: actions/setup-java@v2 | |
with: | |
java-version: 11 | |
distribution: 'temurin' | |
- name: Pre set up Python | |
run: | | |
#!/bin/bash | |
# This step is need to not make setup-python fails | |
set -e | |
echo """ | |
pyYaml | |
six | |
psutil | |
""" > requirements.txt | |
- name: Set up Python | |
uses: MatteoH2O1999/setup-python@v1 | |
with: | |
python-version: '2.7' | |
cache: 'pip' | |
allow-build: info | |
cache-build: true | |
- name: Setup CCM private | |
if: ${{ matrix.cassandra.is_dse }} | |
env: | |
CLONE_RIPTANO_CCM_SECRET: ${{secrets.CLONE_RIPTANO_CCM_SECRET}} | |
run: | | |
#!/bin/bash | |
set -e | |
git clone https://${CLONE_RIPTANO_CCM_SECRET}@github.com/riptano/ccm-private.git | |
cd ccm-private | |
pip install -r requirements.txt | |
./setup.py install | |
- name: Setup CCM | |
if: ${{ !matrix.cassandra.is_dse }} | |
run: | | |
#!/bin/bash | |
pip install ccm | |
- name: Cache local Maven repository | |
uses: actions/cache@v2 | |
with: | |
path: ~/.m2/repository | |
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} | |
restore-keys: | | |
${{ runner.os }}-maven- | |
- name: Build with JDK 11 | |
run: mvn -B clean install -DskipTests | |
- name: Run integration tests (pulsar-impl) | |
run: | | |
set -e | |
echo "Running tests, pulsar: ${{ matrix.pulsar }}, cassandra: ${{ matrix.cassandra.cassandra_version }}, ${{ matrix.cassandra.ccm_version }}, ${{ matrix.cassandra.is_dse }}" | |
PREV_IFS=$IFS | |
IFS=':' | |
read -ra PULSAR_FULL_IMAGE <<< "${{ matrix.pulsar }}" | |
IFS=$PREV_IFS | |
PULSAR_IMAGE=${PULSAR_FULL_IMAGE[0]} | |
PULSAR_IMAGE_VERSION=${PULSAR_FULL_IMAGE[1]} | |
if [[ "${{ matrix.cassandra.is_dse }}" == "true" ]]; then | |
export CCM_SERVER_TYPE=dse | |
export CCM_IS_DSE=true | |
export DSE_VERSION=${{ matrix.cassandra.ccm_version }} | |
else | |
export CCM_SERVER_TYPE=cassandra | |
export CCM_IS_DSE=false | |
fi | |
export CASSANDRA_VERSION=${{ matrix.cassandra.cassandra_version }} | |
export CCM_CASSANDRA_VERSION=${{ matrix.cassandra.ccm_version }} | |
export CCM_VERSION=${{ matrix.cassandra.ccm_version }} | |
mvn verify -Pmedium -pl pulsar-impl \ | |
-Ddsbulk.ccm.CCM_VERSION=$CCM_VERSION \ | |
-Ddsbulk.ccm.CCM_IS_DSE=$CCM_IS_DSE \ | |
-Ddsbulk.ccm.JAVA_HOME="$JDK8_PATH" \ | |
-Dpulsar.image=$PULSAR_IMAGE \ | |
-Dpulsar.image.version=$PULSAR_IMAGE_VERSION \ | |
-Dmax.ccm.clusters=1 \ | |
-DredirectTestOutputToFile=false || (echo "Build failed" && find "/tmp/" -name "debug.log" -exec cat {} + && find "/tmp/" -name "system.log" -exec cat {} + && exit 1) | |
- name: Run integration tests (tests) | |
run: | | |
echo "Running tests, pulsar: ${{ matrix.pulsar }}, cassandra: ${{ matrix.cassandra.cassandra_version }}, ${{ matrix.cassandra.ccm_version }}, ${{ matrix.cassandra.is_dse }}" | |
PREV_IFS=$IFS | |
IFS=':' | |
read -ra PULSAR_FULL_IMAGE <<< "${{ matrix.pulsar }}" | |
IFS=$PREV_IFS | |
PULSAR_IMAGE=${PULSAR_FULL_IMAGE[0]} | |
PULSAR_IMAGE_VERSION=${PULSAR_FULL_IMAGE[1]} | |
if [[ "${{ matrix.cassandra.is_dse }}" == "true" ]]; then | |
export CCM_SERVER_TYPE=dse | |
export CCM_IS_DSE=true | |
export DSE_VERSION=${{ matrix.cassandra.ccm_version }} | |
else | |
export CCM_SERVER_TYPE=cassandra | |
export CCM_IS_DSE=false | |
fi | |
export CASSANDRA_VERSION=${{ matrix.cassandra.cassandra_version }} | |
export CCM_CASSANDRA_VERSION=${{ matrix.cassandra.ccm_version }} | |
export CCM_VERSION=${{ matrix.cassandra.ccm_version }} | |
env | |
mvn verify -Pmedium -pl tests \ | |
-Ddsbulk.ccm.CCM_VERSION=$CCM_VERSION \ | |
-Ddsbulk.ccm.CCM_IS_DSE=$CCM_IS_DSE \ | |
-Ddsbulk.ccm.JAVA_HOME="$JDK8_PATH" \ | |
-Dpulsar.image=$PULSAR_IMAGE \ | |
-Dpulsar.image.version=$PULSAR_IMAGE_VERSION \ | |
-Dmax.ccm.clusters=1 \ | |
-DredirectTestOutputToFile=false |