name: CI on: push: branches: [ master ] pull_request: branches: [ master ] env: CARGO_TERM_COLOR: always jobs: build: runs-on: ubuntu-latest steps: - name: Check Out uses: actions/checkout@v2 - name: Build run: cargo build --verbose - name: Run tests run: cargo test --verbose build-exif: runs-on: ubuntu-latest steps: - name: Check Out uses: actions/checkout@v2 with: fetch-depth: 0 submodules: true - name: Get cache key id: cache_key run: | cd scripts python3 get_cache_key.py exiv2 || exit 1 - name: Cache id: cache uses: actions/cache@v2 with: path: clib/ key: ${{ runner.os }}-${{ steps.cache_key.outputs.cache_key }} - name: Build thirdparty library if: steps.cache.outputs.cache-hit != 'true' run: | cp scripts/build_*.sh -v ./ || exit 1 ./build_exiv2.sh || exit 1 - name: Build run: | export CMAKE_PREFIX_PATH=`pwd`/clib cargo build --features exif --verbose || exit 1 - name: Test run: | export CMAKE_PREFIX_PATH=`pwd`/clib export "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/clib/lib" cargo test --features exif --verbose -- --show-output || exit 1