Skip to content
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

Status/2024Q4/buildpacks.adoc: Add report #446

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions website/content/en/status/report-2024-10-2024-12/buildpacks.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
=== Containers and FreeBSD: Cloud Native Buildpacks

Contact: Robert Gogolok <gogolok@gmail.com>

link:https://buildpacks.io/[Cloud Native Buildpacks (CNBs)] transform application source code into container images.
Those images can run on any cloud.
With buildpacks, organizations can concentrate the knowledge of container build best practices within a specialized team, instead of having application developers across the organization individually maintain their own Dockerfiles.

A few weeks ago, I've started to look into FreeBSD support for buildpacks.
My goal is to have working versions of the tools link:https://buildpacks.io/docs/for-platform-operators/concepts/lifecycle/[lifecycle] and link:https://buildpacks.io/docs/for-platform-operators/how-to/integrate-ci/pack/[pack] in the next few months.

There were previous attempts to bring support for FreeBSD to buildpacks, for example to `lifecycle`:

* link:https://github.com/buildpacks/lifecycle/pull/1087[Add support for FreeBSD #1087]
* link:https://github.com/buildpacks/lifecycle/pull/1271[Add FreeBSD Support #1271]

After looking into those changes, I've decided to first introduce some general cleanup steps to keep the required changes for FreeBSD small.

This resulted in the following changes that were successfully integrated:

* link:https://github.com/buildpacks/lifecycle/pull/1431[Remove obsolete // +build lines #1431]
* link:https://github.com/buildpacks/lifecycle/pull/1432[Use unix build constraint #1432]
* link:https://github.com/buildpacks/lifecycle/pull/1439[Support FreeBSD build phase #1439]

With these steps, it is now possible to compile `lifecycle` under FreeBSD.

The next steps are:

- Provide missing FreeBSD functionality to `lifecycle`.
- Further investigate FreeBSD as a build target in `lifecycle`.
- Investigate and get the tool `pack` to compile and run under FreeBSD.
- Provide `lifecycle` and/or `pack` via FreeBSD ports.
- Investigate the idea of FreeBSD buildpacks for some popular languages, similar to link:https://paketo.io/[paketo buildpacks].
Loading