Files
pixiv_downloader/.github/workflows/CI.yml
2022-07-07 14:24:09 +00:00

155 lines
4.5 KiB
YAML

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 -vv
- 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 -vv || 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
build-ugoira:
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 libzip x264 ffmpeg || exit 1
- name: Cache
id: cache
uses: actions/cache@v2
with:
path: clib/
key: ${{ runner.os }}-${{ steps.cache_key.outputs.cache_key }}
- name: Setup NASM
if: steps.cache.outputs.cache-hit != 'true'
uses: ilammy/setup-nasm@v1
- name: Build thirdparty library
if: steps.cache.outputs.cache-hit != 'true'
run: |
export PKG_CONFIG_PATH=`pwd`/clib/lib/pkgconfig
cp scripts/build_*.sh -v ./ || exit 1
./build_libzip.sh || exit 1
./build_x264.sh || exit 1
./build_ffmpeg.sh || exit 1
- name: Build
run: |
export PKG_CONFIG_PATH=`pwd`/clib/lib/pkgconfig
export CMAKE_PREFIX_PATH=`pwd`/clib
export "LIBRARY_PATH=$LIBRARY_PATH:`pwd`/clib/lib"
export "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/clib/lib"
cargo build --features ugoira -vv || exit 1
- name: Test
run: |
export PKG_CONFIG_PATH=`pwd`/clib/lib/pkgconfig
export CMAKE_PREFIX_PATH=`pwd`/clib
export "LIBRARY_PATH=$LIBRARY_PATH:`pwd`/clib/lib"
export "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/clib/lib"
cargo test --features ugoira --verbose -- --show-output || exit 1
build-server:
runs-on: ubuntu-latest
steps:
- name: Check Out
uses: actions/checkout@v2
- name: Build
run: cargo build --features server -vv
- name: Run tests
run: cargo test --features server --verbose -- --show-output
build-all:
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 libzip x264 ffmpeg || exit 1
- name: Cache
id: cache
uses: actions/cache@v2
with:
path: clib/
key: ${{ runner.os }}-${{ steps.cache_key.outputs.cache_key }}
- name: Setup NASM
if: steps.cache.outputs.cache-hit != 'true'
uses: ilammy/setup-nasm@v1
- name: Build thirdparty library
if: steps.cache.outputs.cache-hit != 'true'
run: |
export PKG_CONFIG_PATH=`pwd`/clib/lib/pkgconfig
cp scripts/build_*.sh -v ./ || exit 1
./build_exiv2.sh || exit 1
./build_libzip.sh || exit 1
./build_x264.sh || exit 1
./build_ffmpeg.sh || exit 1
- name: Build
run: |
export PKG_CONFIG_PATH=`pwd`/clib/lib/pkgconfig
export CMAKE_PREFIX_PATH=`pwd`/clib
export "LIBRARY_PATH=$LIBRARY_PATH:`pwd`/clib/lib"
export "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/clib/lib"
cargo build --features all -vv || exit 1
- name: Test
run: |
export PKG_CONFIG_PATH=`pwd`/clib/lib/pkgconfig
export CMAKE_PREFIX_PATH=`pwd`/clib
export "LIBRARY_PATH=$LIBRARY_PATH:`pwd`/clib/lib"
export "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/clib/lib"
cargo test --features all --verbose -- --show-output || exit 1