name: Build daemon on: workflow_dispatch: push: branches: [ main, develop ] pull_request: branches: [ main, develop ] env: CARGO_TERM_COLOR: always jobs: build: defaults: run: shell: bash working-directory: mediarepo-daemon strategy: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v2 if: ${{ !env.ACT }} - name: Cache build data if: ${{ !env.ACT }} uses: actions/cache@v2 with: path: | target ~/.cargo/ key: ${{ runner.os }}-cargo-${{ hashFiles('Cargo.lock') }} restore-keys: | ${{ runner.os }}-cargo- - name: Build run: cargo build --release --no-default-features - name: Upload artifacts if: ${{ !env.ACT }} uses: actions/upload-artifact@v2 with: name: mediarepo-daemon-${{ runner.os }} path: | target/release/mediarepo-daemon*