name: Build && Deploy on: [push] jobs: test: name: cargo build runs-on: ubuntu-latest steps: - name: Restore cached toolchain id: cache-toolchain uses: actions/cache/restore@v4 with: path: | ~/.rustup/toolchains key: ${{ runner.os }}-rust-toolchainv2 - name: Install minimal stable with clippy and rustfmt uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: stable - name: Save cached toolchain id: cache-toolchain uses: actions/cache/save@v4 with: path: | ~/.rustup ~/.cargo key: ${{ steps.cache-toolchain.outputs.cache-primary-key }} - uses: actions/checkout@v4 - name: Restore cached cargo dependencies id: cache-project-dependencies uses: actions/cache/restore@v4 with: path: | target key: ${{ runner.os }}-project-dependencies - run: cargo build --release --target x86_64-unknown-linux-gnu - run: cargo test - name: Save cached cargo dependencies id: cache-toolchain uses: actions/cache/save@v4 with: path: | target key: ${{ steps.cache-project-dependencies.outputs.cache-primary-key }} - name: Upload Release Binary uses: actions/upload-artifact@v3 with: name: botrunner path: target/x86_64-unknown-linux-gnu/release/gongbotrs