Skip to content

Deployment

Deployment #20

Workflow file for this run

name: Deployment
on:
release:
types:
- created
env:
CARGO_TERM_COLOR: always
jobs:
build-linux-deb:
permissions: write-all
name: linux deb
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Update Libs
run: sudo apt-get update && sudo apt-get install -y libclang-dev libgtk-3-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev && sudo apt-get install libudev-dev && cargo install cargo-bundle
- name: Build
run: cargo bundle --release
- name: Compress.
run: ls target/release/bundle/deb && cd target/release/bundle/deb && zip serial-monitor.deb.zip *.deb
# - name: Rename
# run: ls target/release/bundle/deb && cd target/release/bundle/deb && mv *.deb serial-monitor.deb
- name: Upload Deb
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./target/release/bundle/deb/serial-monitor.deb.zip
asset_name: serial-monitor-x86_64-unknown-linux-gnu.deb.zip
asset_content_type: binary
build-linux-bin:
permissions: write-all
name: linux bin
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- name: Update Libs
run: sudo apt-get update && sudo apt-get install -y libclang-dev libgtk-3-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev && sudo apt-get install libudev-dev && cargo install cargo-bundle
- name: Build
run: cargo build --release
- name: Compress.
run: cd target/release && zip -r serial-monitor.zip serial-monitor-rust
- name: Upload Bin
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./target/release/serial-monitor.zip
asset_name: serial-monitor-x86_64-unknown-linux-gnu-bin.zip
asset_content_type: binary
build-macos-x86:
permissions: write-all
name: macos x86
runs-on: macos-13
steps:
- uses: actions/checkout@v3
- name: Update Libs
run: cargo install cargo-bundle
- name: Build
run: cargo bundle --release
- name: Compress
run: cd target/release/bundle/osx && ls && zip -r serial-monitor.app.zip Serial\ Monitor.app/*
- name: Upload
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./target/release/bundle/osx/serial-monitor.app.zip
asset_name: serial-monitor-aarch64-apple-darwin.app.zip
asset_content_type: binary
build-macos-arm:
permissions: write-all
name: macos arm
runs-on: macos-14
steps:
- uses: actions/checkout@v3
- name: Update Libs
run: cargo install cargo-bundle
- name: Build
run: cargo bundle --release
- name: Compress
run: cd target/release/bundle/osx && ls && zip -r serial-monitor.app.zip Serial\ Monitor.app/*
- name: Upload
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: ./target/release/bundle/osx/serial-monitor.app.zip
asset_name: serial-monitor-x86_64-apple-darwin.app.zip
asset_content_type: binary
build-windows-exe:
permissions: write-all
name: windows exe
runs-on: windows-2019
steps:
- uses: actions/checkout@v3
- name: Update Libs
run: cargo install --force cargo-wix
- name: Build
run: cargo build --release
- name: Compress
run: |
cd target/release
Compress-Archive serial-monitor-rust.exe serial-monitor.exe.zip
- name: Upload
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: target/release/serial-monitor.exe.zip
asset_name: serial-monitor-x86_64-pc-windows-msvc.exe.zip
asset_content_type: binary
build-windows-msi:
permissions: write-all
name: windows msi
runs-on: windows-2019
steps:
- uses: actions/checkout@v3
- name: Update Libs
run: cargo install cargo-wix
- name: Build
run: cargo wix
- name: Compress
run: cd target/wix && ls && Compress-Archive *.msi serial-monitor.msi.zip
- name: Upload
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ github.event.release.upload_url }}
asset_path: target/wix/serial-monitor.msi.zip
asset_name: serial-monitor-x86_64-pc-windows-msvc.msi.zip
asset_content_type: binary