name: CI env: BUILD_TYPE: Release on: push: branches: - master - dev pull_request: branches: - master - dev jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Update system run: sudo apt-get update - name: Install dependencies run: sudo apt-get install libcurl4-openssl-dev libjson-c-dev libyaml-dev libarchive-dev cmake make wget - name: Create Build Environment run: cmake -E make_directory ${{runner.workspace}}/build - name: Configure CMake working-directory: ${{runner.workspace}}/build run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_INSTALL_PREFIX=/usr -DENABLE_WINE=ON -DENABLE_DXVK=ON -DENABLE_LUTRIS=ON -DBUILD_MOCK:BOOL=ON - name: Build working-directory: ${{runner.workspace}}/build run: cmake --build . - name: Create AppImage working-directory: ${{runner.workspace}}/build run: | DESTDIR=AppDir cmake --install . wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage chmod +x linuxdeploy-x86_64.AppImage ./linuxdeploy-x86_64.AppImage --appdir AppDir \ --output appimage \ --desktop-file=$GITHUB_WORKSPACE/polecat.desktop \ --icon-file=$GITHUB_WORKSPACE/polecat.svg mv polecat*.AppImage polecat.AppImage - name: Upload AppIamge uses: actions/upload-artifact@v2 with: path: ${{runner.workspace}}/build/polecat.AppImage - name: Test mock build working-directory: ${{runner.workspace}}/build run: | ./polecat_mock wine list ./polecat_mock wine download mock ./polecat_mock wine run mock 1 2 3 4