feature: set up scrape worker with endpoint to crawl #3471
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: rust test suite | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref }} | |
cancel-in-progress: true | |
on: | |
pull_request: | |
paths: | |
- 'server/**' | |
jobs: | |
cargo-fmt: | |
runs-on: blacksmith-2vcpu-ubuntu-2204 | |
steps: | |
- uses: actions/checkout@v4 | |
- run: rustup update stable | |
- name: Cargo fmt | |
run: cargo fmt --manifest-path=./server/Cargo.toml -- --check | |
clippy_check: | |
runs-on: blacksmith-8vcpu-ubuntu-2204 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Caching Rust Dep | |
uses: useblacksmith/cache@v5 | |
with: | |
path: | | |
~/.cargo/registry | |
~/.cargo/git | |
target | |
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
- run: rustup component add clippy | |
- run: rustup update stable | |
- uses: clechasseur/rs-clippy-check@v3 | |
with: | |
args: --features runtime-env --manifest-path server/Cargo.toml -- -D clippy::print_stdout -D warnings | |
- uses: useblacksmith/cache@v5 | |
with: | |
path: | | |
~/.cargo/registry | |
~/.cargo/git | |
target | |
key: ${{ matrix.rust }}-${{ hashFiles('**/Cargo.lock') }} | |
restore-keys: | | |
${{ runner.labels }}-rust-${{ matrix.rust }}- | |
redoc: | |
runs-on: blacksmith-8vcpu-ubuntu-2204 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Caching Rust Dep | |
uses: useblacksmith/cache@v5 | |
with: | |
path: | | |
~/.cargo/registry | |
~/.cargo/git | |
target | |
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
- run: rustup update stable | |
- name: Installing Vaccum | |
run: npm install -g @quobix/vacuum | |
- name: Generating OpenAPI spec | |
run: cargo run --features runtime-env --manifest-path server/Cargo.toml --bin redoc_ci > openapi.json | |
- name: Vaccum lint | |
run: vacuum lint openapi.json -r '.github/rules.yaml' -d | |
- name: Copy OpenAPI spec to sdk folder | |
run: cp openapi.json ./clients/ts-sdk/openapi.json | |
- name: Build the TS SDK | |
working-directory: ./clients/ts-sdk | |
run: yarn && yarn build:clean | |
- name: Typecheck all frontends | |
run: yarn && yarn typecheck | |