Test xPack GCC on supported platforms #70
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
| # ----------------------------------------------------------------------------- | |
| # DO NOT EDIT! | |
| # Automatically generated from npm-packages-helper/templates/*. | |
| # | |
| # This file is part of the xPack project (http://xpack.github.io). | |
| # Copyright (c) 2021-2025 Liviu Ionescu. All rights reserved. | |
| # | |
| # Permission to use, copy, modify, and/or distribute this software | |
| # for any purpose is hereby granted, under the terms of the MIT license. | |
| # | |
| # If a copy of the license was not distributed with this file, it can | |
| # be obtained from https://opensource.org/licenses/mit. | |
| # | |
| # ----------------------------------------------------------------------------- | |
| # https://help.github.com/en/actions | |
| # https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners | |
| # https://docs.github.com/en/actions/reference/events-that-trigger-workflows#workflow_dispatch | |
| # https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#workflow_dispatch | |
| # https://docs.github.com/en/rest/reference/actions#create-a-workflow-dispatch-event | |
| # https://github.com/actions/checkout | |
| # https://github.com/actions/upload-artifact | |
| # https://github.com/actions/download-artifact | |
| # ----------------------------------------------------------------------------- | |
| name: 'Test xPack GCC on supported platforms' | |
| on: | |
| workflow_dispatch: | |
| inputs: | |
| base_url: | |
| description: 'The folder part of the URL where binaries are stored' | |
| required: false | |
| default: 'release' | |
| version: | |
| description: 'The semver of the release' | |
| required: false | |
| default: 'current' | |
| helper-git-ref: | |
| description: 'The helper branch, tag or SHA to checkout' | |
| required: false | |
| default: 'xpack-development' | |
| jobs: | |
| win32-x64-test: | |
| name: 'win32-x64 gcc ${{github.event.inputs.version}} test 2025' | |
| runs-on: windows-2025 | |
| defaults: | |
| run: | |
| # https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell | |
| shell: bash # for -- | |
| steps: | |
| - name: 'Show environment' | |
| run: | | |
| uname -a | |
| systeminfo # lsb_release -sd | |
| echo "whoami: $(whoami)" | |
| echo "pwd: $(pwd)" | |
| ls -lLA | |
| env | sort | grep -E '^[^ \t]+=' | |
| # https://github.com/actions/checkout | |
| - name: 'Checkout project' | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 3 | |
| - name: 'Checkout helper ${{github.event.inputs.helper-git-ref}}' | |
| uses: actions/checkout@v5 | |
| with: | |
| repository: xpack-dev-tools/xbb-helper-xpack | |
| path: build-assets/xpacks/@xpack-dev-tools/xbb-helper | |
| ref: ${{github.event.inputs.helper-git-ref}} | |
| fetch-depth: 3 | |
| - name: 'Run ${{github.event.inputs.version}} native test' | |
| run: bash build-assets/scripts/test.sh --version ${{github.event.inputs.version}} --base-url ${{github.event.inputs.base_url}} | |
| - name: Upload platform tests report | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: tests-report-win32-x64 | |
| path: ${{github.workspace}}/build-assets/build/win32-x64/artefacts/tests-report-*.md | |
| overwrite: true | |
| linux-x64-test: | |
| name: 'linux-x64 gcc ${{github.event.inputs.version}} test' | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: 'Show environment' | |
| run: | | |
| uname -a | |
| lsb_release -sd | |
| echo "whoami: $(whoami)" | |
| echo "pwd: $(pwd)" | |
| ls -lLA | |
| env | sort | grep -E '^[^ \t]+=' | |
| - name: 'Checkout project' | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 3 | |
| - name: 'Checkout helper ${{github.event.inputs.helper-git-ref}}' | |
| uses: actions/checkout@v5 | |
| with: | |
| repository: xpack-dev-tools/xbb-helper-xpack | |
| path: build-assets/xpacks/@xpack-dev-tools/xbb-helper | |
| ref: ${{github.event.inputs.helper-git-ref}} | |
| fetch-depth: 3 | |
| - name: 'Run ${{github.event.inputs.version}} native test' | |
| run: bash build-assets/scripts/test.sh --image github-actions-ubuntu-latest --version ${{github.event.inputs.version}} --base-url ${{github.event.inputs.base_url}} | |
| - name: Upload platform tests report | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: tests-report-linux-x64 | |
| path: ${{github.workspace}}/build-assets/build/linux-x64/artefacts/tests-report-*.md | |
| overwrite: true | |
| linux-arm64-test: | |
| name: 'linux-arm64 gcc ${{github.event.inputs.version}} test' | |
| # runs-on: [self-hosted, linux, arm64, xbbla] | |
| runs-on: ubuntu-24.04-arm | |
| steps: | |
| - name: 'Show environment' | |
| run: | | |
| uname -a | |
| lsb_release -sd | |
| echo "whoami: $(whoami)" | |
| echo "pwd: $(pwd)" | |
| ls -lLA | |
| env | sort | grep -E '^[^ \t]+=' | |
| - name: 'Checkout project' | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 3 | |
| - name: 'Checkout helper ${{github.event.inputs.helper-git-ref}}' | |
| uses: actions/checkout@v5 | |
| with: | |
| repository: xpack-dev-tools/xbb-helper-xpack | |
| path: build-assets/xpacks/@xpack-dev-tools/xbb-helper | |
| ref: ${{github.event.inputs.helper-git-ref}} | |
| fetch-depth: 3 | |
| - name: 'Run ${{github.event.inputs.version}} native test' | |
| run: bash build-assets/scripts/test.sh --image github-actions-ubuntu-latest --version ${{github.event.inputs.version}} --base-url ${{github.event.inputs.base_url}} | |
| - name: Upload platform tests report | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: tests-report-linux-arm64 | |
| path: ${{github.workspace}}/build-assets/build/linux-arm64/artefacts/tests-report-*.md | |
| overwrite: true | |
| generate-tests-report: | |
| name: 'Generate tests report for xPack GCC@${{github.event.inputs.version}}' | |
| runs-on: ubuntu-24.04 | |
| needs: [win32-x64-test, linux-x64-test, linux-arm64-test] | |
| steps: | |
| - name: Download platform test reports | |
| uses: actions/download-artifact@v4 | |
| with: | |
| path: ${{github.workspace}}/build-assets/artefacts | |
| merge-multiple: true | |
| - name: Concatenate platform test reports | |
| run: | | |
| ls -lR ${{github.workspace}}/build-assets/artefacts | |
| touch ${{github.workspace}}/build-assets/artefacts/tests-report.md | |
| echo "---" >>${{github.workspace}}/build-assets/artefacts/tests-report.md | |
| echo "title: xPack GCC ${{github.event.inputs.version}} test results" >>${{github.workspace}}/build-assets/artefacts/tests-report.md | |
| echo >>${{github.workspace}}/build-assets/artefacts/tests-report.md | |
| echo "date: $(date "+%Y-%m-%d %H:%M:%S %z")" >>${{github.workspace}}/build-assets/artefacts/tests-report.md | |
| echo >>${{github.workspace}}/build-assets/artefacts/tests-report.md | |
| echo "---" >>${{github.workspace}}/build-assets/artefacts/tests-report.md | |
| echo >>${{github.workspace}}/build-assets/artefacts/tests-report.md | |
| (cd ${{github.workspace}}; cat -s build-assets/artefacts/tests-report-win32-x64.md build-assets/artefacts/tests-report-linux-x64.md build-assets/artefacts/tests-report-linux-arm64.md | tee -a build-assets/artefacts/tests-report.md) | |
| mv -v ${{github.workspace}}/build-assets/artefacts/tests-report.md ${{github.workspace}}/build-assets/artefacts/${{github.event.inputs.version}}.md | |
| - name: Upload tests report | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: tests-report | |
| path: ${{github.workspace}}/build-assets/artefacts/${{github.event.inputs.version}}.md | |
| overwrite: true | |
| # ----------------------------------------------------------------------------- |