summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorJan Holthuis <jholthuis@mixxx.org>2021-10-15 14:20:32 +0200
committerJan Holthuis <jholthuis@mixxx.org>2021-10-17 00:04:04 +0200
commit2cb293a3ff73fba5bf95c277e794af969275d536 (patch)
tree3b4f337a7090a2c2bc23e9f634df3c2c4c19d590 /.github
parentb512051c1f799d59c14f7f0b4a83cad3d680afda (diff)
CI: Add build using Qt6 on Arch Linux
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yml36
1 files changed, 30 insertions, 6 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 5f4ed3955f..11c9108801 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -31,6 +31,25 @@ jobs:
artifacts_path: build/*.deb
artifacts_slug: ubuntu-focal
qt_qpa_platform: offscreen
+ - name: Arch Linux (Qt6, gcc)
+ os: ubuntu-20.04
+ # The Dockerfile for this container can be found at:
+ # https://github.com/Holzhaus/mixxx-ci-docker
+ container: holzhaus/mixxx-ci:20211016-qt6
+ cmake_args: >-
+ -DWARNINGS_FATAL=ON
+ -DQT6=ON
+ -DBULK=ON
+ -DFFMPEG=ON
+ -DLOCALECOMPARE=ON
+ -DMAD=ON
+ -DMODPLUG=ON
+ -DWAVPACK=ON
+ -DINSTALL_USER_UDEV_RULES=OFF
+ ctest_args:
+ compiler_cache: ccache
+ compiler_cache_path: ~/.ccache
+ qt_qpa_platform: offscreen
- name: macOS 10.15
os: macos-10.15
cmake_args: >-
@@ -88,6 +107,7 @@ jobs:
MACOS_CODESIGN_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_CODESIGN_CERTIFICATE_PASSWORD }}
runs-on: ${{ matrix.os }}
+ container: ${{ matrix.container }}
name: ${{ matrix.name }}
outputs:
artifact-macos-macosintel: ${{ steps.prepare_deploy.outputs.artifact-macos-macosintel }}
@@ -145,12 +165,12 @@ jobs:
brew install ccache ninja
- name: "[macOS/Windows] Get build environment name"
- if: runner.os != 'Linux'
+ if: runner.os != 'Linux' && matrix.buildenv_script != null
id: buildenv_name
run: ${{ matrix.buildenv_script }} name
- name: "[macOS/Windows] Set up build environment cache"
- if: runner.os != 'Linux'
+ if: runner.os != 'Linux' && matrix.buildenv_script != null
uses: actions/cache@v2
with:
path: ${{ matrix.buildenv_basepath }}
@@ -194,6 +214,7 @@ jobs:
- name: "Set up build environment"
id: buildenv
+ if: matrix.buildenv_script != null
run: ${{ matrix.buildenv_script }} setup
env:
BUILDENV_BASEPATH: ${{ matrix.buildenv_basepath }}
@@ -279,6 +300,7 @@ jobs:
QT_QPA_PLATFORM: ${{ matrix.qt_qpa_platform }}
- name: "Package"
+ if: matrix.cpack_generator != null
run: cpack -G ${{ matrix.cpack_generator }} -V
working-directory: build
@@ -290,7 +312,7 @@ jobs:
- name: "Package for PPA"
# No need to do the PPA build for both Ubuntu versions
- if: matrix.os == 'ubuntu-20.04'
+ if: matrix.os == 'ubuntu-20.04' && matrix.cpack_generator == 'DEB'
run: |
if [[ "${{ github.ref }}" == "refs/heads/main" ]] && [[ "${{ github.repository }}" == "mixxxdj/mixxx" ]]; then
CPACK_ARGS="-D DEB_UPLOAD_PPA=ppa:mixxx/nightlies -D CPACK_DEBIAN_DEBIAN_VERSION=0ubuntu2"
@@ -322,7 +344,8 @@ jobs:
# also generates metadata for file artifact and write it to the job
# output using the artifacts_slug value.
id: prepare_deploy
- if: github.event_name == 'push'
+ if: github.event_name == 'push' && matrix.artifacts_slug != null && matrix.artifacts_path != null
+
shell: bash
run: >
if [[ "${GITHUB_REF}" =~ ^refs/tags/.* ]];
@@ -372,7 +395,7 @@ jobs:
Add-Content -Path "$Env:GITHUB_ENV" -Value "PATH=$Env:PATH"
- name: "Set up SSH Agent"
- if: github.event_name == 'push' && env.SSH_PRIVATE_KEY != null
+ if: github.event_name == 'push' && env.SSH_PRIVATE_KEY != null && matrix.artifacts_slug != null && matrix.artifacts_path != null
shell: bash
env:
SSH_AUTH_SOCK: /tmp/ssh_agent.sock
@@ -387,7 +410,7 @@ jobs:
- name: "[macOS/Windows] Upload build to downloads.mixxx.org"
# skip deploying Ubuntu builds to downloads.mixxx.org because these are deployed to the PPA
- if: runner.os != 'Linux' && github.event_name == 'push' && env.SSH_AUTH_SOCK != null
+ if: runner.os != 'Linux' && github.event_name == 'push' && env.SSH_AUTH_SOCK != null && matrix.artifacts_slug != null && matrix.artifacts_path != null
shell: bash --login -eo pipefail "{0}"
run: rsync --verbose --recursive --checksum --times --delay-updates "deploy/" "${SSH_USER}@${SSH_HOST}:${DESTDIR}/"
env:
@@ -403,6 +426,7 @@ jobs:
echo "C:/Windows/System32;C:/ProgramData/Chocolatey/bin" >> $GITHUB_PATH
- name: "Upload GitHub Actions artifacts"
+ if: matrix.artifacts_name != null && matrix.artifacts_path != null
uses: actions/upload-artifact@v2
with:
name: ${{ matrix.artifacts_name }}