18 KiB
18 KiB
Changelog
All notable changes to this project will be documented in this file.
[0.8.20] - 2024-10-06
Bug Fixes
- Ensure the correct digest is used for docker and podman inspect drivers
- Use docker buildx imagetools to inspect for the docker inspect driver
- Use full json inspection for docker inspect driver
- Switch cosign registry from GCR to GHCR (#237)
- Remove --load for docker build since we no longer pull the image for inspection
Miscellaneous Tasks
- Fix akmods tests
- Remove akmods module for arm64 build
[0.8.19] - 2024-10-04
Bug Fixes
- Use built-in image inspection for podman and docker
Miscellaneous Tasks
- Release
[0.8.18] - 2024-10-03
Bug Fixes
- Properly escape module json
- Add post build script to prepare image for ISO creation
- Make sigstore driver more resilient to network errors
- May not be possible to just install bootc, run bootupctl if bootc already exists
- Run image as fallback for version retrieval
Features
- Add platform arg to force building a specific architecture
Miscellaneous Tasks
- Add expand.rs to .gitignore for debugging macros
- Make build.rs run again on git change
- Add one more criteria for rerun build.rs to check .git/refs/heads
- Check for bootupctl in post-build script
- Remove bootupctl until issue is resolved
- Run clippy and test for every feature individually
- Release
Refactor
- Swtich to using bon for builder pattern
[0.8.17] - 2024-09-11
Bug Fixes
- Fix docker login for oauth logins
Miscellaneous Tasks
- Upgrade sigstore to use contributed changes
- Release
[0.8.16] - 2024-09-08
Bug Fixes
- Ensure image names are lowercase
Miscellaneous Tasks
- Update tests for lowercasing image names
- Release
[0.8.15] - 2024-09-07
Bug Fixes
- Ensure that debug logs header for builds properly display the time
- Make build fail if module fails
- Generate correct image names based on user supplied arguments
Features
- Color output in terminal if running in TTY
- Create generate-iso command (#192)
- Display list of image refs at the end of a build
Miscellaneous Tasks
- Make sigstore an optional dep
- Update CODEOWNERS
- Update patch rev for sigstore
- Fix legacy integration tests
- Release
[0.8.14] - 2024-08-25
Bug Fixes
- Make sure getting version fails if not all dirs were copied
- Make sure GitHub job pushes latest image on scheduled job
- Properly handle alt-tags so they don't collide with default tags
Miscellaneous Tasks
- Release
[0.8.13] - 2024-08-20
Bug Fixes
- Include $crate for macro calls
- Don't let process continue running if the main app thread panics
Miscellaneous Tasks
- Release
Refactor
- Create SigningDriver and CiDriver (#197)
[0.8.12] - 2024-08-11
Bug Fixes
- Add Ctrl-C handler for spawned children (#193)
- Support other signals properly (#194)
- Builds failing due to new Rust version
- Add typespec schemas for cli modules, remove modules.json (not needed anymore) (#209)
- Allow copying keys to both /etc and /usr/etc
- Out of bounds panic when not retrying push
Features
- Add arm support (#191)
- Build multiple recipes in parallel (#182)
- Create RunDriver (#196)
Miscellaneous Tasks
- Add gh cli to just release
- Build with priveleged
- Checkout proper branch and build using cargo for buildah-build
- Use proper out directory for installer image
- Capitalize AS
- Stop using secureblue for integration testing
- Move files for test-repo to work with new files module update
- Add Justfile commands for easier development (#205)
- Fix integration tests failing
- Switch from askama to rinja
- Move files from
/usr/etc/to/etc/in build-time (#214) - Release
- Fix tag CI to build prebuild separately from main build
Refactor
- Switch to using miette for errors instead of anyhow (#198)
[0.8.11] - 2024-06-03
Bug Fixes
- Fail if cosign private/public key can't be verified (#190)
- Make sure username, password, and registry are not empty
- Move creds empty check to credentials module
Documentation
- Update README to put preferred method of installation higher up
Miscellaneous Tasks
- Add action to test external login
- Add registry for external login test
- Add external login job and buildah jobs
- Release
[0.8.10] - 2024-05-29
Bug Fixes
- Allow both files or config directory to not exist (#185)
- Remove extra setup call
- Remove hard requirement for login creds to be able to push (#187)
Features
- Stages (#173)
Miscellaneous Tasks
- Don't use satellites for integration tests
- Release
Refactor
- [breaking] Rename
templatetogenerateand moverebase/upgradeunderswitch(#116)
[0.8.9] - 2024-05-17
Bug Fixes
- Don't create builder if DOCKER_HOST is set
- Use leniency for semver parsing (#184)
Documentation
- Update README to revert cargo install instruction since issue is fixed
- Update docker/podman install instructions
Miscellaneous Tasks
- Fix checkout for podman-build
- Remove a pre-release-replacement
- Release
[0.8.8] - 2024-05-14
Bug Fixes
- Add driver args to rebase/upgrade command
- Make docker pull latest images when building
- Don't use '' in format arg
- Create lock on docker setup to prevent race conditions
Features
- Create a bluebuild buildx runner
Miscellaneous Tasks
- Ensure cargo installs use version for build scripts image
- Cleanup install script to instead create the container without running it
- Release
[0.8.7] - 2024-05-05
Bug Fixes
- Git sha not present during
cargo install(#176)
Features
- Add alternate tags for user images (#172)
Miscellaneous Tasks
- Streamline getting version
- Fix how we get the version in the Earthfile
- Allow tests to pass due to upstream akmods issues
- Remove title case (#177)
- Fix release replacements
- Release
[0.8.6] - 2024-04-29
Bug Fixes
- Fix flatpak module errors
Miscellaneous Tasks
- Remove token from checkout
- Pull version using cargo for tag job
- Fix integration tests
- Improve tagging of images and applying labels
- Release
[0.8.5] - 2024-04-27
Bug Fixes
- Use shebang in release recipe
- Pull extra akmods image too (#169)
Features
- Display full recipe with syntax highlighting (#166)
- Move module run logic into its own script (#168)
Miscellaneous Tasks
- Fix tag.yml workflow to pull version from .workspace.package.version
- Remove debug logs from utils
- Use Semver to grab OS version from image
- Make more /var dirs
- Release
[0.8.4] - 2024-04-22
Bug Fixes
- Sign all images in manifest (#148)
- Use proper image URI for local rebasing
- Add test for rpm-ostree rebase (#161)
- Error if any module fails to deserialize (#163)
- Remove /var tmpfs
- Create /var/roothome to fix any issues with adding files to /root
- Create /var/lib/alternatives
- Give better errors for read_to_string
Documentation
- Add distrobox installation tips (#146)
Features
- Add driver selection args (#153)
- Squash builds (#155)
- Look for recipes in
./recipes/, build files in./files/, and Containerfiles in./containerfiles/(#157)
Miscellaneous Tasks
- Add MODULE_DIRECTORY env var (#142)
- Remove unused files module
- Put LABELS last since they cause cache miss with buildah
- Cleanup images and use hash for exports tag (#158)
- Update akmods module to account for upstream changes (#165)
- Prepare justfile for release
- Release
README
- Add alpine distrobox and shell completions (#149)
[0.8.3] - 2024-03-27
Bug Fixes
- Checkout proper versions when building on main vs a PR
- Use container skopeo (#110)
- Remove tmpfs for /tmp (#123)
- Allow docker driver to properly use cache (#126)
- Allow special characters for export script (#128)
- Copy bins and keys with mounts for ostree commit (#132)
- Set gzip to default compression format
- Create dir for keys and bins in case they don't exist
- Allow user supplied registry to be set in the template (#135)
- Unable to use SHELL with podman, encapsulate commands in /bin/bash -c
- Put export script in own image
- Remove docker syntax marker
- Pulling wrong exports image
Features
- Revert to bash files module (#125)
- Support
zstdcompression (#134) - Improve logging output (#139)
Miscellaneous Tasks
- Update workspace dependency versions
- Setup build concurrency to reduce number of simultaneous builds on a PR
- Adjust readme path in files module.yml
- Fix readme path for containerfile module in module.yml
- Add version checks for upstream tools (#121)
- Don't build nightly for now
- Separate nightly build to not run in CI for now
- Remove builtin-podman code
- Enable cache builds on main branch
- Don't use docker driver for buildx job on main
- Update gitlab-ci section in README
- Add image source label for exports
- Use tag exports instead
- Fix build.yml
- Release
Refactor
- Rename strategies to drivers
[0.8.2] - 2024-03-09
Bug Fixes
- Filter out
/in tag names (#94) - Run
ostree container commitat the end of each module run (#103) - Add Nvidia Version to main base case (#107)
- Retry flag (#111)
- Add
org.opencontainers.image.sourceLABEL for CI images (#113) - Remove check for specific branches for signing (#114)
- Update path in comments and README (#115)
Documentation
- Add install script from github option (#102)
Features
- Add flakehub entry + nix flake (#109)
Miscellaneous Tasks
- Add integration test for
disableuserns.sh(#104) - Update builds to use different satellites and have integration tests on their own job
- Move cargo release settings to root Cargo.toml
- Update crates to have their own versions starting at CLI version
- Prepare for v0.8.2 release
Refactor
- Update build command to use BuildStrategy (#88)
[0.8.1] - 2024-02-26
Bug Fixes
- COPY yq for final image for modules to work
- COPY yq into final image for modules
Miscellaneous Tasks
- Update modules.json to reflect change in dir layout
- Release blue-build version 0.8.1
Refactor
- Move templates to their own crate (#83)
[0.8.0] - 2024-02-25
Bug Fixes
- Make sure cosign.pub exists before trying to check key validity
- Check for
GITHUB_TOKENinstead ofSIGSTORE_ID_TOKENfor github OIDC (#72) - Use REGISTRY_TOKEN for GitHub OIDC signing
- Switch to using --certificate-identity-regexp for Github Keyless verification
- Remove trailing newlines from yaml arrays (#73)
- Use GH_TOKEN as GITHUB_TOKEN is a protected env var
- Allow empty custom modules dir (#77)
Documentation
- Add module documentation for 'containerfile' and 'files' (#82)
Features
- Use GitHub's OIDC for signing images (#62)
- Use WORKDIR and ENTRYPOINT for cli containers (#63)
- Clean up working container for SIGINT and SIGTERM (#14)
- Use tmpfs mount for /tmp and /var (#67)
- Allow user to use source images (#69)
- Make use of rpm-ostree cache (#68)
- Block overriding (#74)
- Allow use of akmods module (#71)
- Add retry options to cli build command (#81)
Miscellaneous Tasks
- Fix build and build-pr not running properly
- Remove unwanted software so we have enough space to run the build for forked PRs
- Print out stderr from login attempts if login fails
- Replace tabs with spaces in Containerfile template
- Run integration tests on a separate satellite to keep build cache free
- Add trace log for github cosign verify
- Fix integration-tests for forks
- Update default module source (#76)
- Release blue-build version 0.8.0
Refactor
- Use GITHUB_TOKEN instead of REGISTRY_TOKEN (#75)
- Move modules into their own directory structure (#80)
[0.7.1] - 2024-02-13
Bug Fixes
- Remove deprecated bling
COPYforfilesandrpms(#52) - Only use earthly builder if token exists (#53)
Features
- Use Multi-stage builds to prevent COPY for modules and config (#54)
- Alias update for upgrade subcommand (#60)
Miscellaneous Tasks
- Update /Containerfile in .gitignore
- Create base integration test setup (#55)
- Remove nightly flags
- Rename registry-path arg to registry-namespace but keep previous as alias
- Add cargo release files
- Release blue-build version 0.7.1
Refactor
- Enable clippy nursery lint
[0.7.0] - 2024-02-07
Features
- Snippets (#51)
Refactor
- [breaking] Rename bb to bluebuild (#50)
[0.6.0] - 2024-02-06
Bug Fixes
- Tag workflow version fix (#16)
- Improper syntax for test in tag workflow
- Improve workflow for main branch and PRs (#17)
- Use new cargo-builder to help speed up build times
- Change local build dir to /etc/bluebuild
- Build failing due to change in local tarball location
- Add missing container tags (#37)
- Update containerfile to check for presence of cosign.pub (#46)
- Output better serde::yaml errors (#47)
- Lowecase registry and update IMAGE_REGISTRY arg (#49)
Features
- Add release workflows (#22)
- Upgrades (#26)
- Bugreport command (#28)
- Use COPY syntax for files module (#38)
- Allow default recipe path (#45)
Miscellaneous Tasks
- Move recipe out to its own module (#18)
- Enable Clippy Pedantic lint (#19)
- Fix simple error in workflow (#27)
- Update/Remove logos in this repo (#23) (#30)
- Setup earthly satellite building (#29)
- Update README to show github action use
- Set version to 0.5.6-dev.0 to prepare for first release
- Switch back to crate format_serde_error
- Prepare for 0.6.0 release
Refactor
- Separate module template from recipe module (#32)
- Separate modules into individual templates
[0.5.5] - 2024-01-26
Bug Fixes
- Install script not working as intended (#15)
Documentation
- Update gitlab ci example
- Update README for distrobox usage (#12)
Miscellaneous Tasks
- Bumb version
[0.5.4] - 2024-01-24
Miscellaneous Tasks
- Don't fetch tags again
- Add token for pushing tags
- Bump version
- Bump version
[0.5.3] - 2024-01-24
Miscellaneous Tasks
- Bump version
[0.5.2] - 2024-01-24
Bug Fixes
- Update outdated 60-custom.just
- Rebase path not being generated properly (#8)
Documentation
- Update changelog
- Manual update changelog for release
Features
- Run clippy + BlueBuildTrait (#4)
Miscellaneous Tasks
- Update Cargo.toml with new repo URL
- Manual bump of version
- Create GitHub Workflow (#9)
- Don't build integration tests in +all
- Allow write for contents and id-token
- Allow workflow_dispatch on build
- Use docker/login-action@v3
- Set packages permissions to write
- Update README.md (#10)
- Use GHCR for install.sh (#11)
- Remove input for release
- Add CARGO_REGISTRY_TOKEN
- Fetch all to get history for changelog updates
- Allow write for id-token
[0.5.1] - 2024-01-22
Bug Fixes
- Allow single module from-file
Documentation
- Update README for upgrade and rebase commands
[0.5.0] - 2024-01-21
Features
- [breaking] Upgrade and Rebase commands
[0.4.3] - 2024-01-19
Miscellaneous Tasks
- Add CODEOWNERS file
- Enable integration tests
- Run both nightly and default integration tests
- Use --privileged instead of WITH DOCKER
Testing
- Add integration tests for build and template
Nightly
- Use podman-api crate for building images
[0.4.2] - 2024-01-14
Bug Fixes
- Used wrong image for installer in Containerfile template
[0.4.1] - 2024-01-14
Bug Fixes
- Installer used wrong image tag
Documentation
- Update README to describe using local builds
[0.4.0] - 2024-01-14
Features
- [breaking] Remove containerfile arg since we use compiled time templates
[0.3.13] - 2024-01-14
Bug Fixes
- Conflicting short args for build subcommand
Features
- Local image rebasing
[0.3.12] - 2024-01-06
Documentation
- Add logos
[0.3.11] - 2024-01-04
Bug Fixes
- Removed unwrap from template to handle with proper error message
[0.3.10] - 2024-01-04
Bug Fixes
- Stop possible from-file, type module collision in template
Refactor
- Use askama crate for compile-time template type checking
[0.3.9] - 2024-01-01
Bug Fixes
- Earthfile syntax error
- Allow image_version to be a String
- Clippy error for image_tag
Refactor
- Inefficiency in generated Containerfile
[0.3.8] - 2023-12-30
Bug Fixes
- Rename ublue-rs to blue-build
Documentation
- Renaming tool in docs
[0.3.7] - 2023-12-30
Bug Fixes
- Update README to point to new project
[0.3.6] - 2023-12-30
Bug Fixes
- Logging
- Update cargo.toml
- Bump version
Features
- Add Github support in Build command
[0.3.5] - 2023-12-28
Bug Fixes
- Add support for alpine image and using either podman or buildah
Documentation
- Update README and CHANGELOG
Features
- Adding more template files for init
- Adding new subcommand
- Add main README template
- Add basic templating support for Github Actions
Miscellaneous Tasks
- Switch to using typed builders
[0.3.2] - 2023-12-18
Bug Fixes
- Improper trim of image digest
[0.3.1] - 2023-12-18
Bug Fixes
- Clippy
- Remove single quotes from image_digest
Features
- Add logging
Miscellaneous Tasks
- Add rusty-hook
[0.3.0] - 2023-12-17
Bug Fixes
- Make containerfile formatting nicer
- Move command structs into bin
Features
- [breaking] Remove legacy code"
- Finish build feature
Miscellaneous Tasks
- Add rust-toolchain.toml
- Exclude some more files
- Fix .git/ exclude
[0.2.2] - 2023-11-04
Documentation
- Update README, checking off a feature
Miscellaneous Tasks
- Fix version to match with published version
[0.2.0] - 2023-10-28
Bug Fixes
- Create README
- Add support for legacy containerfiles and modules containerfiles
- Encapsulate module echo in quotes to be passed in as a single arg
- Remove tracing
- Print module context as json
Features
- [breaking] Support new modules based starting point template
- [breaking] Allow containerfile module to print out to main Containerfile
[0.1.1] - 2023-10-16
Bug Fixes
- Add changelog