diff --git a/.dorpsgek.yml b/.dorpsgek.yml index bbd2b9780a..2a1dc5f0f5 100644 --- a/.dorpsgek.yml +++ b/.dorpsgek.yml @@ -17,3 +17,4 @@ notifications: workflow-run: only: - .github/workflows/release.yml + - .github/workflows/ci-nightly.yml diff --git a/.github/workflows/ci-build.yml b/.github/workflows/ci-build.yml index 059ee338ab..0cedad4c61 100644 --- a/.github/workflows/ci-build.yml +++ b/.github/workflows/ci-build.yml @@ -1,4 +1,4 @@ -name: CI +name: CI - Build on: pull_request: @@ -38,10 +38,6 @@ jobs: compiler: gcc cxxcompiler: g++ libraries: libsdl2-dev - - name: GCC - SDL1.2 - compiler: gcc - cxxcompiler: g++ - libraries: libsdl1.2-dev - name: GCC - Dedicated compiler: gcc cxxcompiler: g++ @@ -83,13 +79,11 @@ jobs: matrix: include: - os: windows-latest - name: Windows arch: x86 - os: windows-latest - name: Windows arch: x64 - name: ${{ matrix.name }} (${{ matrix.arch }}) + name: Windows (${{ matrix.arch }}) uses: ./.github/workflows/ci-windows.yml secrets: inherit @@ -98,25 +92,6 @@ jobs: os: ${{ matrix.os }} arch: ${{ matrix.arch }} - mingw: - strategy: - fail-fast: false - matrix: - include: - - msystem: MINGW64 - arch: x86_64 - - msystem: MINGW32 - arch: i686 - - name: MinGW (${{ matrix.arch }}) - - uses: ./.github/workflows/ci-mingw.yml - secrets: inherit - - with: - msystem: ${{ matrix.msystem }} - arch: ${{ matrix.arch }} - check_annotations: name: Check Annotations needs: @@ -124,7 +99,6 @@ jobs: - linux - macos - windows - - mingw if: always() && github.event_name == 'pull_request' diff --git a/.github/workflows/ci-nightly.yml b/.github/workflows/ci-nightly.yml new file mode 100644 index 0000000000..15bc55a97c --- /dev/null +++ b/.github/workflows/ci-nightly.yml @@ -0,0 +1,82 @@ +name: CI - Nightly + +on: + schedule: + - cron: '0 3 * * *' + workflow_dispatch: + +env: + CTEST_OUTPUT_ON_FAILURE: 1 + +jobs: + linux: + strategy: + fail-fast: false + matrix: + include: + - name: GCC - SDL1.2 + compiler: gcc + cxxcompiler: g++ + libraries: libsdl1.2-dev + + name: Linux (${{ matrix.name }}) + + uses: ./.github/workflows/ci-linux.yml + secrets: inherit + + with: + compiler: ${{ matrix.compiler }} + cxxcompiler: ${{ matrix.cxxcompiler }} + libraries: ${{ matrix.libraries }} + extra-cmake-parameters: + + macos: + strategy: + fail-fast: false + matrix: + include: + - arch: x64 + full_arch: x86_64 + + name: Mac OS (${{ matrix.arch }}) + + uses: ./.github/workflows/ci-macos.yml + secrets: inherit + + with: + arch: ${{ matrix.arch }} + full_arch: ${{ matrix.full_arch }} + + mingw: + strategy: + fail-fast: false + matrix: + include: + - msystem: MINGW64 + arch: x86_64 + - msystem: MINGW32 + arch: i686 + + name: MinGW (${{ matrix.arch }}) + + uses: ./.github/workflows/ci-mingw.yml + secrets: inherit + + with: + msystem: ${{ matrix.msystem }} + arch: ${{ matrix.arch }} + + check_annotations: + name: Check Annotations + needs: + - linux + - macos + - mingw + + if: always() + + runs-on: ubuntu-latest + + steps: + - name: Check annotations + uses: OpenTTD/actions/annotation-check@v5