diff --git a/.gitea/workflows/build-and-test.yml b/.gitea/workflows/build-and-test.yml index 873fc10..518b287 100644 --- a/.gitea/workflows/build-and-test.yml +++ b/.gitea/workflows/build-and-test.yml @@ -16,7 +16,6 @@ jobs: with: toolchain: nightly override: true - components: rustfmt, clippy - name: Cache dependencies uses: Swatinem/rust-cache@v2 @@ -51,12 +50,15 @@ jobs: - uses: actions/checkout@v3 - uses: cargo-bins/cargo-binstall@main + - name: Install mpv + run: apt-get update && apt-get install -y mpv + - name: Install latest nightly toolchain uses: actions-rs/toolchain@v1 with: toolchain: nightly override: true - components: rustfmt, clippy, llvm-tools-preview + components: llvm-tools-preview - name: Cache dependencies uses: Swatinem/rust-cache@v2 @@ -65,26 +67,28 @@ jobs: run: mkdir -p target/test-report - name: Run tests - run: cargo test --all-features --release -Z unstable-options --report-time --format json | tee target/test-report/test-report.json + run: | + cargo test --all-features --release --no-fail-fast -- -Zunstable-options --format json --report-time \ + | tee target/test-report/test-report.json env: RUSTFLAGS: "-Cinstrument-coverage" - LLVM_PROFILE_FILE: "target/release/coverage/%p-%m.profraw" - + LLVM_PROFILE_FILE: "target/coverage/%p-%m.profraw" + - name: Install markdown-test-report run: cargo binstall -y markdown-test-report - name: Generate test report - run: markdown-test-report target/test-report/test-report.json target/test-report/test-report.md + run: markdown-test-report target/test-report/test-report.json --output target/test-report/test-report.md - name: Upload test report - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 with: - name: test-report + name: test-report.md path: target/test-report/test-report.md - + - name: Install grcov run: cargo binstall -y grcov - + - name: Generate coverage report run: | grcov \ @@ -101,10 +105,10 @@ jobs: --ignore "*cargo*" \ -t html \ -o ./target/coverage/html \ - target/coverage/prof - + target/coverage/ + - name: Upload coverage report - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 with: name: coverage path: target/coverage/html diff --git a/.gitea/workflows/build-docs.yml b/.gitea/workflows/build-docs.yml new file mode 100644 index 0000000..8f27f21 --- /dev/null +++ b/.gitea/workflows/build-docs.yml @@ -0,0 +1,44 @@ +name: "Build docs" +on: + push: + branches: + - master +jobs: + docs: + runs-on: ubuntu-latest-personal + steps: + - uses: actions/checkout@v3 + + - name: Install latest nightly toolchain + uses: actions-rs/toolchain@v1 + with: + toolchain: nightly + override: true + + - name: Cache dependencies + uses: Swatinem/rust-cache@v2 + + - name: Build docs + run: cargo doc --all-features --document-private-items --release + + - name: Install rsync + run: apt-get update && apt-get install -y rsync + + - name: Install SSH key + run: | + mkdir -p ~/.ssh + cat <~/.ssh/key + ${{ secrets.OYSTEIKT_GITEA_WEBDOCS_SSH_KEY }} + EOF + chmod 600 ~/.ssh/key + + - name: Deploy docs to https://pvv.ntnu.no/~oysteikt/mpvipc/${{ gitea.ref_name }}/ + run: | + rsync \ + --archive \ + --compress \ + --verbose \ + --mkpath \ + --rsh="ssh -oBatchMode=yes -oStrictHostKeyChecking=accept-new -i ~/.ssh/key" \ + "target/doc/" \ + "oysteikt@microbel.pvv.ntnu.no:mpvipc/${{ gitea.ref_name }}/" \ No newline at end of file