From 8522f25bc9545c7faa5fd13a78119fc3a5433c54 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Mon, 23 Sep 2024 16:57:07 +0100 Subject: [PATCH] ci: print contract --- .github/workflows/contract.yaml | 58 +++++++++++++++++++ .../workflows/{testing.yml => testing.yaml} | 0 2 files changed, 58 insertions(+) create mode 100644 .github/workflows/contract.yaml rename .github/workflows/{testing.yml => testing.yaml} (100%) diff --git a/.github/workflows/contract.yaml b/.github/workflows/contract.yaml new file mode 100644 index 0000000..77417fb --- /dev/null +++ b/.github/workflows/contract.yaml @@ -0,0 +1,58 @@ +name: Contract + +on: + push: + pull_request: + +env: + CARGO_TERM_COLOR: always + +jobs: + contract: + name: Contract + runs-on: ubuntu-latest + + strategy: + matrix: + toolchain: [nightly, stable] + + steps: + - id: checkout + name: Checkout Repository + uses: actions/checkout@v4 + + - id: setup + name: Setup Toolchain + uses: dtolnay/rust-toolchain@stable + with: + toolchain: ${{ matrix.toolchain }} + components: llvm-tools-preview + + - id: cache + name: Enable Job Cache + uses: Swatinem/rust-cache@v2 + + - id: tools + name: Install Tools + uses: taiki-e/install-action@v2 + with: + tool: cargo-llvm-cov, cargo-nextest + + - id: pretty-test + name: Install pretty-test + run: cargo install cargo-pretty-test + + - id: contract + name: Run contract + run: | + cargo test --lib --bins + cargo pretty-test --lib --bins + + - id: summary + name: Generate contract Summary + run: | + echo "### Living Contract! :rocket:" >> $GITHUB_STEP_SUMMARY + cargo pretty-test --lib --bins --color=never >> $GITHUB_STEP_SUMMARY + echo '```console' >> $GITHUB_STEP_SUMMARY + echo "$OUTPUT" >> $GITHUB_STEP_SUMMARY + echo '```' >> $GITHUB_STEP_SUMMARY diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yaml similarity index 100% rename from .github/workflows/testing.yml rename to .github/workflows/testing.yaml