Skip to content

ci(release): make sure source code is from stable branch #163

ci(release): make sure source code is from stable branch

ci(release): make sure source code is from stable branch #163

Workflow file for this run

on:
push:
branches-ignore:
- stable
pull_request:
name: Build Commit
env:
CARGO_TERM_COLOR: always
jobs:
linux:
name: Linux Build
runs-on: ubuntu-latest
strategy:
matrix:
target:
- build_target: i686-unknown-linux-gnu
arch: x86
lib: gnu
- build_target: x86_64-unknown-linux-gnu
arch: x64
lib: gnu
- build_target: x86_64-unknown-linux-musl
arch: x64
lib: musl
steps:
- name: Checkout Source code
uses: actions/checkout@v4
- name: Cache Rust dependencies
uses: actions/cache@v3
with:
path: |
~/.cargo/registry
~/.cargo/git
rustfoil-cli/target
rustfoil-lib/target
key: ${{ matrix.target.build_target }}-cargo-${{ hashFiles('**/**/Cargo.lock') }}
- name: Install Rust Toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
target: ${{ matrix.target.build_target }}
- name: Install Build-Tools
run: sudo apt-get install build-essential gcc-multilib zstd musl-tools musl-dev
- name: Build
run: cd rustfoil-cli && cargo build --release --target=${{ matrix.target.build_target }}
- name: Upload Action Artifact
uses: actions/upload-artifact@v3
with:
name: rustfoil_${{ runner.OS }}_${{ matrix.target.lib }}_${{ matrix.target.arch }}
path: rustfoil-cli/target/${{ matrix.target.build_target }}/release/rustfoil-cli
windows:
name: Windows Build
runs-on: windows-latest
strategy:
matrix:
target:
- build_target: i686-pc-windows-msvc
arch: x86
- build_target: x86_64-pc-windows-msvc
arch: x64
steps:
- name: Checkout Source code
uses: actions/checkout@v4
- name: Cache Rust dependencies
uses: actions/cache@v3
with:
path: |
~/.cargo/registry
~/.cargo/git
rustfoil-cli/target
rustfoil-lib/target
key: ${{ matrix.target.build_target }}-cargo-${{ hashFiles('**/**/Cargo.lock') }}
- name: Install Rust Toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
target: ${{ matrix.target.build_target }}
- name: Build
run: cd rustfoil-cli && cargo build --release --target=${{ matrix.target.build_target }}
- name: Upload Action Artifact
uses: actions/upload-artifact@v3
with:
name: rustfoil_${{ runner.OS }}_${{ matrix.target.arch }}.exe
path: rustfoil-cli/target/${{ matrix.target.build_target }}/release/rustfoil-cli.exe
macos:
name: MacOS Build
runs-on: macos-latest
strategy:
matrix:
target:
- build_target: x86_64-apple-darwin
arch: x64
- build_target: aarch64-apple-darwin
arch: aarch64
steps:
- name: Checkout Source code
uses: actions/checkout@v4
- name: Cache Rust dependencies
uses: actions/cache@v3
with:
path: |
~/.cargo/registry
~/.cargo/git
rustfoil-cli/target
rustfoil-lib/target
key: ${{ matrix.target.build_target }}-cargo-${{ hashFiles('**/**/Cargo.lock') }}
- name: Install Rust Toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
target: ${{ matrix.target.build_target }}
- name: Build
run: cd rustfoil-cli && cargo build --release --target=${{ matrix.target.build_target }}
- name: Upload Action Artifact
uses: actions/upload-artifact@v3
with:
name: rustfoil_${{ runner.OS }}_${{ matrix.target.arch }}
path: rustfoil-cli/target/${{ matrix.target.build_target }}/release/rustfoil-cli