Akulij 6099a2ba81
All checks were successful
Build && Deploy / cargo build (push) Successful in 53s
cd.yaml: call webhook to deploy built binary
2025-05-04 17:27:38 +03:00

67 lines
2.1 KiB
YAML

name: Build && Deploy
on: [push]
jobs:
build:
name: cargo build
runs-on: ubuntu-latest
steps:
- name: Restore cached toolchain
id: cache-toolchain
uses: actions/cache/restore@v4
with:
path: |
~/.rustup
~/.cargo
key: linux-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-save
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: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target
key: linux-project-dependencies
- run: cargo build --release --target x86_64-unknown-linux-gnu
- name: Save cached cargo dependencies
id: cache-project-dependencies-restore
uses: actions/cache/save@v4
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target
key: ${{ steps.cache-project-dependencies.outputs.cache-primary-key }}
- name: Upload Release Binary
id: bot-artifact
uses: christopherhx/gitea-upload-artifact@v4
with:
name: botrunner
path: target/x86_64-unknown-linux-gnu/release/gongbotrs
- name: Deploy with WebHook
# temporary solutino to hardcode artifact url, because upload-artifact's artifact-url gives wrong one
run: curl http://${{ secrets.SERVER_ADDR }}/hooks/gongbot-deploy?binaryzip='https://git.akulij.ru/akulij/gongbotrs/actions/runs/${{ gitea.run_number }}/artifacts/botrunner'