feat(interactive): Introduce imdb
as another example graph for Interactive
#4964
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: GraphScope GAIA CI | |
on: | |
# Trigger the workflow on push or pull request, but only for the main branch | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
paths: | |
- 'interactive_engine/**' | |
- '.github/workflows/gaia.yml' | |
pull_request: | |
branches: | |
- main | |
paths: | |
- 'interactive_engine/**' | |
- '.github/workflows/gaia.yml' | |
concurrency: | |
group: ${{ github.repository }}-${{ github.event.number || github.head_ref || github.sha }}-${{ github.workflow }} | |
cancel-in-progress: true | |
jobs: | |
gaia-test: | |
runs-on: [self-hosted, manylinux2014] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- name: Detect the tmate session | |
run: | | |
if grep -v "grep" .github/workflows/gaia.yml | grep "action-tmate"; then | |
echo 'WARNING!!!the self-hosted machine cannot run tmate session, please debug it manually' | |
exit 1 | |
fi | |
- uses: actions/cache@v4 | |
with: | |
path: ~/.m2/repository | |
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} | |
restore-keys: | | |
${{ runner.os }}-maven- | |
- uses: actions/cache@v4 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
~/.cache/sccache | |
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
- name: Rust Format Check | |
run: | | |
cd ${GITHUB_WORKSPACE}/interactive_engine/executor && ./check_format.sh | |
- name: Build Pegasus and Test | |
run: | | |
echo $(pwd) | |
cd ${GITHUB_WORKSPACE}/interactive_engine/executor/engine/pegasus | |
cargo build --verbose | |
cargo test --verbose | |
- name: Build Ir on Experimental Store and Csr Store | |
run: | | |
cd ${GITHUB_WORKSPACE}/interactive_engine/compiler | |
make build | |
make build rpc.target=start_rpc_server_csr | |
- name: Ir Unit Test | |
run: | | |
cd ${GITHUB_WORKSPACE}/interactive_engine/compiler && make test | |
- name: CommonType Unit Test | |
run: | | |
cd ${GITHUB_WORKSPACE}/interactive_engine/executor/common/dyn_type && cargo test | |
- name: Store Unit Test | |
run: | | |
cd ${GITHUB_WORKSPACE}/interactive_engine/executor/store/exp_store && cargo test | |
cd ${GITHUB_WORKSPACE}/interactive_engine/executor/store/groot && cargo test | |
# TODO: add ut in global_query | |
# cd ${GITHUB_WORKSPACE}/interactive_engine/executor/store/global_query && cargo test | |
- name: Ir With Features Test | |
run: | | |
cd ${GITHUB_WORKSPACE}/interactive_engine/executor/ir/integrated | |
cargo test --features=mimalloc | |
# TODO: With mimalloc, it may occur buffer overflow in groot store test sometimes. Currently, we do not use mimalloc (as default) in groot store. | |
# cd ${GITHUB_WORKSPACE}/interactive_engine/executor/store/groot | |
# cargo test --features=mimalloc | |
- name: Ir Integration Test on Experimental Store | |
run: | | |
. ${HOME}/.graphscope_env | |
git clone -b master --single-branch --depth=1 https://github.com/7br/gstest.git /tmp/gstest | |
cd ${GITHUB_WORKSPACE}/interactive_engine/compiler && ./ir_experimental_ci.sh | |
- name: Ir Integration Pattern Test on Experimental Store | |
run: | | |
cd ${GITHUB_WORKSPACE} | |
cd ${GITHUB_WORKSPACE}/interactive_engine/compiler && ./ir_experimental_advanced_ci.sh | |
- name: Ir Integration Test on Csr Store | |
run: | | |
cd ${GITHUB_WORKSPACE}/interactive_engine/compiler && ./ir_csr_ci.sh | |
- name: Ir Integration Pattern Test on Csr Store | |
run: | | |
cd ${GITHUB_WORKSPACE} | |
cd ${GITHUB_WORKSPACE}/interactive_engine/compiler && ./ir_csr_pattern_ci.sh | |
- name: Upload GIE log | |
if: failure() | |
uses: actions/upload-artifact@v4 | |
continue-on-error: true | |
with: | |
name: gie-log | |
path: /var/log/graphscope |