Refactor the multi-platform CI/CD workflow#49
Merged
Conversation
Configures NSIS installer to create and remove Start Menu shortcuts for Ultralight Web Browser on Windows. Ensures shortcuts point to the correct executable after installation.
Introduces PowerShell and Bash scripts to generate a comprehensive markdown build summary for Ultralight WebBrowser CI/CD workflows. The scripts collect build metadata, package details, checksums, artifact verification, installation instructions, and build statistics for Windows, Linux, and macOS platforms.
Introduces steps to generate a comprehensive build summary and metadata JSON during the Windows build workflow. The summary and metadata files are displayed, uploaded as artifacts, and appended to the GitHub Actions job summary for improved traceability and reporting.
Introduces steps to generate a comprehensive build summary and metadata JSON during the macOS build workflow. The summary is displayed, uploaded as an artifact, and appended to the GitHub Actions job summary for improved build traceability and reporting.
Introduces steps to generate and display a comprehensive build summary and metadata JSON during the Linux build workflow. The summary and metadata files are now included in the uploaded artifacts and appended to the GitHub Actions job summary for improved traceability and reporting.
Introduces a new 'summary' job to the GitHub Actions workflow that aggregates build results, lists generated artifacts, and includes platform-specific summaries. The job also checks the overall build status and fails if any platform build did not succeed, improving visibility and reporting for multi-platform builds.
Introduces a comprehensive guide detailing recent improvements to the CI/CD pipeline for the Ultralight WebBrowser project, including build summaries, metadata files, installer fixes, and multi-platform dashboards.
Introduces multiple cache steps for CMake, SDK, APT, and compiler (ccache) to speed up GitHub Actions builds. Adds logic to skip CMake reconfiguration if cache is valid and displays cache statistics after build completion.
Introduces multiple cache steps for CMake build artifacts, SDK files, Homebrew, and compiler cache (ccache) to speed up GitHub Actions builds. Adds logic to skip CMake reconfiguration if cache is valid and displays cache statistics after build completion.
Introduces CMake build cache, SDK cache, and compiler cache (sccache) setup steps to the Windows GitHub Actions workflow. Adds logic to skip CMake reconfiguration if cache is valid and displays cache statistics after build, improving CI speed and resource usage.
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces a comprehensive build summary reporting system across all major platform build workflows (Windows, macOS, Linux). The changes ensure that each build job generates detailed summary and metadata files, uploads them as artifacts, and adds a readable summary to the GitHub Actions job output. Additionally, Windows installer packaging is improved with correct Start Menu shortcuts.
Build Summary and Metadata Generation:
build-windows.yml,build-macos.yml, andbuild-linux.ymlto generate aBUILD-SUMMARY.mdandBUILD-METADATA.jsonafter successful builds, capturing platform, version, commit, SDK version, and other metadata. [1] [2] [3]Aggregate Build Status and Summary:
summaryjob inbuild-all.ymlthat aggregates results from all platform builds, generates a comprehensive summary table, lists all produced artifacts, and checks overall build success.Workflow Output and Cleanup Improvements:
Windows Installer Packaging:
CMakeLists.txtto ensure Start Menu shortcuts in NSIS installer point to the correct executable, improving user experience for Windows installations.This pull request introduces a comprehensive build summary and metadata reporting system across all platform build workflows (Windows, macOS, Linux). The changes standardize the generation, display, and uploading of detailed build summaries and metadata files, and improve visibility into build results at both the job and workflow levels. Additionally, the Windows installer configuration is enhanced to create proper Start Menu shortcuts.
Build Summary & Metadata Reporting:
build-windows.yml,build-macos.yml, andbuild-linux.ymlto generate a comprehensive build summary (BUILD-SUMMARY.md) and metadata file (BUILD-METADATA.json) after each platform build, using platform-specific scripts. [1] [2] [3]Workflow-Level Summary & Status:
summaryjob inbuild-all.ymlthat runs after all platform builds, aggregates build results, lists generated artifacts, and includes platform-specific summaries in the GitHub Actions workflow summary. It also checks for overall build success and fails the workflow if any platform build fails.Windows Installer Improvements:
CMakeLists.txtto ensure Windows NSIS installers create Start Menu shortcuts pointing to the correct executable, improving user experience for Windows installations.Job Output Enhancement:
GITHUB_STEP_SUMMARY), making build details easily accessible from the Actions UI. [1] [2] [3]These changes provide more transparency, easier troubleshooting, and better documentation of build outputs for both developers and users.
This pull request introduces a comprehensive build summary and metadata reporting system across all major platform build workflows (Windows, macOS, Linux). It adds steps to generate, display, and upload detailed build summary reports and machine-readable metadata files, and ensures these are included in the job summary for easier CI visibility and traceability. Additionally, it improves installer configuration for Windows by ensuring Start Menu shortcuts are correctly set up.
Build Summary & Metadata Reporting:
build-windows.yml,build-macos.yml, andbuild-linux.ymlto generate a detailedBUILD-SUMMARY.mdand a machine-readableBUILD-METADATA.jsonfile after each successful build, using platform-specific scripts. [1] [2] [3]Multi-Platform Build Summary Aggregation:
summaryjob inbuild-all.ymlthat collects build summaries and artifacts from all platform jobs, generates an aggregated summary table, lists artifacts, and checks for overall build success, surfacing results in the workflow summary.Windows Installer Improvements:
CMakeLists.txtto ensure Start Menu shortcuts point to the correct executable and are properly created/deleted during install/uninstall, improving user experience for Windows installations.