Skip to content

Bump version 0.2.7 #172

Bump version 0.2.7

Bump version 0.2.7 #172

Workflow file for this run

name: Rust
on:
push:
branches:
- "**"
tags-ignore: ["*"]
pull_request:
branches:
- "**"
workflow_dispatch:
env:
CARGO_TERM_COLOR: always
jobs:
build:
strategy:
fail-fast: false
matrix:
include:
- os: windows-latest
target: x86_64-pc-windows-msvc
arch: x86_64
- os: macos-latest
target: aarch64-apple-darwin
arch: aarch64
- os: macos-latest
target: x86_64-apple-darwin
arch: x86_64
- os: ubuntu-22.04
target: x86_64-unknown-linux-gnu
arch: x86_64
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
targets: ${{ matrix.target }}
- name: Prepare
if: ${{ matrix.os == 'ubuntu-22.04' }}
run: |
sudo apt-get update
sudo apt-get install --fix-missing libx11-dev libxext-dev libxft-dev libxinerama-dev libxcursor-dev libxrender-dev libxfixes-dev libpango1.0-dev libgl1-mesa-dev libglu1-mesa-dev libgdk-pixbuf2.0-dev libgtk-3-dev libxdo-dev libxmu-dev -y
- name: Install cargo-bundle
run: cargo install cargo-bundle
- name: Rustfmt
if: ${{ !cancelled() }}
run: cargo fmt -- --check
- name: Clippy
if: ${{ !cancelled() && !(matrix.os == 'macos-latest' && matrix.target == 'x86_64-apple-darwin') }}
run: cargo clippy --all-features --release --target ${{ matrix.target }} -- -D warnings
- name: Build
if: ${{ !cancelled() }}
run: cargo build --verbose --all-features --all-targets --tests --examples --release --target ${{ matrix.target }}
- name: Test
if: ${{ !cancelled() && !(matrix.os == 'macos-latest' && matrix.target == 'x86_64-apple-darwin') }}
run: cargo test --verbose --all-features --release --target ${{ matrix.target }}
- name: Bundle (Linux .deb)
if: ${{ !cancelled() && matrix.os == 'ubuntu-22.04' }}
run: |
cargo bundle --format deb --release --target ${{ matrix.target }}
mkdir -p artifact
cp target/${{ matrix.target }}/release/bundle/deb/*.deb artifact/
- name: Bundle (macOS .app)
if: ${{ !cancelled() && matrix.os == 'macos-latest' }}
run: |
cargo bundle --format osx --release --target ${{ matrix.target }}
mkdir -p target/${{ matrix.target }}/release/dmg
cp -R target/${{ matrix.target }}/release/bundle/osx/overtls-gui.app target/${{ matrix.target }}/release/dmg/
ln -s /Applications target/${{ matrix.target }}/release/dmg/Applications
mkdir -p artifact
hdiutil create -volname OverTLS-GUI -srcfolder target/${{ matrix.target }}/release/dmg -ov -format UDZO artifact/overtls-gui-macos-${{ matrix.arch }}.dmg
- name: Bundle (Windows .msi)
if: ${{ !cancelled() && matrix.os == 'windows-latest' }}
run: |
cp target/${{ matrix.target }}/release/wintun.dll assets/
cargo bundle --format wxsmsi --release --target ${{ matrix.target }}
mkdir -p artifact
cp target/${{ matrix.target }}/release/bundle/wxsmsi/bin/Release/*.msi artifact/
# upload built package(s) for whichever OS this run produced
- name: Upload artifact(s)
if: ${{ !cancelled() }}
uses: actions/upload-artifact@v4
with:
name: overtls-gui-${{ matrix.target }}
path: artifact/*