# Nightly CI: runs tests every night for our second tier plaforms (Windows) on: schedule: - cron: '0 23 * * 1-5' workflow_dispatch: name: Nightly CI concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} cancel-in-progress: true env: RUST_TOOLCHAIN: nightly-2023-12-19 jobs: sqlness: name: Sqlness Test if: ${{ github.repository == 'GreptimeTeam/greptimedb' }} runs-on: ${{ matrix.os }} strategy: matrix: os: [ windows-latest-8-cores ] timeout-minutes: 60 steps: - uses: actions/checkout@v4.1.0 - uses: arduino/setup-protoc@v1 with: repo-token: ${{ secrets.GITHUB_TOKEN }} - uses: dtolnay/rust-toolchain@master with: toolchain: ${{ env.RUST_TOOLCHAIN }} - name: Rust Cache uses: Swatinem/rust-cache@v2 - name: Run sqlness run: cargo sqlness - name: Notify slack if failed if: failure() uses: slackapi/slack-github-action@v1.23.0 env: SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL_DEVELOP_CHANNEL }} with: payload: | {"text": "Nightly CI failed for sqlness tests"} - name: Upload sqlness logs if: always() uses: actions/upload-artifact@v3 with: name: sqlness-logs path: ${{ runner.temp }}/greptime-*.log retention-days: 3 test-on-windows: if: ${{ github.repository == 'GreptimeTeam/greptimedb' }} runs-on: windows-latest-8-cores timeout-minutes: 60 steps: - run: git config --global core.autocrlf false - uses: actions/checkout@v4.1.0 - uses: arduino/setup-protoc@v1 with: repo-token: ${{ secrets.GITHUB_TOKEN }} - name: Install Rust toolchain uses: dtolnay/rust-toolchain@master with: toolchain: ${{ env.RUST_TOOLCHAIN }} components: llvm-tools-preview - name: Rust Cache uses: Swatinem/rust-cache@v2 - name: Install Cargo Nextest uses: taiki-e/install-action@nextest - name: Install Python uses: actions/setup-python@v4 with: python-version: '3.10' - name: Install PyArrow Package run: pip install pyarrow - name: Install WSL distribution uses: Vampire/setup-wsl@v2 with: distribution: Ubuntu-22.04 - name: Running tests run: cargo nextest run -F pyo3_backend,dashboard env: RUST_BACKTRACE: 1 CARGO_INCREMENTAL: 0 GT_S3_BUCKET: ${{ secrets.S3_BUCKET }} GT_S3_ACCESS_KEY_ID: ${{ secrets.S3_ACCESS_KEY_ID }} GT_S3_ACCESS_KEY: ${{ secrets.S3_ACCESS_KEY }} GT_S3_REGION: ${{ secrets.S3_REGION }} UNITTEST_LOG_DIR: "__unittest_logs" - name: Notify slack if failed if: failure() uses: slackapi/slack-github-action@v1.23.0 env: SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL_DEVELOP_CHANNEL }} with: payload: | {"text": "Nightly CI failed for cargo test"}