2022-03-05 14:50:18 +00:00
name : Continuous integration
2023-12-05 11:52:09 +00:00
run-name : "CI run '${{ github.head_ref || github.ref_name }}'"
2022-03-05 14:50:18 +00:00
on :
2023-08-03 09:55:06 +00:00
workflow_dispatch :
2022-03-05 14:50:18 +00:00
push :
2023-08-03 09:55:06 +00:00
branches :
- main
2022-03-05 14:50:18 +00:00
pull_request :
2023-05-30 18:44:47 +00:00
merge_group :
2022-03-05 14:50:18 +00:00
2023-03-30 20:14:06 +00:00
defaults :
run :
shell : bash
2022-03-05 14:50:18 +00:00
jobs :
2023-04-17 13:27:32 +00:00
format :
name : Check format
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2022-03-05 14:50:18 +00:00
steps :
2023-04-17 13:27:32 +00:00
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-04-17 13:27:32 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-04-17 13:27:32 +00:00
components : rustfmt
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-04-17 13:27:32 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-06-19 22:35:19 +00:00
2023-08-03 09:55:06 +00:00
- name : Check format
2023-09-06 13:51:33 +00:00
run : cargo make ci-format
2023-04-17 13:27:32 +00:00
check :
name : Check workspace
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-04-17 13:27:32 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-04-17 13:27:32 +00:00
2022-03-05 14:50:18 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2022-07-13 09:28:08 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-03-31 19:12:10 +00:00
- name : Install dependencies
run : |
sudo apt-get -y update
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Check workspace
2023-09-06 13:51:33 +00:00
run : cargo make ci-check
2023-04-17 13:27:32 +00:00
2023-12-13 08:59:54 +00:00
check-dependencies :
name : Check dependencies
runs-on : ubuntu-latest
steps :
- name : Install stable toolchain
uses : dtolnay/rust-toolchain@stable
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-12-13 08:59:54 +00:00
components : rustfmt
- name : Checkout sources
uses : actions/checkout@v4
2024-01-23 10:03:25 +00:00
- name : Install cargo-deny
2024-03-05 11:50:57 +00:00
run : cargo install --debug --locked cargo-deny@0.14.11
2023-12-13 08:59:54 +00:00
2024-01-26 07:56:29 +00:00
- name : Install cargo-vet
run : cargo install --debug --locked cargo-vet
- name : Install cargo-acl
run : |
cargo install --debug --locked cargo-acl
sudo apt-get install -y bubblewrap
- name : Check dependencies for known issues
2024-01-23 10:03:25 +00:00
run : cargo deny check
2023-12-13 08:59:54 +00:00
2024-01-26 07:56:29 +00:00
- name : Check dependencies for untrusted sources
run : cargo vet
- name : Check dependencies for unauthorized access
2024-03-19 12:34:38 +00:00
env :
RUSTFLAGS : "--cfg surrealdb_unstable"
2024-01-26 07:56:29 +00:00
run : cargo acl -n
- name : Dependency check failure
if : failure()
run : |
echo "## :warning: Dependency check failed" >> $GITHUB_STEP_SUMMARY
echo "See instructions in the [supply chain security process](https://github.com/surrealdb/surrealdb/blob/main/supply-chain/README.md#Process)." >> $GITHUB_STEP_SUMMARY
2024-04-04 07:30:13 +00:00
check-fuzzing :
name : Check fuzzing
runs-on : ubuntu-latest
steps :
- name : Install stable toolchain
uses : dtolnay/rust-toolchain@stable
with :
toolchain : stable
components : rustfmt
- name : Checkout sources
uses : actions/checkout@v4
- name : Setup cache
uses : Swatinem/rust-cache@v2
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
- name : Check fuzzers
run : cargo build --manifest-path lib/fuzz/Cargo.toml
- name : Check OSS-Fuzz
uses : google/oss-fuzz/infra/cifuzz/actions/build_fuzzers@master
with :
oss-fuzz-project-name : surrealdb
language : rust
# Temporarily allow this step to fail
continue-on-error : true
2023-04-17 13:27:32 +00:00
check-wasm :
name : Check Wasm
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-04-17 13:27:32 +00:00
steps :
2022-03-05 14:50:18 +00:00
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-04-17 13:27:32 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-04-17 13:27:32 +00:00
targets : wasm32-unknown-unknown
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-04-17 13:27:32 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Check wasm
2023-09-06 13:51:33 +00:00
run : cargo make ci-check-wasm
2023-04-17 13:27:32 +00:00
clippy :
name : Check clippy
2023-11-01 13:58:20 +00:00
runs-on : ubuntu-latest
2023-04-17 13:27:32 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-04-17 13:27:32 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-04-17 13:27:32 +00:00
components : clippy
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-04-17 13:27:32 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-04-17 13:27:32 +00:00
- name : Install dependencies
run : |
sudo apt-get -y update
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Run clippy
2023-09-06 13:51:33 +00:00
run : cargo make ci-clippy
2023-04-17 13:27:32 +00:00
2023-06-10 20:30:37 +00:00
cli :
2023-08-03 14:59:05 +00:00
name : CLI integration tests
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-06-10 20:30:37 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-06-10 20:30:37 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-06-10 20:30:37 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-06-10 20:30:37 +00:00
- name : Install dependencies
run : |
sudo apt-get -y update
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Run CLI integration tests
2023-09-06 13:51:33 +00:00
run : cargo make ci-cli-integration
2024-01-10 16:43:56 +00:00
2023-08-18 07:16:13 +00:00
- name : Debug info
if : always()
run : |
set -x
free -m
df -h
ps auxf
cat /tmp/surrealdb.log || true
2024-01-10 16:43:56 +00:00
2023-07-19 14:35:56 +00:00
http-server :
2023-08-03 14:59:05 +00:00
name : HTTP integration tests
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-07-19 14:35:56 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-07-19 14:35:56 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-07-19 14:35:56 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-07-19 14:35:56 +00:00
- name : Install dependencies
run : |
sudo apt-get -y update
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Run HTTP integration tests
2023-09-06 13:51:33 +00:00
run : cargo make ci-http-integration
2024-01-23 10:03:25 +00:00
2023-12-12 13:51:43 +00:00
ml-support :
name : ML integration tests
runs-on : ubuntu-latest
steps :
- name : Install stable toolchain
uses : dtolnay/rust-toolchain@stable
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-12-12 13:51:43 +00:00
- name : Checkout sources
2024-03-18 09:29:19 +00:00
uses : actions/checkout@v4
2023-12-12 13:51:43 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
- name : Install dependencies
run : |
sudo apt-get -y update
- name : Install cargo-make
run : cargo install --debug --locked cargo-make
- name : Run ML integration tests
run : cargo make ci-ml-integration
2023-06-10 20:30:37 +00:00
2023-08-03 14:59:05 +00:00
ws-server :
name : WebSocket integration tests
runs-on : ubuntu-latest
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-08-03 14:59:05 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-08-03 14:59:05 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-08-03 14:59:05 +00:00
- name : Install dependencies
run : |
sudo apt-get -y update
2023-08-14 15:36:27 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-14 15:36:27 +00:00
- name : Run WS integration tests
2023-09-06 13:51:33 +00:00
run : cargo make ci-ws-integration
2023-08-03 14:59:05 +00:00
2023-04-17 13:27:32 +00:00
test :
name : Test workspace
2024-02-28 14:52:44 +00:00
runs-on : [ "self-hosted" , "arm64" , "builder" ]
2023-04-17 13:27:32 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-04-17 13:27:32 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-04-17 13:27:32 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-04-17 13:27:32 +00:00
- name : Install dependencies
run : |
sudo apt-get -y update
2023-08-03 09:55:06 +00:00
- name : Install cargo-llvm-cov
uses : taiki-e/install-action@cargo-llvm-cov
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Test workspace + coverage
2023-09-06 13:51:33 +00:00
run : cargo make ci-workspace-coverage
2023-06-23 19:21:02 +00:00
- name : Upload coverage report
2024-03-18 09:29:19 +00:00
uses : actions/upload-artifact@v4
2023-08-21 12:51:14 +00:00
timeout-minutes : 1
continue-on-error : true
2023-06-23 19:21:02 +00:00
with :
2023-08-03 09:55:06 +00:00
name : code-coverage-report
path : target/llvm-cov/html/
retention-days : 5
2023-04-17 13:27:32 +00:00
2024-01-10 16:43:56 +00:00
test-parser :
name : Test workspace with experimental parser
2024-02-28 14:52:44 +00:00
runs-on : [ "self-hosted" , "arm64" , "builder" ]
2024-01-10 16:43:56 +00:00
steps :
- name : Install stable toolchain
uses : dtolnay/rust-toolchain@stable
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2024-01-10 16:43:56 +00:00
- name : Checkout sources
uses : actions/checkout@v4
- name : Setup cache
uses : Swatinem/rust-cache@v2
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
- name : Install dependencies
run : |
sudo apt-get -y update
- name : Free up some disk space
run : |
(set -x; df -h)
# Free up some disk space by removing unused files
(set -x; sudo rm -rf /imagegeneration || true)
(set -x; sudo rm -rf /opt/az || true)
(set -x; sudo rm -rf /opt/hostedtoolcache || true)
(set -x; sudo rm -rf /opt/google || true)
(set -x; sudo rm -rf /opt/pipx || true)
(set -x; df -h)
- name : Install cargo-make
run : cargo install --debug --locked cargo-make
- name : Test workspace for experimental_parser
2024-02-02 22:10:47 +00:00
env :
RUSTFLAGS : "--cfg surrealdb_unstable"
2024-01-10 16:43:56 +00:00
run : cargo make test-experimental-parser
2023-04-17 13:27:32 +00:00
ws-engine :
name : WebSocket engine
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-04-17 13:27:32 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-04-17 13:27:32 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-04-17 13:27:32 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-04-17 13:27:32 +00:00
- name : Install dependencies
run : |
sudo apt-get -y update
2022-07-13 09:28:08 +00:00
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Test ws engine
2023-09-06 13:51:33 +00:00
run : cargo make ci-api-integration-ws
2022-03-05 14:50:18 +00:00
2023-08-18 07:16:13 +00:00
- name : Debug info
if : always()
run : |
set -x
free -m
df -h
ps auxf
cat /tmp/surrealdb.log || true
2023-04-17 13:27:32 +00:00
http-engine :
name : HTTP engine
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2022-03-05 14:50:18 +00:00
steps :
2023-04-17 13:27:32 +00:00
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-04-17 13:27:32 +00:00
2022-03-05 14:50:18 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2022-07-13 09:28:08 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-03-31 19:12:10 +00:00
- name : Install dependencies
run : |
sudo apt-get -y update
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Test http engine
2023-09-06 13:51:33 +00:00
run : cargo make ci-api-integration-http
2023-08-03 09:55:06 +00:00
2023-08-18 07:16:13 +00:00
- name : Debug info
if : always()
run : |
set -x
free -m
df -h
ps auxf
cat /tmp/surrealdb.log || true
2023-08-03 09:55:06 +00:00
any-engine :
2023-08-18 07:16:13 +00:00
name : Any engine
runs-on : ubuntu-latest
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-08-18 07:16:13 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-08-18 07:16:13 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
- name : Install dependencies
run : |
sudo apt-get -y update
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-18 07:16:13 +00:00
- name : Test any engine
2023-09-06 13:51:33 +00:00
run : cargo make ci-api-integration-any
2023-08-18 07:16:13 +00:00
- name : Debug info
if : always()
run : |
set -x
free -m
df -h
ps auxf
cat /tmp/surrealdb.log || true
2023-04-17 13:27:32 +00:00
mem-engine :
name : Memory engine
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-04-17 13:27:32 +00:00
steps :
2022-03-05 14:50:18 +00:00
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2022-07-13 09:28:08 +00:00
2023-04-17 13:27:32 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2022-07-13 09:28:08 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Test mem engine
2023-09-06 13:51:33 +00:00
run : cargo make ci-api-integration-mem
2022-07-13 09:28:08 +00:00
2023-04-17 13:27:32 +00:00
file-engine :
name : File engine
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-04-17 13:27:32 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-04-17 13:27:32 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-04-17 13:27:32 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Test file engine
2023-09-06 13:51:33 +00:00
run : cargo make ci-api-integration-file
2023-04-17 13:27:32 +00:00
2023-05-31 12:35:41 +00:00
rocksdb-engine :
name : RocksDB engine
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-05-31 12:35:41 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-05-31 12:35:41 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-05-31 12:35:41 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Test rocksdb engine
2023-09-06 13:51:33 +00:00
run : cargo make ci-api-integration-rocksdb
2023-05-31 12:35:41 +00:00
speedb-engine :
name : SpeeDB engine
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-05-31 12:35:41 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-05-31 12:35:41 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-05-31 12:35:41 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Test speedb engine
2023-09-06 13:51:33 +00:00
run : cargo make ci-api-integration-speedb
2023-06-10 20:30:37 +00:00
tikv-engine :
2024-02-28 14:52:44 +00:00
name : TiKV engine
runs-on : ubuntu-latest
steps :
2023-06-10 20:30:37 +00:00
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-06-10 20:30:37 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-06-10 20:30:37 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-06-10 20:30:37 +00:00
- name : Install dependencies
run : |
sudo apt-get -y update
2023-08-11 11:50:48 +00:00
- name : Install TiUP
2023-11-16 15:00:00 +00:00
timeout-minutes : 10
2023-06-10 20:30:37 +00:00
run : |
2023-11-16 15:00:00 +00:00
while ! ~/.tiup/bin/tiup -v; do
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
done
2023-06-10 20:30:37 +00:00
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-08-03 09:55:06 +00:00
- name : Test tikv engine
2023-09-06 13:51:33 +00:00
run : cargo make ci-api-integration-tikv
2023-05-31 12:35:41 +00:00
2023-08-18 07:16:13 +00:00
- name : Debug info
if : always()
run : |
set -x
free -m
df -h
ps auxf
cat /tmp/surrealdb.log || true
2023-06-13 20:55:38 +00:00
fdb-engine :
name : FoundationDB engine
2023-07-25 11:37:43 +00:00
runs-on : ubuntu-latest
2023-06-13 20:55:38 +00:00
steps :
- name : Install stable toolchain
2023-09-06 13:51:33 +00:00
uses : dtolnay/rust-toolchain@stable
2023-08-24 16:33:57 +00:00
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2023-06-13 20:55:38 +00:00
- name : Checkout sources
2023-12-05 11:52:09 +00:00
uses : actions/checkout@v4
2023-06-13 20:55:38 +00:00
2023-06-23 11:58:15 +00:00
- name : Setup cache
uses : Swatinem/rust-cache@v2
2023-08-14 15:36:27 +00:00
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
2023-06-23 11:58:15 +00:00
2023-06-13 20:55:38 +00:00
- name : Setup FoundationDB
2023-09-06 13:51:33 +00:00
uses : foundationdb-rs/foundationdb-actions-install@v2.1.0
2023-06-13 20:55:38 +00:00
with :
version : "7.1.30"
2023-08-03 09:55:06 +00:00
- name : Install cargo-make
2023-11-20 11:49:35 +00:00
run : cargo install --debug --locked cargo-make
2023-06-13 20:55:38 +00:00
2023-08-03 09:55:06 +00:00
- name : Test fdb engine
2023-09-06 13:51:33 +00:00
run : cargo make ci-api-integration-fdb
2023-08-18 07:16:13 +00:00
- name : Debug info
if : always()
run : |
set -x
free -m
df -h
ps auxf
cat /tmp/surrealdb.log || true
2024-02-15 20:47:10 +00:00
surrealkv-engine :
name : SurrealKV engine
runs-on : ubuntu-latest
steps :
- name : Install stable toolchain
uses : dtolnay/rust-toolchain@stable
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2024-02-15 20:47:10 +00:00
- name : Checkout sources
uses : actions/checkout@v4
- name : Setup cache
uses : Swatinem/rust-cache@v2
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
- name : Install cargo-make
run : cargo install --debug --locked cargo-make
- name : Test surrealkv engine
run : cargo make ci-api-integration-surrealkv
- name : Debug info
if : always()
run : |
set -x
free -m
df -h
ps auxf
cat /tmp/surrealdb.log || true
2024-03-01 08:29:42 +00:00
db-upgrade :
name : Database Upgrade from previous versions
runs-on : ubuntu-latest
steps :
- name : Install stable toolchain
uses : dtolnay/rust-toolchain@stable
with :
2024-03-22 20:50:11 +00:00
toolchain : stable
2024-03-01 08:29:42 +00:00
- name : Checkout sources
uses : actions/checkout@v4
- name : Setup cache
uses : Swatinem/rust-cache@v2
with :
save-if : ${{ github.ref == 'refs/heads/main' }}
- name : Install cargo-make
run : cargo install --debug --locked cargo-make
- name : Test upgrade
2024-04-05 10:32:27 +00:00
# Allow breaking changes until v2 stabilises
continue-on-error : true
2024-03-01 08:29:42 +00:00
run : cargo make ci-database-upgrade