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

add lifecycle output to update stack after rebase #360

Merged
merged 7 commits into from
May 31, 2023
Merged
Changes from 4 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
7 changes: 5 additions & 2 deletions platform.md
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ A **launcher layer** refers to a layer in the app OCI image containing the **lau

The **launcher** refers to a lifecycle executable packaged in the **app image** for the purpose of executing processes at runtime.

An **image extension** refers to software compliant with the [Image Extension Interface Specification](image-extension.md). Image extensions participate in detection and execute before the buildpack build process.
An **image extension** refers to software compliant with the [Image Extension Interface Specification](image_extension.md). Image extensions participate in detection and execute before the buildpack build process.

#### Additional Terminology
An **image reference** refers to either a **tag reference** or **digest reference**.
Expand Down Expand Up @@ -822,7 +822,7 @@ Usage:
| [exit status] | (see Exit Code table below for values)
| `/dev/stdout` | Logs (info)
| `/dev/stderr` | Logs (warnings, errors)
| `<image>` | Rebased app image (see [Buildpack Interface Specfication](buildpack.md)
| `<image>` | Rebased app image (see [Buildpack Interface Specfication](buildpack.md))

| Exit Code | Result|
|-----------|-------|
Expand All @@ -840,6 +840,9 @@ Usage:
- `run-image.reference` SHALL uniquely identify `<run-image>`
- `run-image.top-layer` SHALL be set to the uncompressed digest of the top layer in `<run-image>`
- The value of `io.buildpacks.stack.*` labels SHALL be modified to that of the new `run-image`
- **If** the provided `<run-image>` is not found in `stack.run-image.image` or `stack.run-image.mirrors`:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry this might be a dumb question, but does this mean every new run image released needs to have some sort of mapping/record/reference indicated in the stack?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it depends - if you want stack.run-image.mirrors to have data, then yes the mapping must exist. Worth noting: future versions of the spec do away with stack.toml in favor of run.toml, which now contains a list of run images (and associated mirrors for each). More information could be found here: https://github.com/buildpacks/spec/pull/335/files#diff-e603760990971da3f77be4bb8d77c3405098f006814fd8c054d2d15f395b8330R934-R939 and here: https://github.com/buildpacks/spec/pull/335/files#diff-e603760990971da3f77be4bb8d77c3405098f006814fd8c054d2d15f395b8330R1238

@hernandanielg I'm realizing that this PR should probably be pointed at #335 due to the aforementioned changes. Are you able to rebase? There will likely be a merge conflict.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the clarification!

- `stack.run-image.image` SHALL be the provided `<run-image>`
- `stack.run-image.mirrors` SHALL be omitted
- To ensure [build reproducibility](#build-reproducibility), the lifecycle:
- SHOULD set the `created` time in image config to a constant

Expand Down