add clang 17 #30
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build Docker Images | |
on: push | |
jobs: | |
qbs: | |
name: "Qbs Docker builds" | |
strategy: | |
fail-fast: false | |
matrix: | |
distro: ['lunar'] | |
qbs_version: ['1.24.1', '2.0.2', '2.1.1'] | |
clang: [ | |
{major: 15, source: 'apt'}, | |
{major: 16, source: 'apt'}, | |
{major: 17, source: 'llvm'} | |
] | |
gcc: [ | |
{major: 11, source: 'apt'}, | |
{major: 12, source: 'apt'}, | |
{major: 13, source: 'apt'} | |
] | |
qt_version: ['6.4.3', '6.5.2'] | |
include: | |
- distro: lunar | |
qbs_version: '2.1.1' | |
clang: {major: 17, source: 'llvm'} | |
gcc: {major: 13, source: 'apt'} | |
qt_version: '6.5.2' | |
gcc_tags: | | |
arbmind/qbs-gcc:latest | |
ghcr.io/arbmind/qbs-gcc:latest | |
gcc_qt_tags: | | |
arbmind/qbs-gcc-qt:latest | |
ghcr.io/arbmind/qbs-gcc-qt:latest | |
clang_tags: | | |
arbmind/qbs-clang:latest | |
ghcr.io/arbmind/qbs-clang:latest | |
clang_libstdcpp_tags: | | |
arbmind/qbs-clang-libstdcpp:latest | |
ghcr.io/arbmind/qbs-clang-libstdcpp:latest | |
clang_libstdcpp_qt_tags: | | |
arbmind/qbs-clang-libstdcpp-qt:latest | |
ghcr.io/arbmind/qbs-clang-libstdcpp-qt:latest | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Login to DockerHub | |
if: github.event_name != 'pull_request' | |
uses: docker/login-action@v2 | |
with: | |
username: ${{ secrets.DOCKER_USERNAME }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
- name: Login to GitHub Container Registry | |
if: github.event_name != 'pull_request' | |
uses: docker/login-action@v2 | |
with: | |
registry: ghcr.io | |
username: ${{ github.repository_owner }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Qbs ${{ matrix.qbs_version }} + GCC ${{ matrix.gcc.major }} | |
uses: docker/build-push-action@v3 | |
with: | |
# buildkitd-flags: --debug | |
target: qbs-gcc | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: | | |
arbmind/qbs-gcc:${{ matrix.qbs_version }}-${{ matrix.gcc.major }} | |
ghcr.io/arbmind/qbs-gcc:${{ matrix.qbs_version }}-${{ matrix.gcc.major }} | |
${{ matrix.gcc_tags }} | |
build-args: | | |
DISTRO=${{ matrix.distro }} | |
GCC_MAJOR=${{ matrix.gcc.major }} | |
GCC_SOURCE=${{ matrix.gcc.source }} | |
QT_VERSION=${{ matrix.qt_version }} | |
QBS_VERSION=${{ matrix.qbs_version }} | |
- name: Qbs ${{ matrix.qbs_version }} + GCC ${{ matrix.gcc.major }} + Qt ${{ matrix.qt_version }} | |
uses: docker/build-push-action@v3 | |
with: | |
target: qbs-gcc-qt | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: | | |
arbmind/qbs-gcc-qt:${{ matrix.qbs_version }}-${{ matrix.gcc.major }}-${{ matrix.qt_version }} | |
ghcr.io/arbmind/qbs-gcc-qt:${{ matrix.qbs_version }}-${{ matrix.gcc.major }}-${{ matrix.qt_version }} | |
${{ matrix.gcc_qt_tags }} | |
build-args: | | |
DISTRO=${{ matrix.distro }} | |
GCC_MAJOR=${{ matrix.gcc.major }} | |
GCC_SOURCE=${{ matrix.gcc.source }} | |
QT_VERSION=${{ matrix.qt_version }} | |
QBS_VERSION=${{ matrix.qbs_version }} | |
- name: Qbs ${{ matrix.qbs_version }} + Clang ${{ matrix.clang.major }} | |
uses: docker/build-push-action@v3 | |
with: | |
target: qbs-clang | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: | | |
arbmind/qbs-clang:${{ matrix.qbs_version }}-${{ matrix.clang.major }} | |
ghcr.io/arbmind/qbs-clang:${{ matrix.qbs_version }}-${{ matrix.clang.major }} | |
${{ matrix.clang_tags }} | |
build-args: | | |
DISTRO=${{ matrix.distro }} | |
CLANG_MAJOR=${{ matrix.clang.major }} | |
CLANG_SOURCE=${{ matrix.clang.source }} | |
QT_VERSION=${{ matrix.qt_version }} | |
QBS_VERSION=${{ matrix.qbs_version }} | |
- name: Qbs ${{ matrix.qbs_version }} + Clang ${{ matrix.clang.major }} + LibStdC++ ${{ matrix.gcc.major }} | |
uses: docker/build-push-action@v3 | |
with: | |
target: qbs-clang-libstdcpp | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: | | |
arbmind/qbs-clang-libstdcpp:${{ matrix.qbs_version }}-${{ matrix.clang.major }}-${{ matrix.gcc.major }} | |
ghcr.io/arbmind/qbs-clang-libstdcpp:${{ matrix.qbs_version }}-${{ matrix.clang.major }}-${{ matrix.gcc.major }} | |
${{ matrix.clang_libstdcpp_tags }} | |
build-args: | | |
DISTRO=${{ matrix.distro }} | |
CLANG_MAJOR=${{ matrix.clang.major }} | |
CLANG_SOURCE=${{ matrix.clang.source }} | |
GCC_MAJOR=${{ matrix.gcc.major }} | |
GCC_SOURCE=${{ matrix.gcc.source }} | |
QT_VERSION=${{ matrix.qt_version }} | |
QBS_VERSION=${{ matrix.qbs_version }} | |
- name: Qbs ${{ matrix.qbs_version }} + Clang ${{ matrix.clang.major }} + LibStdC++ ${{ matrix.gcc.major }} + Qt ${{ matrix.qt_version }} | |
uses: docker/build-push-action@v3 | |
with: | |
target: qbs-clang-libstdcpp-qt | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: | | |
arbmind/qbs-clang-libstdcpp-qt:${{ matrix.qbs_version }}-${{ matrix.clang.major }}-${{ matrix.gcc.major }}-${{ matrix.qt_version }} | |
ghcr.io/arbmind/qbs-clang-libstdcpp-qt:${{ matrix.qbs_version }}-${{ matrix.clang.major }}-${{ matrix.gcc.major }}-${{ matrix.qt_version }} | |
${{ matrix.clang_libstdcpp_qt_tags }} | |
build-args: | | |
DISTRO=${{ matrix.distro }} | |
CLANG_MAJOR=${{ matrix.clang.major }} | |
CLANG_SOURCE=${{ matrix.clang.source }} | |
GCC_MAJOR=${{ matrix.gcc.major }} | |
GCC_SOURCE=${{ matrix.gcc.source }} | |
QT_VERSION=${{ matrix.qt_version }} | |
QBS_VERSION=${{ matrix.qbs_version }} |