Skip to content

CI build

CI build #6

Workflow file for this run

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
env:
OWCURLOPTS: ${{ vars.OWCURLOPTS }}
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/[email protected]
bootow-lnx:
needs: start-start
name: Bootstrap Linux OW
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/[email protected]
- name: Bootstrap Linux OW
uses: "./.github/actions/testboot"
with:
arch: 'lnx'
gitpath: 'ci/ow'
bldscript: 'ci/buildx.sh'
owdebug: ${{ vars.OWDEBUG }}
bootow-nt:
needs: start-start
name: Bootstrap Windows OW
runs-on: windows-latest
steps:
- name: checkout
uses: actions/[email protected]
- name: Bootstrap Windows OW
uses: "./.github/actions/testboot"
with:
arch: 'nt'
gitpath: 'ci\ow'
bldscript: 'ci/buildx.cmd'
owdebug: ${{ vars.OWDEBUG }}
workflow-lnx:
needs: bootow-lnx
name: Linux
strategy:
matrix:
include:
- owtools: 'GCC'
tools: 'gcc'
image: 'ubuntu-latest'
- owtools: 'CLANG'
tools: 'clang'
image: 'ubuntu-latest'
uses: "./.github/workflows/cibldlnx.yml"
with:
arch: 'lnx'
bldscript: 'ci/buildx.sh'
tools: ${{ matrix.tools }}
owtools: ${{ matrix.owtools }}
image: ${{ matrix.image }}
owdebug: ${{ vars.OWDEBUG }}
workflow-nt:
needs: bootow-nt
name: Windows
strategy:
matrix:
include:
- owtools: 'VISUALC'
tools: 'vs2019'
image: 'windows-2019'
uses: "./.github/workflows/cibldnt.yml"
with:
arch: 'nt'
bldscript: 'ci/buildx.cmd'
tools: ${{ matrix.tools }}
owtools: ${{ matrix.owtools }}
image: ${{ matrix.image }}
owdebug: ${{ vars.OWDEBUG }}
workflow-osx:
needs: start-start
name: OSX
strategy:
matrix:
include:
- owtools: 'CLANG'
tools: 'clang'
image: 'macos-latest'
uses: "./.github/workflows/cibldosx.yml"
with:
arch: 'osx'
bldscript: 'ci/buildx.sh'
tools: ${{ matrix.tools }}
owtools: ${{ matrix.owtools }}
image: ${{ matrix.image }}
owdebug: ${{ vars.OWDEBUG }}
snapshot-pull:
needs:
- workflow-lnx
- workflow-nt
if: github.event_name == 'PullRequest'
name: CI Pull Request Artifact
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/[email protected]
- name: Load all release files
uses: "./.github/actions/relload"
with:
arch: 'lnx'
gitpath: 'rel'
tools_nt: 'vs2019'
tools_lnx: 'gcc'
owdebug: ${{ vars.OWDEBUG }}
- name: Create OW snapshot
id: owsnapshot
uses: "./.github/actions/snapshot"
with:
arch: 'lnx'
gitpath: 'rel'
owdebug: ${{ vars.OWDEBUG }}
- name: Upload Artifact owsnapshot
uses: actions/upload-artifact@v3
with:
name: 'owsnapshot'
path: ${{ steps.owsnapshot.outputs.fullname }}
retention-days: 10
- name: Call to delete Artifacs
uses: "./.github/actions/artfdelc"
with:
exclude: 'owsnapshot'
owdebug: ${{ vars.OWDEBUG }}
snapshot-push:
needs:
- workflow-lnx
- workflow-nt
if: github.event_name != 'PullRequest'
name: CI Release
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/[email protected]
- name: Load all release files
uses: "./.github/actions/relload"
with:
arch: 'lnx'
gitpath: 'rel'
tools_nt: 'vs2019'
tools_lnx: 'gcc'
owdebug: ${{ vars.OWDEBUG }}
- name: Create OW snapshot
id: owsnapshot
uses: "./.github/actions/snapshot"
with:
arch: 'lnx'
gitpath: 'rel'
owdebug: ${{ vars.OWDEBUG }}
- name: Last CI Build
uses: "./.github/actions/lastbld"
with:
arch: 'lnx'
tools: 'gcc'
fullname: ${{ steps.owsnapshot.outputs.fullname }}
owdebug: ${{ vars.OWDEBUG }}
- name: Call to delete Artifacs
uses: "./.github/actions/artfdelc"
with:
owdebug: ${{ vars.OWDEBUG }}