From 2582162cea2b3a59cd21c78f8b73cb03d0acad40 Mon Sep 17 00:00:00 2001 From: Pauline Date: Sat, 14 Oct 2023 22:27:27 -0400 Subject: refactor(trunk): refactor the entire project idk --- .github/actions/setup-rust/action.yaml | 52 ++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 .github/actions/setup-rust/action.yaml (limited to '.github/actions/setup-rust') diff --git a/.github/actions/setup-rust/action.yaml b/.github/actions/setup-rust/action.yaml new file mode 100644 index 0000000..8cf9997 --- /dev/null +++ b/.github/actions/setup-rust/action.yaml @@ -0,0 +1,52 @@ +name: Setup Rust +description: Setup Rust +inputs: + target: + description: toolchain target triple + required: false + save-cache: + description: Whether to save the Rust cache + required: false + default: 'false' +runs: + using: 'composite' + steps: + - name: Install Rust + id: toolchain + uses: dtolnay/rust-toolchain@stable + with: + target: ${{ inputs.target }} + toolchain: stable + components: clippy, rustfmt + + - name: Cache Rust Dependencies + uses: Swatinem/rust-cache@v2 + with: + save-if: ${{ inputs.save-cache }} + prefix-key: 'v0-rust-deps' + shared-key: ${{ inputs.target }} + + - name: Cargo config.toml + shell: bash + run: echo '{}' | npx -y mustache - .cargo/config.toml.mustache .cargo/config.toml + + - name: Restore cached Prisma codegen + id: cache-prisma-restore + uses: actions/cache/restore@v3 + with: + key: prisma-1-${{ runner.os }}-${{ hashFiles('./core/prisma/*', './Cargo.toml') }} + path: crates/prisma/src/**/*.rs + + - name: Generate Prisma client + working-directory: core + if: ${{ steps.cache-prisma-restore.outputs.cache-hit != 'true' }} + shell: bash + run: cargo prisma generate + + - name: Save Prisma codegen + id: cache-prisma-save + if: ${{ inputs.save-cache == 'true' }} + uses: actions/cache/save@v3 + with: + key: ${{ steps.cache-prisma-restore.outputs.cache-primary-key }} + path: crates/prisma/src/**/*.rs -- cgit