knative/func

Support configuration of the `lifecycle` image

Opened this issue · 6 comments

When you run a build with the func CLI using your own builder it will attempt to pull the lifecycle binaries from quay.io. This may be because the builder is not trusted

However it doesn't seem that the func CLI respects the list of trusted builders that a user configures with the Pack CLI, and also does not allow configuration of this property itself. This means that at runtime func will attempt to pull the lifecycle from quay.io. The image that func pulls is hardcoded here:

var DefaultLifecycleImage = "quay.io/boson/lifecycle@sha256:f53fea9ec9188b92cab0b8a298ff852d76a6c2aaf56f968a08637e13de0e0c59"

This should allow configuration, or allow configuration of trusted builders so the built in lifecycle binaries can be used.

This seems like a bug to me. I will mark it as such.

It's perhaps worth mentioning that the builder lifecycle image is not intended as "hard-coded" (meaning an unchangable string built into the binary), but rather it is defaulted. This should be an optional user-modifiable setting.

I agree @lkingland however does func plan to follow the trusted builder methodology I linked from CNB? If so it should just use the included lifecycle binaries if the builder is trusted.

I would like to work on this issue!

/assign

This issue is stale because it has been open for 90 days with no
activity. It will automatically close after 30 more days of
inactivity. Reopen the issue with /reopen. Mark the issue as
fresh by adding the comment /remove-lifecycle stale.

/remove-lifecycle stale