Skip to content
Snippets Groups Projects
rust.yml 973 B
Newer Older
Benjamin Wingfield's avatar
Benjamin Wingfield committed
name: Rust

on:
  push:
    branches:
Benjamin Wingfield's avatar
Benjamin Wingfield committed
      - main
      - dev
Benjamin Wingfield's avatar
Benjamin Wingfield committed
  pull_request:
Benjamin Wingfield's avatar
Benjamin Wingfield committed
    branches:
      - main
      - dev
Benjamin Wingfield's avatar
Benjamin Wingfield committed

env:
  CARGO_TERM_COLOR: always

jobs:
Benjamin Wingfield's avatar
Benjamin Wingfield committed
  build_debug:
    runs-on: ubuntu-20.04
    container: rust:buster
Benjamin Wingfield's avatar
Benjamin Wingfield committed
    if: github.ref == 'refs/heads/dev'
Benjamin Wingfield's avatar
Benjamin Wingfield committed
    steps:
    - uses: actions/checkout@v3
    - name: Build
      run: cargo build --verbose
Benjamin Wingfield's avatar
Benjamin Wingfield committed
    - name: Run tests
      run: cargo test --verbose
Benjamin Wingfield's avatar
Benjamin Wingfield committed
    - name: Upload binary
      uses: actions/upload-artifact@v3
Benjamin Wingfield's avatar
Benjamin Wingfield committed
      with:
        name: hattivatti
        path: target/debug/hattivatti
Benjamin Wingfield's avatar
Benjamin Wingfield committed

  build_release:
    runs-on: ubuntu-20.04
    container: rust:buster
    if: github.ref == 'refs/heads/main'
    steps:
    - uses: actions/checkout@v3
    - name: Build
      run: cargo build --release --verbose
    - name: Run tests
      run: cargo test --verbose
    - name: Upload binary
      uses: actions/upload-artifact@v2
      with:
        name: hattivatti
        path: target/release/hattivatti