Develop #155

Merged
metal3d merged 6 commits from develop into master 2025-08-03 12:20:17 +00:00
Owner

This pull request introduces several changes, including improvements to testing, dependency updates, and the addition of comprehensive build, packaging, and documentation workflows. Below is a summary of the most important changes grouped by theme.

Testing Improvements

  • Enhanced TestBuildCommand in cmd/katenary/main_test.go by combining conditionals to improve readability and maintainability.
  • Updated TestSchemaCommand in cmd/katenary/main_test.go to handle errors when creating pipes and ensure proper cleanup with a done channel for better reliability.

Dependency Updates

  • Upgraded several dependencies in go.mod, including k8s.io/api to v0.33.3, sigs.k8s.io/yaml to v1.6.0, and github.com/spf13/pflag to v1.0.7, among others. These updates ensure compatibility and leverage the latest features and fixes. [1] [2] [3]

Makefile

  • Introduced a new makefiles/build.mk file to support multi-platform builds, including Linux, Windows, macOS, and FreeBSD. It also includes support for UPX compression and Windows installer generation.
  • Added makefiles/packager.mk to enable the creation of RPM, DEB, Pacman, FreeBSD, and TAR packages using fpm. This also includes checks for package validity across various Linux distributions.
  • Added makefiles/gpg.mk for GPG signing and signature verification of distribution packages.
  • Added makefiles/doc.mk to automate the generation of documentation, including serving it locally with mkdocs, generating manpages, and creating code documentation with gomarkdoc.
  • Introduced makefiles/test.mk to streamline testing, code coverage generation, and static application security testing (SAST) with opengrep.

These changes collectively enhance the project's maintainability, build process, and developer experience while ensuring robust testing and packaging workflows.

This pull request introduces several changes, including improvements to testing, dependency updates, and the addition of comprehensive build, packaging, and documentation workflows. Below is a summary of the most important changes grouped by theme. ### Testing Improvements * Enhanced `TestBuildCommand` in `cmd/katenary/main_test.go` by combining conditionals to improve readability and maintainability. * Updated `TestSchemaCommand` in `cmd/katenary/main_test.go` to handle errors when creating pipes and ensure proper cleanup with a `done` channel for better reliability. ### Dependency Updates * Upgraded several dependencies in `go.mod`, including `k8s.io/api` to v0.33.3, `sigs.k8s.io/yaml` to v1.6.0, and `github.com/spf13/pflag` to v1.0.7, among others. These updates ensure compatibility and leverage the latest features and fixes. [[1]](diffhunk://#diff-33ef32bf6c23acb95f5902d7097b7a1d5128ca061167ec0716715b0b9eeaa5f6L14-R16) [[2]](diffhunk://#diff-33ef32bf6c23acb95f5902d7097b7a1d5128ca061167ec0716715b0b9eeaa5f6L25-R25) [[3]](diffhunk://#diff-33ef32bf6c23acb95f5902d7097b7a1d5128ca061167ec0716715b0b9eeaa5f6L41-R56) ### Makefile * Introduced a new `makefiles/build.mk` file to support multi-platform builds, including Linux, Windows, macOS, and FreeBSD. It also includes support for UPX compression and Windows installer generation. * Added `makefiles/packager.mk` to enable the creation of RPM, DEB, Pacman, FreeBSD, and TAR packages using `fpm`. This also includes checks for package validity across various Linux distributions. * Added `makefiles/gpg.mk` for GPG signing and signature verification of distribution packages. * Added `makefiles/doc.mk` to automate the generation of documentation, including serving it locally with `mkdocs`, generating manpages, and creating code documentation with `gomarkdoc`. * Introduced `makefiles/test.mk` to streamline testing, code coverage generation, and static application security testing (SAST) with `opengrep`. These changes collectively enhance the project's maintainability, build process, and developer experience while ensuring robust testing and packaging workflows.
Sign in to join this conversation.
No description provided.