Giter Club home page Giter Club logo

buildkit-tekton's Introduction

buildkit-tekton in action

buildkit-tekton

Buildkit frontend to run Tekton objects locally.

This repository produces two artifacts:

  • a Buildkit frontend
  • a tkn-local command to easily consume this frontend (in most situation)

buildkit-tekton Usage

With Docker (v20.04+ with DOCKER_BUILDKIT=1)

Add #syntax=ghcr.io/vdemeester/buildkit-tekton/frontend:v0.3.0 as the first line of you tekton yaml:

docker build -f taskrun.yaml .

With buildctl

buildctl build --frontend=gateway.v0 --opt source=ghcr.io/vdemeester/buildkit-tekton/frontend:v0.3.0 --local context=. --opt-filename=pipelienrun.yaml --local dockerfile=.

Options

No options yet, but there will be a lot.

Examples

There is a examples folder to try things out.

$ docker build -t foo -f examples/0-taskrun-simple/run.yaml .
[+] Building 1.6s (12/12) FINISHED
 => [internal] load build definition from run.yaml                                0.0s
 => => transferring dockerfile: 887B                                              0.0s
 => [internal] load .dockerignore                                                 0.0s
 => => transferring context: 34B                                                  0.0s
 => resolve image config for ghcr.io/vdemeester/buildkit-tekton/frontend:latest   0.0s
 => CACHED docker-image://ghcr.io/vdemeester/buildkit-tekton/frontend:latest      0.0s
 => [tekton] load resource(s) from run.yaml                                       0.0s
 => => transferring dockerfile: 131B                                              0.0s
 => [tekton] load yaml files from context                                         0.0s
 => => transferring context: 33.45kB                                              0.0s
 => resolve image config for docker.io/library/bash:latest                        0.0s
 => CACHED docker-image://docker.io/library/bash:latest                           0.0s
 => [tekton] simple-task-generated/print-date-unix-timestamp                      0.4s
 => [tekton] simple-task-generated/print-date-human-readable                      0.3s
 => [tekton] simple-task-generated/list-results                                   0.3s
 => exporting to image                                                            0.0s
 => => exporting layers                                                           0.0s
 => => writing image sha256:2ff10579bf3e33cf7cda836d8bdd5962f77d9c995fd342bf3b9e  0.0s
 => => naming to docker.io/library/foo
 0.0s

The same PipelineRun on buildkit-tekton and in a kubernetes cluster with tekton installed (both without pre-cached images, โ€ฆ and with approximately the same hardware)

  • buildkit-tekton: 4m5s
  • tekton in k8s: 7m

tkn-local Usage

$ tkn local
Local commands

Usage:
  local [command]

Available Commands:
  completion  Generate the autocompletion script for the specified shell
  help        Help about any command
  prune       Run a tekton resource
  run         Run a tekton resource

Flags:
  -h, --help   help for local

Use "local [command] --help" for more information about a command.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.