CI build #2116
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: CI-Build | |
run-name: CI build | |
on: | |
pull_request: | |
branches: '*' | |
paths: | |
- '**' | |
- '!.github/**' | |
- '!README.md' | |
push: | |
branches: | |
- master | |
paths: | |
- '**' | |
- '!.github/**' | |
- '!README.md' | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
start-start: | |
if: github.repository == 'open-watcom/open-watcom-v2' | |
name: Check if to run | |
runs-on: ubuntu-latest | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
Windows-pre: | |
needs: start-start | |
strategy: | |
matrix: | |
pre: | |
- name: '1.9' | |
id: '1.9' | |
os: 'nt' | |
image: 'windows-2022' | |
- name: '2.0' | |
id: '2.0' | |
tag: '2023-01-01-Build' | |
os: 'nt' | |
image: 'windows-2022' | |
name: Bootstrap Test OW ${{ matrix.pre.name }} Windows | |
runs-on: ${{ matrix.pre.image }} | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Open Watcom setup | |
uses: open-watcom/setup-watcom@v0 | |
with: | |
version: ${{ matrix.pre.id }} | |
tag: ${{ matrix.pre.tag }} | |
- name: Test | |
uses: "./.github/actions/testboot" | |
with: | |
hostos: ${{ matrix.pre.os }} | |
owversion: ${{ matrix.pre.id }} | |
owtag: ${{ matrix.pre.tag }} | |
owdebug: ${{ vars.OWDEBUG }} | |
Linux-pre: | |
needs: start-start | |
strategy: | |
matrix: | |
pre: | |
- name: '1.9' | |
id: '1.9' | |
os: 'lnx' | |
image: 'ubuntu-latest' | |
- name: '2.0' | |
id: '2.0' | |
tag: '2023-01-01-Build' | |
os: 'lnx' | |
image: 'ubuntu-latest' | |
name: Bootstrap Test OW ${{ matrix.pre.name }} Linux | |
runs-on: ${{ matrix.pre.image }} | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Open Watcom setup | |
uses: open-watcom/setup-watcom@v0 | |
with: | |
version: ${{ matrix.pre.id }} | |
tag: ${{ matrix.pre.tag }} | |
- name: Test | |
uses: "./.github/actions/testboot" | |
with: | |
hostos: ${{ matrix.pre.os }} | |
owversion: ${{ matrix.pre.id }} | |
owtag: ${{ matrix.pre.tag }} | |
owdebug: ${{ vars.OWDEBUG }} | |
Linux: | |
needs: | |
- Linux-pre | |
strategy: | |
matrix: | |
bld: | |
- owtools: 'GCC' | |
arch: 'x64' | |
image: 'ubuntu-latest' | |
tools: 'gcc' | |
- owtools: 'CLANG' | |
arch: 'x64' | |
image: 'ubuntu-latest' | |
tools: 'clang' | |
- owtools: 'GCC' | |
arch: 'a64' | |
image: 'ubuntu-24.04-arm' | |
tools: 'gcc' | |
name: Linux ${{ matrix.bld.arch }} ${{ matrix.bld.tools }} | |
uses: "./.github/workflows/cibldlnx.yml" | |
with: | |
arch: ${{ matrix.bld.arch }} | |
tools: ${{ matrix.bld.tools }} | |
owtools: ${{ matrix.bld.owtools }} | |
image: ${{ matrix.bld.image }} | |
owdebug: ${{ vars.OWDEBUG }} | |
Windows: | |
needs: | |
- Windows-pre | |
strategy: | |
matrix: | |
bld: | |
- owtools: 'VISUALC' | |
arch: 'x64' | |
image: 'windows-2022' | |
tools: 'vs2022' | |
name: Windows ${{ matrix.bld.arch }} ${{ matrix.bld.tools }} | |
uses: "./.github/workflows/cibldnt.yml" | |
with: | |
arch: ${{ matrix.bld.arch }} | |
tools: ${{ matrix.bld.tools }} | |
owtools: ${{ matrix.bld.owtools }} | |
image: ${{ matrix.bld.image }} | |
owdebug: ${{ vars.OWDEBUG }} | |
OSX: | |
needs: start-start | |
strategy: | |
matrix: | |
bld: | |
- owtools: 'CLANG' | |
arch: 'x64' | |
image: 'macos-13' | |
tools: 'clang' | |
relpath: 'rel bino64' | |
- owtools: 'CLANG' | |
arch: 'a64' | |
image: 'macos-14' | |
tools: 'clang' | |
relpath: 'rel armo64' | |
name: OSX ${{ matrix.bld.arch }} ${{ matrix.bld.tools }} | |
uses: "./.github/workflows/cibldosx.yml" | |
with: | |
arch: ${{ matrix.bld.arch }} | |
tools: ${{ matrix.bld.tools }} | |
relpath: ${{ matrix.bld.relpath }} | |
owtools: ${{ matrix.bld.owtools }} | |
image: ${{ matrix.bld.image }} | |
owdebug: ${{ vars.OWDEBUG }} | |
snapshot-both: | |
needs: | |
- Linux | |
- Windows | |
- OSX | |
name: CI Release | |
runs-on: ubuntu-latest | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: Load all release files | |
uses: "./.github/actions/relload" | |
with: | |
tools_nt: 'vs2022' | |
tools_lnx: 'gcc' | |
tools_osx: 'clang' | |
owdebug: ${{ vars.OWDEBUG }} | |
- name: Create OW snapshot | |
id: owsnapshot | |
uses: "./.github/actions/snapshot" | |
with: | |
hostos: 'lnx' | |
gitpath: 'rel' | |
owdebug: ${{ vars.OWDEBUG }} | |
- if: github.event_name == 'PullRequest' | |
name: Upload Pull Request owsnapshot | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'owsnapshot' | |
path: ${{ steps.owsnapshot.outputs.fullname }} | |
retention-days: 14 | |
overwrite: true | |
- if: vars.OWDELETEARTIFACTS == 1 && github.event_name == 'PullRequest' | |
name: Call to delete Pull Request Artifacs | |
uses: "./.github/actions/artfdelc" | |
with: | |
exclude: 'owsnapshot' | |
owdebug: ${{ vars.OWDEBUG }} | |
owcurlopts: ${{ vars.OWCURLOPTS }} | |
- if: github.event_name != 'PullRequest' | |
name: Upload Last CI Build | |
uses: "./.github/actions/lastbld" | |
with: | |
fullname: ${{ steps.owsnapshot.outputs.fullname }} | |
owdebug: ${{ vars.OWDEBUG }} | |
owcurlopts: ${{ vars.OWCURLOPTS }} | |
- if: vars.OWDELETEARTIFACTS == 1 && github.event_name != 'PullRequest' | |
name: Call to delete Last CI Build Artifacs | |
uses: "./.github/actions/artfdelc" | |
with: | |
owdebug: ${{ vars.OWDEBUG }} | |
owcurlopts: ${{ vars.OWCURLOPTS }} |