build

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 10, 2020 License: Apache-2.0

README

Work in Progress License

Shipwright - a framework for building container images on Kubernetes

Shipwright is an extensible framework for building container images on Kubernetes. With Shipwright, developers can define and reuse build strategies that build container images for their CI/CD pipelines. Any tool that builds images within a container can be supported, such as Kaniko, Cloud Native Buildpacks, and Buildah.

Dependencies

Dependency Supported versions
Kubernetes v1.15.*, v1.16.*, v1.17.*
Tekton v0.14.2

Build Strategies

The following are the build strategies supported by this operator, out-of-the-box:

Users have the option to define their own BuildStrategy or ClusterBuildStrategy resources and make them available for consumption via the Build resource.

Operator Resources

This operator ships four CRDs :

  • The BuildStragegy CRD and the ClusterBuildStrategy CRD is used to register a strategy.
  • The Build CRD is used to define a build configuration.
  • The BuildRun CRD is used to start the actually image build using a registered strategy.

Read the Docs

Version Docs Examples
HEAD Docs @ HEAD Examples @ HEAD

Examples

Examples of Build resource using the example strategies shipped with this operator.

Try it!

apiVersion: build.dev/v1alpha1
kind: Build
metadata:
  name: kaniko-golang-build
  namespace: build-examples
spec:
  source:
    url: https://github.com/sbose78/taxi
    contextDir: .
  strategy:
    name: kaniko
    kind: ClusterBuildStrategy
  dockerfile: Dockerfile
  output:
    image: image-registry.openshift-image-registry.svc:5000/build-examples/taxi-app
apiVersion: build.dev/v1alpha1
kind: BuildRun
metadata:
  name: kaniko-golang-buildrun
  namespace: build-examples
spec:
  buildRef:
    name: kaniko-golang-build
  serviceAccount:
    generate: true

Development

Contacts

Kubernetes slack: #shipwright


Roadmap

Build Strategies Support
Build Strategy Alpha Beta GA
Source-to-Image
Buildpacks-v3-heroku ☑️
Buildpacks-v3 ☑️
Kaniko ☑️
Buildah ☑️
Features
Feature Alpha Beta GA
Private Git Repos ☑️
Private Output Image Registry ☑️
Private Builder Image Registry ☑️
Cluster scope BuildStrategy ☑️
Runtime Base Image ⚪️
Binary builds
Image Caching
ImageStreams support
Entitlements

Directories

Path Synopsis
cmd
pkg
apis/build
Package build contains build API versions.
Package build contains build API versions.
apis/build/v1alpha1
Package v1alpha1 contains API Schema definitions for the build v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=build.dev Package v1alpha1 contains API Schema definitions for the build v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=build.dev
Package v1alpha1 contains API Schema definitions for the build v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=build.dev Package v1alpha1 contains API Schema definitions for the build v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=build.dev
controller/fakes
Code generated by counterfeiter.
Code generated by counterfeiter.
e2e

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL