name: Backend only integration tests on: push: branches: - "main" paths: - "backend/**" - ".github/workflows/backend-test.yml" pull_request: types: [opened, synchronize, reopened] paths: - "backend/**" - ".github/workflows/backend-test.yml" defaults: run: working-directory: ./backend jobs: cargo_test: runs-on: ubicloud-standard-8 services: postgres: image: postgres ports: - 5432:5432 env: POSTGRES_DB: windmill POSTGRES_PASSWORD: changeme options: >- --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 steps: - uses: actions/checkout@v4 - uses: actions/setup-dotnet@v4 with: dotnet-version: "9.0.x" - uses: denoland/setup-deno@v2 with: deno-version: v2.x - uses: actions/setup-go@v2 with: go-version: 1.21.5 - uses: oven-sh/setup-bun@v2 with: bun-version: 1.1.43 - uses: astral-sh/setup-uv@v6.2.1 with: version: "0.6.2" - uses: actions-rust-lang/setup-rust-toolchain@v1 with: cache-workspaces: backend toolchain: 1.90.0 - name: Read EE repo commit hash run: | echo "ee_repo_ref=$(cat ./ee-repo-ref.txt)" >> "$GITHUB_ENV" - uses: actions/checkout@v4 with: repository: windmill-labs/windmill-ee-private path: ./windmill-ee-private ref: ${{ env.ee_repo_ref }} token: ${{ secrets.WINDMILL_EE_PRIVATE_ACCESS }} fetch-depth: 0 - name: Substitute EE code (EE logic is behind feature flag) run: | ./substitute_ee_code.sh --copy --dir ./windmill-ee-private - name: cargo test timeout-minutes: 16 run: deno --version && bun -v && go version && python3 --version && SQLX_OFFLINE=true DATABASE_URL=postgres://postgres:changeme@localhost:5432/windmill DISABLE_EMBEDDING=true RUST_LOG=info RUST_LOG_STYLE=never DENO_PATH=$(which deno) BUN_PATH=$(which bun) GO_PATH=$(which go) UV_PATH=$(which uv) cargo test --features enterprise,deno_core,license,python,rust,scoped_cache,private --all -- --nocapture