From 420a16067ac995b79aab3d7bd86546e5c9434f5f Mon Sep 17 00:00:00 2001 From: nm17 Date: Sat, 15 Mar 2025 22:51:47 +0400 Subject: [PATCH] ci: add some basic ci/cd --- .forgejo/workflows/build-and-test.yml | 39 +++++++++++++++++++++++++++ .forgejo/workflows/upload.yml | 24 +++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 .forgejo/workflows/build-and-test.yml create mode 100644 .forgejo/workflows/upload.yml diff --git a/.forgejo/workflows/build-and-test.yml b/.forgejo/workflows/build-and-test.yml new file mode 100644 index 0000000..7376c4b --- /dev/null +++ b/.forgejo/workflows/build-and-test.yml @@ -0,0 +1,39 @@ +name: Cargo Build & Test + +on: + push: + pull_request: + +env: + CARGO_TERM_COLOR: always + +jobs: + build_and_test: + name: Build and test - ${{ matrix.toolchain }} + runs-on: ubuntu-latest + strategy: + matrix: + toolchain: + - stable + - beta + - nightly + steps: + - uses: actions/checkout@v4 + - name: Get Rust toolchain + uses: https://github.com/dtolnay/rust-toolchain@stable + with: + toolchain: ${{ matrix.toolchain }} + - run: cargo build + publish: + name: Upload + runs-on: ubuntu-latest + needs: build_and_test + steps: + - uses: actions/checkout@v4 + - name: Get Rust toolchain + uses: https://github.com/dtolnay/rust-toolchain@stable + with: + toolchain: stable + - run: cargo publish --release + env: + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }} diff --git a/.forgejo/workflows/upload.yml b/.forgejo/workflows/upload.yml new file mode 100644 index 0000000..e14c37c --- /dev/null +++ b/.forgejo/workflows/upload.yml @@ -0,0 +1,24 @@ +name: Cargo Build & Test + +on: + push: + tags: + - '*' + +env: + CARGO_TERM_COLOR: always + +jobs: + publish: + name: Upload + runs-on: ubuntu-latest + needs: build_and_test + steps: + - uses: actions/checkout@v4 + - name: Get Rust toolchain + uses: https://github.com/dtolnay/rust-toolchain@stable + with: + toolchain: stable + - run: cargo publish --release + env: + CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}