buildpacks / Lifecycle
Programming Languages
Labels
Projects that are alternatives of or similar to Lifecycle
Lifecycle
A reference implementation of the Cloud Native Buildpacks specification.
Supported APIs
Lifecycle Version | Platform APIs | Buildpack APIs |
---|---|---|
0.10.x | 0.3, 0.4, 0.5 | 0.2, 0.3, 0.4, 0.5 |
0.9.x | 0.3, 0.4 | 0.2, 0.3, 0.4 |
0.8.x | 0.3 | 0.2 |
0.7.x | 0.2 | 0.2 |
0.6.x | 0.2 | 0.2 |
Commands
Build
Either:
-
detector
- Chooses buildpacks (via/bin/detect
) and produces a build plan. -
analyzer
- Restores layer metadata from the previous image and from the cache. -
restorer
- Restores cached layers. -
builder
- Executes buildpacks (via/bin/build
). -
exporter
- Creates an image and caches layers.
Or:
-
creator
- Runs the five phases listed above in order.
Run
-
launcher
- Invokes a chosen process.
Rebase
-
rebaser
- Creates an image from a previous image with updated base layers.
Development
To test, build, and package binaries into an archive, simply run:
$ make all
This will create an archive at out/lifecycle-<LIFECYCLE_VERSION>+linux.x86-64.tgz
.
LIFECYCLE_VERSION
defaults to the value returned by git describe --tags
if not on a release branch (for more information about the release process, see RELEASE. It can be changed by prepending LIFECYCLE_VERSION=<some version>
to the
make
command. For example:
$ LIFECYCLE_VERSION=1.2.3 make all
Steps can also be run individually as shown below.
Test
Formats, vets, and tests the code.
$ make test
Build
Builds binaries to out/linux/lifecycle/
.
$ make build
To clean the
out/
directory, runmake clean
.
Package
Creates an archive at out/lifecycle-<LIFECYCLE_VERSION>+linux.x86-64.tgz
, using the contents of the
out/linux/lifecycle/
directory, for the given (or default) LIFECYCLE_VERSION
.
$ make package