[PR #200] [MERGED] feat(build): parallelize go-build-release and github actions with matrix #1569

Closed
opened 2026-04-24 20:07:39 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/fosrl/newt/pull/200
Author: @water-sucks
Created: 12/12/2025
Status: Merged
Merged: 12/13/2025
Merged by: @oschwartz10612

Base: mainHead: parallelize-makefile


📝 Commits (3)

  • de5627b feat(build): parallelize go-build-release using separate arch rules
  • 865ac4b feat(build): double-tag docker release builds with "latest" and tag name
  • 1dcb68d feat(ci): use matrix for building all makefile targets in parallel

📊 Changes

2 files changed (+59 additions, -18 deletions)

View changed files

📝 .github/workflows/test.yml (+20 -12)
📝 Makefile (+39 -6)

📄 Description

Community Contribution License Agreement

By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.

Description

This PR splits the go-build-release Makefile rule into individual targets based on arch, and composes them such that they can be parallelized using make -j.

It also applies this parallelization to the pull request CI workflow using a build matrix with each Makefile rule being a separate entry in said matrix, which cuts CI times massively.

How to test?

go-build-release should work the same as before, and CI times should be cut by a non-trivial number.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/fosrl/newt/pull/200 **Author:** [@water-sucks](https://github.com/water-sucks) **Created:** 12/12/2025 **Status:** ✅ Merged **Merged:** 12/13/2025 **Merged by:** [@oschwartz10612](https://github.com/oschwartz10612) **Base:** `main` ← **Head:** `parallelize-makefile` --- ### 📝 Commits (3) - [`de5627b`](https://github.com/fosrl/newt/commit/de5627b0b778e7040c13a0a8d24558c797f2c7d4) feat(build): parallelize go-build-release using separate arch rules - [`865ac4b`](https://github.com/fosrl/newt/commit/865ac4b68273db1374d28a99dd83c1f443d4507a) feat(build): double-tag docker release builds with "latest" and tag name - [`1dcb68d`](https://github.com/fosrl/newt/commit/1dcb68d6942a8c598b73fa7e0e2cc9bd7baeda4c) feat(ci): use matrix for building all makefile targets in parallel ### 📊 Changes **2 files changed** (+59 additions, -18 deletions) <details> <summary>View changed files</summary> 📝 `.github/workflows/test.yml` (+20 -12) 📝 `Makefile` (+39 -6) </details> ### 📄 Description ## Community Contribution License Agreement By creating this pull request, I grant the project maintainers an unlimited, perpetual license to use, modify, and redistribute these contributions under any terms they choose, including both the AGPLv3 and the Fossorial Commercial license terms. I represent that I have the right to grant this license for all contributed content. ## Description This PR splits the `go-build-release` Makefile rule into individual targets based on arch, and composes them such that they can be parallelized using `make -j`. It also applies this parallelization to the pull request CI workflow using a build matrix with each Makefile rule being a separate entry in said matrix, which cuts CI times massively. ## How to test? `go-build-release` should work the same as before, and CI times should be cut by a non-trivial number. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-24 20:07:39 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/newt#1569