* Use Deskflow Name * Remove business-oriented options from issue templates * Remove business-oriented workflow * Bump version to 3.0.0 (to avoid confusion with previously used version numbers 1.x & 2.x) * Update readme to reflect new project name and goals * Found some more "synergy" to rename * Rename `synlib` to `app` * Rename `syntool` to `deskflow-legacy` * Rename `synwinhk` to `dfwhook` * Rename dirs from synergy to deskflow * Rename more "Synergy" files * Rename app bundle ID * Fixed copyright typo * Rename only title in serial key dialog (to be moved downstream later) * Preserve original serial key window for moving downstream * Restore dialogs ready for moving downstream * Rename `QDeskflowApplication` to `DeskflowApplication` (the Q is confusing) * Restore Volker's original project name * Fixed mimetype * Fixed weird grammar * Fixed (more) weird grammar * Broken link, restoring (but we should move all links out of source) * Broken link, restoring (but we should move all links out of source) * Add write permission to valgrind-analysis.yml * Restore AUR conflicts * Apply Clang format * Update ChangeLog * Back out version change --------- Co-authored-by: Nick Bolton <nick@symless.com>
128 lines
3.6 KiB
YAML
128 lines
3.6 KiB
YAML
# Weekly build of the Linux Docker containers.
|
|
#
|
|
# The objective is to reduce the problem where package updates often break the build process
|
|
# due to transient network errors.
|
|
#
|
|
# We use Docker Buildx instead of Docker Automated Builds so that we can create an image that is
|
|
# always at most a week out of date (instead of the last time a Dockerfile change was pushed).
|
|
|
|
name: Build containers
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: "0 5 * * 0"
|
|
|
|
jobs:
|
|
build-containers:
|
|
name: ${{ matrix.os.name }}
|
|
runs-on: ${{ matrix.os.runs-on }}
|
|
if: ${{ vars.BUILD_CONTAINERS }}
|
|
timeout-minutes: 10
|
|
|
|
strategy:
|
|
# Build all images even if some fail.
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
os:
|
|
- name: debian-13-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: debian
|
|
base-image: debian:trixie-slim
|
|
platform: amd64
|
|
|
|
- name: debian-12-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: debian
|
|
base-image: debian:12-slim
|
|
platform: amd64
|
|
|
|
- name: debian-12-arm64
|
|
runs-on: ubuntu-24.04-8-core-arm64
|
|
config-dir: debian
|
|
base-image: arm64v8/debian:12-slim
|
|
platform: arm64
|
|
|
|
- name: ubuntu-24.04-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: debian
|
|
base-image: ubuntu:24.04
|
|
platform: amd64
|
|
|
|
- name: ubuntu-22.04-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: debian
|
|
base-image: ubuntu:22.04
|
|
platform: amd64
|
|
|
|
- name: fedora-40-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: fedora
|
|
base-image: fedora:40
|
|
platform: amd64
|
|
|
|
- name: fedora-40-arm64
|
|
runs-on: ubuntu-24.04-8-core-arm64
|
|
config-dir: fedora
|
|
base-image: arm64v8/fedora:40
|
|
platform: arm64
|
|
|
|
- name: fedora-39-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: fedora
|
|
base-image: fedora:39
|
|
platform: amd64
|
|
|
|
- name: rockylinux-9-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: fedora
|
|
base-image: rockylinux:9
|
|
platform: amd64
|
|
|
|
- name: almalinux-9-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: fedora
|
|
base-image: almalinux:9
|
|
platform: amd64
|
|
|
|
- name: opensuse-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: opensuse
|
|
base-image: opensuse/tumbleweed:latest
|
|
platform: amd64
|
|
|
|
- name: archlinux-amd64
|
|
runs-on: ubuntu-latest
|
|
config-dir: archlinux
|
|
base-image: archlinux:latest
|
|
platform: amd64
|
|
|
|
- name: manjaro-amd64
|
|
config-dir: archlinux
|
|
runs-on: ubuntu-latest
|
|
base-image: manjarolinux/base:latest
|
|
platform: amd64
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up Docker Buildx
|
|
uses: docker/setup-buildx-action@v3
|
|
|
|
- name: Login to Docker Hub
|
|
uses: docker/login-action@v3
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
|
|
- name: Build and push
|
|
uses: docker/build-push-action@v6
|
|
with:
|
|
push: true
|
|
context: .
|
|
file: ./.github/docker/${{ matrix.os.config-dir }}/Dockerfile
|
|
tags: deskflow/deskflow:${{ matrix.os.name }}
|
|
build-args: BASE_IMAGE=${{ matrix.os.base-image }}
|
|
platforms: linux/${{ matrix.os.platform }}
|