GithubHelp home page GithubHelp logo

vincent-pli / triggers Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tektoncd/triggers

0.0 1.0 0.0 19.54 MB

Event triggering with Tekton!

License: Apache License 2.0

Go 94.47% Shell 5.53%

triggers's Introduction

Tekton Triggers

Triggers is a Kubernetes Custom Resource Defintion (CRD) controller that allows you to extract information from events payloads (a "trigger") to create Kubernetes resources.

๐Ÿšจ The contents of this repo are currently a WIP ๐Ÿšจ We are working toward implementing this design (visible to members of the Tekton mailing list).

Background

Tekton is a Kubernetes-native, continuous integration and delivery (CI/CD) framework that enables you to create containerized, composable, and configurable workloads declaratively through CRDs. Naturally, CI/CD events contain information that should:

  • Identify the kind of event (Github Push, Gitlab Issue, Docker Hub Webhook, etc.)
  • Be accessible from and map to particular pipelines (Take SHA from payload to use it in pipeline X)
  • Deterministically trigger pipelines (Events/pipelines that trigger pipelines based on certain payload values)

The Tekton API enables functionality to be seperated from configuration (e.g. Pipelines vs PipelineRuns) such that steps can be reusable, but it does not provide a mechanism to generate the resources (notably, PipelineRuns and PipelineResources) that encapsulate these configurations dynamically. Triggers extends the Tekton architecture with the following CRDs:

  • TriggerTemplate - Templates resources to be created (e.g. Create PipelineResources and PipelineRun that uses them)
  • TriggerBinding - Instantiates resources in TriggerTemplate using event fields
  • EventListener - Wraps TriggerBinding(s) into an addressable endpoint (the event sink)

Using tektoncd/triggers in conjunction with tektoncd/pipeline enables you to easily create full-fledged CI/CD systems where the execution is defined entirely through Kubernetes resources. This repo draws inspiration from Tekton, but can used stand alone since TriggerTemplates can create any Kubernetes resource.

Want to start using Tekton Triggers

Probably a bit early! In the meantime, consider ramping up on Tekton Pipelines

Want to contribute

Hooray!

triggers's People

Contributors

iancoffey avatar bobcatfish avatar vdemeester avatar

Watchers

 avatar

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.