Skip to content

Releases: buildpacks-community/kpack

kpack v0.1.0

17 Aug 19:42
Compare
Choose a tag to compare

Install

kubectl apply -f release-0.1.0.yaml

**Major Breaking Changes**

  • All custom resource api groups have been changed to kpack.io
    • build.pivotal.io -> kpack.io
    • experimental.kpack.pivotal.io -> kpack.io
  • The previous resources named Builder and ClusterBuilder have been removed and are no longer supported. See approved RFC for details.
  • The previous resources name CustomBuilder and CustomClusterBuilder have been renamed to Builder and ClusterBuilder respectively. See approved RFC for details.
  • The Stack resource has been renamed to ClusterStack
  • The Store resource has been renamed to ClusterStore
  • Requires kubernetes >= v1.16

What's New?

Info

This release includes lifecycle v0.9.0.

Changelog

  • Update go-git library to github.com/go-git #421
  • Ignore kpack Annotations on dockerconfig secrets #422
  • Fix an opaque rebase error with invalid credentials #427
  • Add LatestBuildReason to Image Status #435
  • Error during prepare when blob url can not be unpacked #440
  • Provide Buildpack Homepage on builder and store status #448
  • Update Stack & Store to ClusterStack & ClusterStore #437
  • Move resources to kpack.io api group #451
  • Remove (Cluster)Builder resources #451
  • Rename CustomBuilder to Builder #451
  • Use Lifecycle 0.9.0 #470
  • Update docs #472
sha256 f536aed5f02cfba7fe07ea270c3dd32b8243db5f01d9615430e6c8240b126f48  release-0.1.0.yaml

kpack v0.0.9

08 Jun 21:30
Compare
Choose a tag to compare
kpack v0.0.9 Pre-release
Pre-release

Install

kubectl apply -f release-0.0.9.yaml

What's New?

  • CustomBuilders utilize lifecycle v0.8.0 which fixes an issue with Harbor 2.
  • Image and Builds support Service Bindings.
  • Improved "Prepare" logging with docker credential setup.
  • Images will default with a 2Gi cacheSize if a default storage class is defined.
  • All Images in this release were built with kpack itself.

Info

This release includes lifecycle v0.8.0 in CustomBuilders. CNB platform version 0.2 & 0.3 are supported for non CustomBuilders.

Breaking changes

Requires kubernetes >= v1.15

Changelog

  • Utilize lifecycle v0.8.0 #403
  • Logs binary does not contain an "eye catcher" and will match pack's output #405
  • Updated knative/pkg to release-0.15 #382
  • Improved image.status metadata enables tooling to watch and tail the result of an image update #377 #394 #398
  • Fix issue that prevented kpack webhook from applying to "experimental" resources #404
  • Images will default a cache size if a default storage class is defined #397
  • Improve build prepare logging #365
  • Improved error messages during build setup #375
  • Service bindings are configureable on images and builds #371
  • Buildpack homepage is included in builder metadata and store status #366
  • Custom Builders no longer contain lifecycle "compat layer" #343
  • Lifecycle binaries are invoked in /cnb/lifecycle/ #343
21bbc0a6eaa011dbd9cbdad0182634a2c42701b5  release-0.0.9.yaml

kpack v0.0.8

30 Mar 20:18
7c8cfea
Compare
Choose a tag to compare
kpack v0.0.8 Pre-release
Pre-release

This release fixes a critical issue in v0.0.7. Please do not use v0.0.7.

Install

kubectl apply -f release-0.0.8.yaml

Changelog

  • Fixes an issue that caused all of an image's builds to fail after the first failed build #339 #340
11fea43b6af2ff94c5a874bc7de3819828fbe6f89e255b7fe8f29e373729bec0    release-0.0.8.yaml  

kpack v0.0.7

19 Mar 21:27
8ce207a
Compare
Choose a tag to compare
kpack v0.0.7 Pre-release
Pre-release

⚠️ Warning ⚠️

v0.0.7 has a critical issue where images will fail to build after the first failed build. Please use v0.0.8 instead.

Install

kubectl apply -f release-0.0.7.yaml

What's New?

  • Support for Platform API v0.3 & lifecycle v0.7.2
  • Support for dockerconfigjson and dockercfg secrets
  • New builds for an image can be manually triggered
  • Support .tgz and .tar from blobstores as source
  • Buildpack and mixin validation for Custom Builders
  • CustomBuilders will select the buildpack in a store with the highest semver version
  • Faster store reconciliation by reading images concurrently
  • Generate project-metadata.toml to provide app metadata to builds

Info

This release adds support for upcoming breaking changes in lifecycle v0.7.x. If you are running an older version of kpack, please upgrade to continue utilizing public builder images.

Breaking changes

  • Dropped support for Platform API v0.1

Changelog

  • Add support for Platform API v0.3 #311
  • Add support for lifecycle v0.7.2 #324
  • Add support for .tar and .tgz from blobstore #326
  • Add buildpack and mixin validation for Custom Builders #312 #308
  • Select buildpack by highest buildpack semver #309
  • Read buildpackages from store concurrently to speed up store reconciliation #300
  • Add ability to generate project-metadata.toml #287
  • Add support for .dockerconfig & .dockercfg secrets #301
  • Add ability to trigger new builds for an image #291
  • Minor improvements/bug fixes/validations #280 #282 #292 #305 #307 #315 #325 #328 #329
16af927ac85bdec2af7b99b961717805646577e8a8b71e5faf1dce6ac174faa2    release-0.0.7.yaml  

v0.0.6

24 Jan 20:41
cdb83a4
Compare
Choose a tag to compare
v0.0.6 Pre-release
Pre-release

Install

kubectl apply -f release-0.0.6.yaml

What's New?

  • A new set of experimental resources allow kpack users to create and mange builders directly in kpack. These CustomBuilders can be used directly in an image configuration. For more information check out the Documentation.
  • Support for lifecycle v0.6.0.
  • Support for git auth via ssh with a private key on secrets configured with kpack.
  • A generated OpenApi spec for interacting with kpack is provided at api/openapi-spec/swagger.json.

Info

This release adds support for upcoming breaking changes in lifecycle v0.6.0. If you are running an older version of kpack, please upgrade to continue utilizing public builder images.

Breaking changes

There are no breaking changes in this release.

Changelog

  • Add code of conduct #276
  • Add support for lifecycle v0.6.0 #269 #267 #278 #279
  • Propagate annotations to builds and build pods. #274
  • Add support Azure credential provider #261
  • Generate Openapi Spec for kpack types #260
  • Add experimental CustomBuilder & CustomClusterBuilder resources #220 #230 #256
  • Update knative/pkg to 'release-0.10' #221
  • Fix an issue that created invalid builds on stack updates #214
  • Provide support for git ssh auth #211
  • Validate tags on images #198
  • Include finalizers in controller's rbac configuration #194

v0.0.5

28 Oct 20:04
bc37a43
Compare
Choose a tag to compare
v0.0.5 Pre-release
Pre-release

Install

kubectl apply -f release-0.0.5.yaml

What's New?

  • When run images (OS level dependencies) are updated in the registry, images previously built with the run images will be rebuilt. This does not require a full rebuild because of the of ABI compatibility guarantee provided by the run image in Cloud Native Buildpacks.
  • Kubernetes credential providers (AWS, GCP, Azure) can be used to authenticate builder images.
  • Build logs display current build step and include Build Successful on completion.

Info

Builder Images used with this release require the lifecycle v0.4.0 or greater.
(All builders in pack suggest-builders currently satisfy this requirement)

Breaking changes

  • A Kubernetes cluster version 1.14 or later is now required
  • When updating to v0.0.5 delete and reapply existing images

Known Issues

  • Builds fail on kind #201

Changelog

  • Bump lifecycle to version v0.0.5 #189
  • Build fails early if it does not have read access to the run image #186
  • Default to default service account for images and builds #184 #180
  • Add validation and defaulting for images, builds, and builders #184 #180
  • Fails build when git credentials are invalid #161
  • Rebuild images when run image or stack change #140 #165 #168 #172 #176 #179
  • Improve log utility output #154
  • Images can be built in unauthenticated registries #143
  • Add support Kubernetes credential providers (AWS, GCP, Azure) #153
  • Update kubernetes client go to 1.15 #151
  • Migrate to go modules #151
  • Each kpack resource is in the 'kpack' category #144 (Scott Andrews)

v0.0.4

20 Sep 18:49
Compare
Choose a tag to compare
v0.0.4 Pre-release
Pre-release

Install

kubectl apply -f release-0.0.4.yaml

What's New?

  • Added support for a cluster scoped ClusterBuilder resource.

  • ClusterBuilders are available cluster wide and behave identically to the Builder type. However, they do not support imagePullSecrets. Therefore the builder image must be available to kpack without credentials.

A ClusterBuilder can be created with this configuration:

apiVersion: build.pivotal.io/v1alpha1
kind: ClusterBuilder
metadata:
  name: sample-builder
spec:
  image: cloudfoundry/cnb:bionic

A image can be created with the sample-builder ClusterBuilder with the following config in any namespace:

apiVersion: build.pivotal.io/v1alpha1
kind: Image
metadata:
  name: sample-image
spec:
  tag: gcr.io/project-name/app
  serviceAccount: sample-service-account
  builder:
    name: sample-builder
    kind: ClusterBuilder
  source:
    git:
      url: https://github.com/buildpack/sample-java-app.git
      revision: master

Info

Builder Images used with this release require the lifecycle v0.4.0.

Breaking changes

  • The builderRef field was removed from the Image Resource. Now images are configured with a builder and a name and kind as displayed below:
apiVersion: build.pivotal.io/v1alpha1
kind: Image
metadata:
  name: sample-image
spec:
  builder:
    name: sample-builder
    kind: Builder # Builder/ClusterBuilder 

Changelog:

  • Fixed an issue creating Builders with a fully qualified image #128
  • Remove dependency on buildpack/imgutil #133
  • Image and Builder Status.Conditions will include information about Builder readiness #132
  • Added support for ClusterBuilders#126
  • Fixed an issue where kubernetes was ignoring build resource constraints #114
  • Run images can be used from private registries #111 #129
  • --kubeconfig is no longer required when tailing logs #109 (Brendan Nolan)
  • Build logs can be tailed from GKE/AKE clusters #102

v0.0.3

21 Aug 19:11
Compare
Choose a tag to compare
v0.0.3 Pre-release
Pre-release

Renamed to kpack

Install

kubectl apply -f release.yaml

Prominent Improvements

  • Private Builders are supported, ImagePullSecrets can be added to the builder type (#46).
apiVersion: build.pivotal.io/v1alpha1
kind: Builder
metadata:
  name: sample-builder
spec:
  image: cloudfoundry/cnb:bionic
  imagePullSecrets: # optional, if not set builder must be public
  - name: builder-secret
  • Subpath on build and image source to support monorepos (#93).
  • Add Ready condition to Image resource (#1).
  • Image builds are scheduled with the exact builder digest (#77).

Note: This release includes breaking changes

  • Migrated packages from github.com/pivotal/build-service-system to github.com/pivotal/kpack.
  • build.status.SHA was replaced with build.status.latestImage.
  • build.spec.tag was migrated to a list of build.spec.tags.
  • build.spec.additionalImageNames was removed, build.spec.tags supports multiple tags.
  • image.spec.disableAdditionalImageNames was migrated to image.spec.imageTaggingStrategy of type 'BuildNumber' or 'None'.

v0.0.2

21 Aug 18:45
d53166d
Compare
Choose a tag to compare
v0.0.2 Pre-release
Pre-release

Install

kubectl apply -f release.yaml

Note: This release includes breaking changes

  • image.spec.image was renamed to image.spec.tag
  • build.spec.image was renamed to build.spec.tag
  • Git and Docker secrets are now annotated with build.pivotal.io/git and build.pivotal.io/docker

Prominent Improvements

  • Knative Build is no longer a dependency and is not needed to install and run Build Service.

  • Source for an image and build can be fetched from a remote zip or jar by url. An image source with a remote source url can be configured like this:

    apiVersion: build.pivotal.io/v1alpha1
    kind: Image
    metadata:
      name: sample-image
    spec:
      tag: gcr.io/project-name/app
      serviceAccount: service-account
      builderRef: sample-builder
      cacheSize: "1.5Gi" # Optional, if not set then the caching feature is disabled
      failedBuildHistoryLimit: 5 # Optional, if not present defaults to 10
      successBuildHistoryLimit: 5 # Optional, if not present defaults to 10
      source:
        blob:
          url: https://storage.googleapis.com/build-service/sample-apps/spring-petclinic-2.1.0.BUILD-SNAPSHOT.jar

    Note: only supports publicly accessible blobs or blob urls with access token

  • An image with a Git source will automatically poll for changes if the configured revision is a branch or a tag.

  • The builder can be set to poll for changes by using the updatePolicy set to polling

    apiVersion: build.pivotal.io/v1alpha1
    kind: Builder
    metadata:
      name: sample-builder
    spec:
      image: cloudfoundry/cnb:bionic
      updatePolicy: polling

    Note: To disable polling the updatePolicy can be set to external. With an external updatePolicy the builder will only be made aware of an update to a builder when the builder resource is updated externally.

Changelog:

  • [Feature] Pull archived source from remote location #30
  • Allow users to set memory/cpu reservation and limits #12
  • Update examples/documentation to show all functionality. #42
  • Remove dependency on KNative Build #26
  • Change the field image in the image type to tag #59
  • Resolve the built image for me #9
  • Propagate labels from parent to child resources #8
  • Git init image is not publicly accessible #66
  • rename either the "Image" type or its "image" spec property #40

v0.0.1

27 Jun 22:00
Compare
Choose a tag to compare
v0.0.1 Pre-release
Pre-release

This is the first experimental alpha release of the build service system.

Install

kubectl apply -f release.yaml