Release Build (daily and monthly) #817
This file contains hidden or 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: Release | |
| run-name: Release Build (daily and monthly) | |
| on: | |
| schedule: | |
| - cron: '30 0 * * *' | |
| workflow_dispatch: | |
| env: | |
| OWDEBUG: "${{vars.DEBUG}}" | |
| OWTESTMODE: "${{vars.TESTMODE}}" | |
| OWCURLOPTS: "${{vars.CURLOPTS}}" | |
| OWUSETARARCHIVE: '1' | |
| jobs: | |
| check_run: | |
| if: github.repository == 'open-watcom/open-watcom-v2' || github.repository == vars.REPO | |
| name: Check if to run | |
| runs-on: ubuntu-latest | |
| outputs: | |
| runit: ${{steps.check_tag.outputs.old}} | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| - if: env.OWTESTMODE != '1' | |
| name: Check tag reference | |
| id: check_tag | |
| uses: ./.github/actions/ghtagchk | |
| with: | |
| tag: 'Current-build' | |
| builds: | |
| needs: check_run | |
| if: needs.check_run.outputs.runit | |
| strategy: | |
| matrix: | |
| include: | |
| # LINUX X64 | |
| - name: 'Linux x64' | |
| suffix: 'lnx x64' | |
| docbuild: '' | |
| run_tests: '1' | |
| image: 'ubuntu-22.04' | |
| owtools: 'GCC' | |
| args: 'gcc' | |
| gitpath: 'rel' | |
| # LINUX ARM64 | |
| - name: 'Linux arm64' | |
| suffix: 'lnx a64' | |
| docbuild: '' | |
| run_tests: '' | |
| image: 'ubuntu-24.04-arm' | |
| owtools: 'GCC' | |
| args: 'gcc' | |
| gitpath: 'rel arml64' | |
| # WINDOWS X64 | |
| - name: 'Windows x64' | |
| suffix: 'nt x64' | |
| docbuild: '1' | |
| run_tests: '1' | |
| image: 'windows-2022' | |
| owtools: 'VISUALC' | |
| args: 'vs2022' | |
| gitpath: 'rel' | |
| # OSX X64 | |
| - name: 'OSX x64' | |
| suffix: 'osx x64' | |
| docbuild: '' | |
| run_tests: '' | |
| image: 'macos-15-intel' | |
| owtools: 'CLANG' | |
| args: 'clang' | |
| gitpath: 'rel bino64' | |
| # OSX ARM64 | |
| - name: 'OSX arm64' | |
| suffix: 'osx a64' | |
| docbuild: '' | |
| run_tests: '' | |
| image: 'macos-15' | |
| owtools: 'CLANG' | |
| args: 'clang' | |
| gitpath: 'rel armo64' | |
| name: ${{matrix.name}} ${{matrix.args}} | |
| uses: ./.github/workflows/buildx.yml | |
| with: | |
| args: ${{matrix.args}} | |
| suffix: ${{matrix.suffix}} ${{matrix.args}} | |
| gitpath: ${{matrix.gitpath}} | |
| owtools: ${{matrix.owtools}} | |
| image: ${{matrix.image}} | |
| docbuild: ${{matrix.docbuild}} | |
| run_tests: ${{matrix.run_tests}} | |
| installers: | |
| needs: | |
| - builds | |
| strategy: | |
| matrix: | |
| include: | |
| - asset: instdos | |
| title: 'Build DOS Installer' | |
| - asset: instos2 | |
| title: 'Build OS/2 Installer' | |
| - asset: instlnx32 | |
| title: 'Build Linux(32-bit) Installer' | |
| - asset: instlnx64 | |
| title: 'Build Linux(64-bit) Installer' | |
| - asset: instwin16 | |
| title: 'Build Windows(16-bit) Installer' | |
| - asset: instwin32 | |
| title: 'Build Windows(32-bit) Installer' | |
| - asset: instwin64 | |
| title: 'Build Windows(64-bit) Installer' | |
| - asset: snapshot | |
| title: 'Create OW snapshot' | |
| gitpath: 'distrib ow bin' | |
| name: ${{matrix.title}} | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| - name: ${{matrix.title}} | |
| uses: ./.github/actions/relload | |
| with: | |
| asset: ${{matrix.asset}} | |
| suffix_nt: 'vs2022' | |
| suffix_lnx: 'gcc' | |
| suffix_osx: 'clang' | |
| isrelrel: '1' | |
| release: | |
| needs: installers | |
| name: Create GitHub Release | |
| runs-on: ubuntu-latest | |
| outputs: | |
| drelid: ${{steps.relrel.outputs.relid}} | |
| mrelid: ${{steps.mrelrel.outputs.relid}} | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| - name: GitHub Release | |
| id: relrel | |
| uses: ./.github/actions/release | |
| with: | |
| isrelrel: '1' | |
| - name: GitHub Month Release | |
| id: mrelrel | |
| uses: ./.github/actions/releasem | |
| - run: echo "drelid=${{steps.relrel.outputs.relid}};mrelid=${{steps.mrelrel.outputs.relid}}" | |
| shell: bash | |
| uploads: | |
| needs: release | |
| strategy: | |
| matrix: | |
| include: | |
| - asset: instdos | |
| title: 'DOS Installer' | |
| - asset: instos2 | |
| title: 'OS/2 Installer' | |
| - asset: instlnx32 | |
| title: 'Linux(32-bit) Installer' | |
| - asset: instlnx64 | |
| title: 'Linux(64-bit) Installer' | |
| - asset: instwin16 | |
| title: 'Windows(16-bit) Installer' | |
| - asset: instwin32 | |
| title: 'Windows(32-bit) Installer' | |
| - asset: instwin64 | |
| title: 'Windows(64-bit) Installer' | |
| - asset: snapshot | |
| title: 'OW snapshot' | |
| name: Upload ${{matrix.title}} | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| - run: echo "drelid=${{needs.release.outputs.drelid}};mrelid=${{needs.release.outputs.mrelid}}" | |
| shell: bash | |
| - name: Load asset files artifact | |
| uses: ./.github/actions/artfload | |
| with: | |
| artifact: install ${{matrix.asset}} | |
| gitpath: 'temp' | |
| - name: Upload asset files (day release) | |
| uses: ./.github/actions/ghassets | |
| with: | |
| relid: ${{needs.release.outputs.drelid}} | |
| gitpath: 'temp' | |
| - if: needs.release.outputs.mrelid != '' | |
| name: Upload asset files (month release) | |
| uses: ./.github/actions/ghassets | |
| with: | |
| relid: ${{needs.release.outputs.mrelid}} | |
| gitpath: 'temp' | |
| end-end: | |
| needs: uploads | |
| name: Call to delete Artifacts | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: checkout | |
| uses: actions/checkout@v4 | |
| - if: vars.DELETEARTIFACTS == '1' | |
| name: Call to delete Artifacs | |
| uses: ./.github/actions/artfdelc |