diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 29cda927c23..f8db21b357c 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -19,7 +19,7 @@ name: Linux on: push: branches: [ master, 'client_release/**' ] - tags: [ 'client_release/**' ] + tags: [ 'client_release/**', 'vboxwrapper/**', 'wrapper/**' ] pull_request: branches: [ master ] schedule: @@ -200,3 +200,77 @@ jobs: fail_ci_if_error: true gcov: true verbose: false + build-release: + name: ${{ matrix.type }}-build-release + runs-on: ubuntu-latest + container: + image: ubuntu:13.04 + env: + AWS_ACCESS_KEY_ID: env.AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY: env.AWS_SECRET_ACCESS_KEY + AWS_DEFAULT_REGION: env.AWS_DEFAULT_REGION + strategy: + matrix: + type: [apps-vcpkg] + fail-fast: false + steps: + - name: Install dependencies + run: | + sed -i -e 's/archive.ubuntu.com\|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list + apt-get -qq update + apt-get install -y libstdc++6 make build-essential m4 pkg-config autoconf libtool git python3 curl zip unzip tar bison p7zip-full libx11-dev libxft-dev libxext-dev libdbus-1-dev libxi-dev libxtst-dev libxrandr-dev libnotify-dev + + - uses: actions/checkout@v2.4.0 + with: + fetch-depth: 2 + + - name: Check if build is running from origin repo + if: ${{ success() && env.AWS_ACCESS_KEY_ID != 0 && env.AWS_SECRET_ACCESS_KEY != 0 }} + run: | + echo "VCPKG_BINARY_SOURCES=clear;x-aws,s3://vcpkg.cache.boinc/,readwrite" >> $GITHUB_ENV + + - name: Check if build is running from fork + if: ${{ success() && (env.AWS_ACCESS_KEY_ID == 0 || env.AWS_SECRET_ACCESS_KEY == 0) }} + run: | + echo "VCPKG_BINARY_SOURCES=clear;x-aws-config,no-sign-request;x-aws,s3://vcpkg.cache.boinc/,read" >> $GITHUB_ENV + + + - name: Install aws cli tool + run: | + curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" + unzip awscliv2.zip + ./aws/install + + - name: Automake + if: success() + run: ./_autosetup + + - name: Configure apps with vcpkg + if: success() && matrix.type == 'apps-vcpkg' + run: linux/ci_configure_apps.sh + + - name: Make + if: success() + run: make -j $(nproc --all) LDFLAGS="-static-libstdc++ -s" + + - name: Prepare logs on failure + if: ${{ failure() }} + run: python ./deploy/prepare_deployment.py logs + + - name: Upload logs on failure + if: ${{ failure() }} + uses: actions/upload-artifact@v3 + with: + name: linux_release_logs_${{ matrix.type }}_${{ github.event.pull_request.head.sha }} + path: deploy/logs.7z + + - name: Prepare artifacts for deploy + if: success() + run: python ./deploy/prepare_deployment.py linux_release_${{ matrix.type }} + + - name: Upload artifacts + uses: actions/upload-artifact@v3 + if: success() + with: + name: linux_release_${{ matrix.type }}_${{ github.event.pull_request.head.sha }} + path: deploy/linux_${{ matrix.type }}.7z diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index d3515c66771..ba1c712ced6 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -19,7 +19,7 @@ name: Windows on: push: branches: [ master, 'client_release/**' ] - tags: [ 'client_release/**' ] + tags: [ 'client_release/**', 'vboxwrapper/**', 'wrapper/**' ] pull_request: branches: [ master ] schedule: