Коммит 'Add unused parameters, change version and ci/cd [ci]' #5
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Сборка и публикация приложения | |
run-name: Коммит '${{ github.event.head_commit.message }}' | |
env: | |
GH_TOKEN: ${{ secrets.RELEASE_TOKEN }} | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
build: | |
if: "contains(github.event.commits[0].message, '[ci]')" | |
strategy: | |
matrix: | |
include: | |
- os: linux | |
runner: ubuntu-latest | |
file: sd-image-to-params | |
- os: windows | |
runner: windows-latest | |
file: sd-image-to-params.exe | |
runs-on: ${{ matrix.runner }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Кэш зависимостей | |
uses: actions/cache@v4 | |
with: | |
path: | | |
~/.cargo/registry | |
~/.cargo/git | |
target | |
key: ${{ matrix.runner }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
- name: Установка зависимостей (Linux) | |
if: matrix.os == 'linux' | |
run: sudo apt install -y build-essential libssl-dev pkg-config cmake libgtk-3-dev libclang-dev | |
- name: Сборка бинарного файла | |
run: cargo build --release | |
- name: Сохранение файла в артифакты | |
uses: actions/upload-artifact@v4 | |
with: | |
name: sd-image-to-params_${{ matrix.os }} | |
path: target/release/${{ matrix.file }} | |
publish: | |
if: "contains(github.event.commits[0].message, '[cd]')" | |
runs-on: ubuntu-latest | |
needs: [build] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Загрузка бинарного файла linux из артефактов | |
uses: actions/download-artifact@v4 | |
with: | |
name: sd-image-to-params_linux | |
path: artifacts | |
- name: Загрузка бинарного файла windows из артефактов | |
uses: actions/download-artifact@v4 | |
with: | |
name: sd-image-to-params_windows | |
path: artifacts | |
- name: Получение версии приложения из Cargo.toml | |
id: app_version | |
uses: dante-signal31/rust-app-version@v1.2.0 | |
with: | |
cargo_toml_folder: ./ | |
- name: Публикация файлов | |
run: | | |
gh release create "v${{ steps.app_version.outputs.app_version }}" \ | |
'artifacts/sd-image-to-params#sd-image-to-params_v${{ steps.app_version.outputs.app_version }}_linux_x64' \ | |
'artifacts/sd-image-to-params.exe#sd-image-to-params_v${{ steps.app_version.outputs.app_version }}_windows_x64' |