feat(core): add IntMapByDynamicHash V1 implement #2269
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: "hugegraph-ci" | |
on: | |
push: | |
branches: | |
- master | |
- 'release-*' | |
- 'test-*' | |
pull_request: | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 | |
env: | |
USE_STAGE: 'true' # Whether to include the stage repository. | |
TRAVIS_DIR: hugegraph-server/hugegraph-dist/src/assembly/travis | |
REPORT_DIR: target/site/jacoco | |
BACKEND: ${{ matrix.BACKEND }} | |
TRIGGER_BRANCH_NAME: ${{ github.ref_name }} | |
HEAD_BRANCH_NAME: ${{ github.head_ref }} | |
BASE_BRANCH_NAME: ${{ github.base_ref }} | |
TARGET_BRANCH_NAME: ${{ github.base_ref != '' && github.base_ref || github.ref_name }} | |
RELEASE_BRANCH: ${{ startsWith(github.ref_name, 'release-') || startsWith(github.ref_name, 'test-') }} | |
RAFT_MODE: ${{ startsWith(github.head_ref, 'test') || startsWith(github.head_ref, 'raft') }} | |
strategy: | |
fail-fast: false | |
matrix: | |
BACKEND: [ memory, rocksdb, hbase, cassandra, mysql, postgresql, scylladb ] | |
JAVA_VERSION: [ '8', '11' ] | |
steps: | |
- name: Install JDK ${{ matrix.JAVA_VERSION }} | |
uses: actions/setup-java@v3 | |
with: | |
java-version: ${{ matrix.JAVA_VERSION }} | |
distribution: 'zulu' | |
- name: Cache Maven packages | |
uses: actions/cache@v3 | |
with: | |
path: ~/.m2 | |
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} | |
restore-keys: ${{ runner.os }}-m2 | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 2 | |
- name: Compile | |
run: | | |
mvn clean compile -U -Dmaven.javadoc.skip=true -ntp | |
- name: Install JDK 8 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '8' | |
distribution: 'zulu' | |
- name: Prepare env and service | |
run: | | |
$TRAVIS_DIR/install-backend.sh $BACKEND | |
- name: Install JDK ${{ matrix.JAVA_VERSION }} | |
uses: actions/setup-java@v3 | |
with: | |
java-version: ${{ matrix.JAVA_VERSION }} | |
distribution: 'zulu' | |
- name: use staged maven repo settings | |
if: ${{ env.USE_STAGE == 'true' }} | |
run: | | |
cp $HOME/.m2/settings.xml /tmp/settings.xml | |
mv -vf .github/configs/settings.xml $HOME/.m2/settings.xml | |
- name: Run unit test | |
run: | | |
$TRAVIS_DIR/run-unit-test.sh $BACKEND | |
- name: Run core test | |
run: | | |
$TRAVIS_DIR/run-core-test.sh $BACKEND | |
- name: Run api test | |
run: | | |
$TRAVIS_DIR/run-api-test.sh $BACKEND $REPORT_DIR | |
# TODO: disable raft test in normal PR due to the always timeout problem | |
- name: Run raft test | |
if: ${{ env.RAFT_MODE == 'true' && env.BACKEND == 'rocksdb' }} | |
run: | | |
$TRAVIS_DIR/run-api-test-for-raft.sh $BACKEND $REPORT_DIR | |
- name: Run TinkerPop test | |
if: ${{ env.RELEASE_BRANCH == 'true' }} | |
run: | | |
$TRAVIS_DIR/run-tinkerpop-test.sh $BACKEND tinkerpop | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v3 | |
with: | |
file: ${{ env.REPORT_DIR }}/*.xml |