• Stars
    star
    244
  • Rank 165,885 (Top 4 %)
  • Language
    Shell
  • License
    Apache License 2.0
  • Created over 6 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Specification for Cloud Native Buildpacks

Cloud Native Buildpacks Specification v3

This specification defines interactions between a platform, a lifecycle, a number of buildpacks, and an application

  1. For the purpose of transforming that application into an OCI image and
  2. For the purpose of developing or executing automated tests on that application.

A buildpack is software that partially or completely transforms application source code into runnable artifacts.

A lifecycle is software that orchestrates buildpacks and transforms the resulting artifacts into an OCI image.

A platform is software that orchestrates a lifecycle to make buildpack functionality available to end-users such as application developers.

Notational Conventions

Key Words

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as described in RFC 2119.

The key words "unspecified", "undefined", and "implementation-defined" are to be interpreted as described in the rationale for the C99 standard.

An implementation is not compliant if it fails to satisfy one or more of the MUST, MUST NOT, REQUIRED, SHALL, or SHALL NOT requirements for the protocols it implements. An implementation is compliant if it satisfies all the MUST, MUST NOT, REQUIRED, SHALL, and SHALL NOT requirements for the protocols it implements.

Operating System Conventions

When a word or bullet point is prefixed with a †, it SHALL be assumed to apply only to Linux stacks.

When a word or bullet point is prefixed with a ‡, it SHALL be assumed to apply only to Windows stacks.

When the specification denotes a "shell", Linux stacks MUST use the Bourne Again Shell (bash) version 3 or greater and Windows stacks MUST use Command Prompt (cmd.exe) unless otherwise specified.

Interpreting Paths for Windows

When the specification denotes a filesystem path using POSIX path notation (e.g. /cnb/lifecycle), this notation SHALL be interpreted to represent a path where all POSIX file path separators are replaced with the Windows filepath separator (\) and absolute paths are assumed to be rooted in the default drive (e.g. C:\cnb\lifecycle).

When the specification refers to an executable file with POSIX path notation (e.g. /cnb/buildpacks/bp-a/1.2.3/bin/detect), this notation SHALL be interpreted to represent one of two possible files: one with the suffix .exe (e.g. C:\cnb\buildpacks\bp-a\1.2.3\bin\detect.exe) or with the suffix .bat (e.g. C:\cnb\buildpacks\bp-a\1.2.3\bin\detect.bat).

When the specification refers to a path in the context of an OCI layer tar (e.g. /cnb/buildpacks/bp-a/1.2.3/), this path SHALL be interpreted to be prefixed with Files (e.g. Files/cnb/buildpacks/bp-a/1.2.3/). Note: path separators in OCI layer tar headers MUST be / regardless of operating system.

Sections

API Versions

These documents currently specify:

  • Buildpack API: 0.9
  • Distribution API: 0.3
  • Platform API: 0.11

More Repositories

1

pack

CLI for building apps using Cloud Native Buildpacks
Go
2,294
star
2

samples

Samples for Cloud Native Buildpacks
Shell
182
star
3

lifecycle

Reference implementation of the Cloud Native Buildpacks lifecycle
Go
180
star
4

rfcs

RFCs for Cloud Native Buildpacks
Shell
53
star
5

community

Community content for the Cloud Native Buildpacks (CNB) project
41
star
6

github-actions

End-user GitHub Actions related to Cloud Native Buildpacks
Go
39
star
7

docs

Web content for Cloud Native Buildpacks
HTML
27
star
8

libcnb

A non-opinionated language binding for the Cloud Native Buildpack Buildpack and Extension specifications
Go
24
star
9

tekton-integration

Buildpacks + Tekton
Shell
23
star
10

imgutil

Helpful utilities for working with images
Go
21
star
11

registry-index

Registry index for buildpacks.io
16
star
12

packs

Buildpack cloud builders for the classic v2a (Heroku-style) and v2b (CF-style) buildpacks
Go
15
star
13

pack-orb

A CircleCI Orb for using Cloud Native Buildpacks in CircleCI
Shell
10
star
14

ci

CI configuration for Cloud Native Buildpacks
HCL
9
star
15

forge

Go library for building and running pre-v3 buildpack apps using Docker
Go
7
star
16

resources

A list of resources related to running buildpacks on image-based platforms
6
star
17

libbuildpack

DEPRECATED - Go language binding for the Cloud Native Buildpacks API
Go
5
star
18

homebrew-tap

Ruby
4
star
19

registry-api

API for searching and reading the Buildpack Registry
Ruby
3
star
20

sample-java-app

HTML
3
star
21

knative-integration

ARCHIVED
Go
2
star
22

website

Website for Cloud Native Buildpacks
HTML
2
star
23

katacoda-scenarios

Katacoda Scenarios
Shell
2
star
24

stacks

Dockerfile
1
star
25

registry-namespaces

Namespace ownership for buildpacks.io
1
star