Commit graph

60 commits

Author SHA1 Message Date
Gerald Pinder
a7d862abf0
feat: Embed build scripts and extract into temp dir for build (#516)
This decouples the need for a published image for the bulid scripts and
will now embed them into the binary instead. This will make it so that
anyone that forks the CLI is able to make adjustments to the build
scripts and use them immediately.

This will be needed for testing #515
2025-08-10 16:09:42 -04:00
Gerald Pinder
6be68f6b2f ci: Disable cache for earthly setup 2025-05-31 22:55:55 -04:00
dependabot[bot]
bea3f6fe11 chore(deps): bump ublue-os/remove-unwanted-software from 6 to 9
Bumps [ublue-os/remove-unwanted-software](https://github.com/ublue-os/remove-unwanted-software) from 6 to 9.
- [Release notes](https://github.com/ublue-os/remove-unwanted-software/releases)
- [Commits](e3843c85f5...cc0becac70)

---
updated-dependencies:
- dependency-name: ublue-os/remove-unwanted-software
  dependency-version: '9'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-12 17:00:12 -04:00
RoyalOughtness
5d4cfacc56 chore: bump docker/login-action
Is there a dependabot misconfiguration?
2025-05-11 07:43:58 -04:00
Gerald Pinder
ba40f8fe8d fix: Maximize build space for building the image 2025-05-04 09:14:38 -04:00
Gerald Pinder
f8950b3477 chore: Create separate test and build workflows 2025-05-02 16:33:41 -04:00
Gerald Pinder
0f4621ca66 chore: Rework the workflows to make it easier to manage 2025-05-02 16:24:52 -04:00
RoyalOughtness
f627e969f5 chore: pin actions to commit hashes 2025-03-09 21:28:45 -04:00
Gerald Pinder
cbb6efd14d chore: Switch to using my new proc_macro comlexr 2025-01-12 16:15:29 -05:00
Gerald Pinder
50ed183cde feat: Allow fresh rechunking of image 2024-12-16 21:07:09 -05:00
Gerald Pinder
41031848df chore(ci): Add Github Action auditing 2024-12-14 13:17:40 -05:00
Gerald Pinder
b4fbac2a66 feat(rechunk): Add the ability to rechunk an image 2024-12-02 02:23:22 -05:00
Gerald Pinder
2b7305c5d0 fix: Add logic for inspecting multi-manifest images 2024-11-26 21:21:26 -05:00
Gerald Pinder
c8d8ab306c fix(ci): Build all features for each package and build all archs 2024-11-25 22:09:36 -05:00
Gerald Pinder
86b7cc5cc6 fix(ci): Have integration tests job require the amd64-prebuild job 2024-11-01 16:38:42 -04:00
Gerald Pinder
8fc34f346f fix: Update main branch workflow to use +build-images target 2024-10-07 16:38:24 -04:00
Gerald Pinder
32092195d3
chore: Cleanup workflows to be run from just (#238) 2024-10-07 16:34:36 -04:00
Gerald Pinder
75eae89e4a feat: Add platform arg to force building a specific architecture 2024-10-03 14:47:47 -04:00
Gerald Pinder
020f89d4d1 fix: Fix docker login for oauth logins 2024-09-11 18:33:56 -04:00
Gerald Pinder
e6cce3d542
feat(iso): Create generate-iso command (#192)
## Tasks

- [x] Add ctrl-c handler to kill spawned children
- [x] add more args to support all variables
- [x] Add integration test
2024-09-04 18:17:08 -04:00
Gerald Pinder
8ce83ba7ff
refactor: Create SigningDriver and CiDriver (#197)
This also includes a new `login` command. The signing and CI logic is now using the Driver trait system along with a new experimental sigstore signing driver. New static macros have also been created to make implementation management easier for `Command` usage and `Driver` trait implementation calls.

---------

Co-authored-by: xyny <60004820+xynydev@users.noreply.github.com>
2024-08-12 23:52:07 -04:00
Gerald Pinder
4ca98c1c2a
feat(experimental): Build multiple recipes in parallel (#182)
The `build` subcommand can now take in any number of recipe files and
will build them all in parallel. Along with this new ability, I've added
a way to easily distinguish which part of the build log belongs to which
recipe. Check out the `docker_build` action of this PR for an example.


![gif](https://gitlab.com/wunker-bunker/wunker-os/-/raw/main/bluebuild.gif)

## Tasks

- [x] Make build log follow same pattern as normal logs to keep things
consistent
- [x] Update color ranges based on @xynydev 's feedback
- [x] Deal with ANSI control characters in log output
- [x] Add [`indicatif`](https://crates.io/crates/indicatif) to make logs
look nicer
- [x] Add ability to print logs to a file
2024-06-07 17:52:26 -04:00
Gerald Pinder
18e48a34a4 chore: Checkout proper branch and build using cargo for buildah-build 2024-06-06 19:58:41 -04:00
Gerald Pinder
dcbccb602d chore: Build with priveleged 2024-06-04 14:20:06 -04:00
Gerald Pinder
6945915d4e
feat: Add arm support (#191)
This adds support for ARM based images and binaries.
2024-06-04 14:03:00 -04:00
Gerald Pinder
8aa874187c chore: Add external login job and buildah jobs 2024-06-03 09:10:51 -04:00
Gerald Pinder
32e2ba35cf chore: Add registry for external login test 2024-06-02 18:17:11 -04:00
Gerald Pinder
bf52cdae35 chore: Add action to test external login 2024-06-02 18:10:27 -04:00
Gerald Pinder
ab87f6548d chore: Don't use satellites for integration tests 2024-05-18 09:28:13 -04:00
Gerald Pinder
e6905b4fcc chore: Fix checkout for podman-build 2024-05-15 11:35:20 -04:00
Gerald Pinder
2cb6d1e00c Remove if for main build 2024-05-15 10:23:12 -04:00
Gerald Pinder
c472fad2af Add podman build job 2024-05-15 10:02:37 -04:00
Gerald Pinder
83d654d3a2 chore: Improve tagging of images and applying labels 2024-04-28 21:21:54 -04:00
Gerald Pinder
76d32bc23a chore: Fix integration tests 2024-04-28 00:36:45 -04:00
Gerald Pinder
e66e880857
chore: Cleanup images and use hash for exports tag (#158)
I noticed that making changes to the exports script before a release
could cause modules to not build properly if breaking changes got pushed
out. To prevent this, I'm making it so that the hash of the commit is
put in the tag for the exports script image and that the CLI tool will
use that hash when building the `Containerfile`.
2024-04-13 05:55:50 +00:00
Gerald Pinder
b544fecc25 chore: Fix build.yml 2024-03-27 00:34:39 -04:00
Gerald Pinder
198886c799 chore: Use tag exports instead 2024-03-27 00:33:31 -04:00
Gerald Pinder
19c93ce742 fix: Put export script in own image
HEREDOC support for podman doesn't work exactly 1-1 with Dockerfiles. This fix gives the export script its own image that we mount.
2024-03-27 00:08:58 -04:00
Gerald Pinder
ab11362a0d
fix: Allow user supplied registry to be set in the template (#135) 2024-03-25 20:27:34 -04:00
Gerald Pinder
5601a27491 chore: Don't use docker driver for buildx job on main 2024-03-24 11:23:02 -04:00
Gerald Pinder
783ac2c3fb chore: Enable cache builds on main branch 2024-03-23 18:33:34 -04:00
Hikari
580c3d6ce7
fix: use container skopeo (#110)
the `os_version` is defaulting to the `image_tag` inside containers and
causing our template to use latest tag

---------

Co-authored-by: Gerald Pinder <gmpinder@gmail.com>
2024-03-11 23:23:42 +00:00
Gerald Pinder
c084592934 fix: Checkout proper versions when building on main vs a PR 2024-03-11 19:16:30 -04:00
Gerald Pinder
bf6ce3f650 chore: Setup build concurrency to reduce number of simultaneous builds on a PR 2024-03-09 12:29:33 -05:00
Gerald Pinder
3a2353923d chore: Update builds to use different satellites and have integration tests on their own job 2024-03-06 15:08:16 -05:00
Gerald Pinder
de49037330
fix: Remove check for specific branches for signing (#114) 2024-03-05 09:18:43 -05:00
Gerald Pinder
0ba78fab32
refactor: Update build command to use BuildStrategy (#88) 2024-03-01 11:18:02 -06:00
Gerald Pinder
2a85c2732b chore: Fix integration-tests for forks 2024-02-19 20:52:20 -05:00
Gerald Pinder
fc489eca32 chore: Run integration tests on a separate satellite to keep build cache free 2024-02-19 14:37:55 -05:00
Gerald Pinder
5ce88948e2 chore: Remove unwanted software so we have enough space to run the build for forked PRs 2024-02-14 11:21:36 -05:00