Skip to content

refactor nightly build ci #551

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

ryoppippi
Copy link

@ryoppippi ryoppippi commented Apr 20, 2025

This pull request refactors the GitHub Actions workflow for building and releasing artifacts. The changes consolidate multiple build jobs into a single matrix-based job, streamline artifact handling, and introduce a new release job for checksum generation and artifact uploads.

Workflow Consolidation and Simplification:

  • Replaced individual build jobs (build-linux-x86_64, build-linux-aarch64, build-macos-aarch64, build-macos-x86_64) with a single matrix-based build job supporting multiple OS and architecture combinations. This reduces duplication and improves maintainability. ([.github/workflows/build.ymlL14-R88](https://github.com/lightpanda-io/browser/pull/551/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721L14-R88))
  • Introduced dynamic environment variables (ARCH, OS, ARTIFACT_NAME) based on the matrix configuration to standardize artifact naming and handling. ([.github/workflows/build.ymlL14-R88](https://github.com/lightpanda-io/browser/pull/551/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721L14-R88))

Artifact Management:

  • Replaced the ncipollo/release-action for uploading build artifacts with actions/upload-artifact, ensuring artifacts are stored for later use in the release job. ([.github/workflows/build.ymlL14-R88](https://github.com/lightpanda-io/browser/pull/551/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721L14-R88))
  • Added a release job that downloads all build artifacts, generates checksums, and uploads both the binaries and checksum file to the release. ([.github/workflows/build.ymlL14-R88](https://github.com/lightpanda-io/browser/pull/551/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721L14-R88))

Miscellaneous Improvements:

  • Fixed a typo in a comment ("recusively""recursively") for clarity. ([.github/workflows/build.ymlL14-R88](https://github.com/lightpanda-io/browser/pull/551/files#diff-5c3fa597431eda03ac3339ae6bf7f05e1a50d6fc7333679ec38e21b337cb6721L14-R88))

I have read the CLA Document and I hereby sign the CLA

Refactor the GitHub Actions workflow to use a build matrix,
consolidating the separate build jobs for different OS and
architecture combinations (linux/x86_64, linux/aarch64,
macos/aarch64, macos/x86_64).

This simplifies the workflow structure and makes it easier to manage
and extend build targets.

Introduced a separate `release` job that depends on the matrix builds.
This job downloads all build artifacts using
`actions/download-artifact`,
generates SHA256 checksums for them, and then uploads both the
binaries and the checksum file to the 'nightly' release tag using
`ncipollo/release-action`.

Build artifacts are now uploaded individually per matrix job using
`actions/upload-artifact` instead of directly to the release within
each build job.
Copy link


Thank you for your submission, we really appreciate it. Like many open-source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution. You can sign the CLA by just posting a Pull Request Comment same as the below format.


I have read the CLA Document and I hereby sign the CLA


You can retrigger this bot by commenting recheck in this Pull Request. Posted by the CLA Assistant Lite bot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
1 participant