paketo-buildpacks / libpak

An opinionated extension to the libcnb Cloud Native Buildpack Library
Apache License 2.0
15 stars 17 forks source link

Updates for Release 2.x (Rename Buildpack to BuildModule for common paths) #265

Closed BarDweller closed 1 year ago

BarDweller commented 1 year ago

Summary

Updates for libpak for Extension support.

Use Cases

Where appropriate, updates buildpack to be buildmodule, buildmodule represents either a buildpack or an extension

This allows for extensions to have dependencies and share common code with buildpacks for processing them. Metadata between extensions and buildpacks is common, and although it was possible to mostly process extension metadata without renaming the structs/code, it was rapidly becoming confusing as to which paths supported ONLY buildpacks, and which would support both buildpack and extension usage. This change helps to clarify that by having the common paths now be buildmodule rather than buildpack. (So now, if you see extensions calling into Buildpack stuff, you can expect issues!)

This flows out to the libpak commands that are offered via go, to alter their arg that passed the path to buildpack.toml to be a path to buildpack.toml OR extension.toml

The command changes help pipeline-builder make sense when it's calling a command with an extension rather than a buildpack =)

Checklist