CI run 'emmanuel/backport-temporary-table-disabled-default' #8385
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: Continuous integration | |
run-name: "CI run '${{ github.head_ref || github.ref_name }}'" | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
pull_request: | |
merge_group: | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
format: | |
name: Check format | |
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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Check format | |
run: cargo make ci-format | |
check: | |
name: Check workspace | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Check workspace | |
run: cargo make ci-check | |
check-dependencies: | |
name: Check dependencies | |
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: Install cargo-deny | |
run: cargo install --debug --locked cargo-deny@0.14.11 | |
- 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 | |
run: cargo deny check | |
- name: Check dependencies for untrusted sources | |
run: cargo vet | |
- name: Check dependencies for unauthorized access | |
env: | |
RUSTFLAGS: "--cfg surrealdb_unstable" | |
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 | |
check-wasm: | |
name: Check Wasm | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
targets: wasm32-unknown-unknown | |
- 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: Check wasm | |
run: cargo make ci-check-wasm | |
clippy: | |
name: Check clippy | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
components: clippy | |
- 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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Run clippy | |
run: cargo make ci-clippy | |
cli: | |
name: CLI integration tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Run CLI integration tests | |
run: cargo make ci-cli-integration | |
- name: Debug info | |
if: always() | |
run: | | |
set -x | |
free -m | |
df -h | |
ps auxf | |
cat /tmp/surrealdb.log || true | |
http-server: | |
name: HTTP integration tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Run HTTP integration tests | |
run: cargo make ci-http-integration | |
ml-support: | |
name: ML integration tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Run ML integration tests | |
run: cargo make ci-ml-integration | |
ws-server: | |
name: WebSocket integration tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Run WS integration tests | |
run: cargo make ci-ws-integration | |
test: | |
name: Test workspace | |
runs-on: [ "self-hosted", "arm64", "builder" ] | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install cargo-llvm-cov | |
uses: taiki-e/install-action@cargo-llvm-cov | |
- name: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Test workspace + coverage | |
run: cargo make ci-workspace-coverage | |
- name: Upload coverage report | |
uses: actions/upload-artifact@v4 | |
timeout-minutes: 1 | |
continue-on-error: true | |
with: | |
name: code-coverage-report | |
path: target/llvm-cov/html/ | |
retention-days: 5 | |
test-parser: | |
name: Test workspace with experimental parser | |
runs-on: [ "self-hosted", "arm64", "builder" ] | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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 | |
env: | |
RUSTFLAGS: "--cfg surrealdb_unstable" | |
run: cargo make test-experimental-parser | |
test-sdk-build: | |
name: Test SDK build | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Build sql1 | |
working-directory: tests/sdk/sql1 | |
run: cargo build | |
- name: Build sql2 | |
working-directory: tests/sdk/sql2 | |
run: cargo build | |
ws-engine: | |
name: WebSocket engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Test ws engine | |
run: cargo make ci-api-integration-ws | |
- name: Debug info | |
if: always() | |
run: | | |
set -x | |
free -m | |
df -h | |
ps auxf | |
cat /tmp/surrealdb.log || true | |
http-engine: | |
name: HTTP engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Test http engine | |
run: cargo make ci-api-integration-http | |
- name: Debug info | |
if: always() | |
run: | | |
set -x | |
free -m | |
df -h | |
ps auxf | |
cat /tmp/surrealdb.log || true | |
any-engine: | |
name: Any engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Test any engine | |
run: cargo make ci-api-integration-any | |
- name: Debug info | |
if: always() | |
run: | | |
set -x | |
free -m | |
df -h | |
ps auxf | |
cat /tmp/surrealdb.log || true | |
mem-engine: | |
name: Memory engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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 mem engine | |
run: cargo make ci-api-integration-mem | |
file-engine: | |
name: File engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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 file engine | |
run: cargo make ci-api-integration-file | |
rocksdb-engine: | |
name: RocksDB engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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 rocksdb engine | |
run: cargo make ci-api-integration-rocksdb | |
speedb-engine: | |
name: SpeeDB engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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 speedb engine | |
run: cargo make ci-api-integration-speedb | |
tikv-engine: | |
name: TiKV engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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: Install TiUP | |
timeout-minutes: 10 | |
run: | | |
while ! ~/.tiup/bin/tiup -v; do | |
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh | |
done | |
- name: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Test tikv engine | |
run: cargo make ci-api-integration-tikv | |
- name: Debug info | |
if: always() | |
run: | | |
set -x | |
free -m | |
df -h | |
ps auxf | |
cat /tmp/surrealdb.log || true | |
fdb-engine: | |
name: FoundationDB engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Setup cache | |
uses: Swatinem/rust-cache@v2 | |
with: | |
save-if: ${{ github.ref == 'refs/heads/main' }} | |
- name: Setup FoundationDB | |
uses: foundationdb-rs/foundationdb-actions-install@v2.1.0 | |
with: | |
version: "7.1.30" | |
- name: Install cargo-make | |
run: cargo install --debug --locked cargo-make | |
- name: Test fdb engine | |
run: cargo make ci-api-integration-fdb | |
- name: Debug info | |
if: always() | |
run: | | |
set -x | |
free -m | |
df -h | |
ps auxf | |
cat /tmp/surrealdb.log || true | |
surrealkv-engine: | |
name: SurrealKV engine | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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 | |
db-upgrade: | |
name: Database Upgrade from previous versions | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install stable toolchain | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: stable | |
- 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 | |
run: cargo make ci-database-upgrade | |