testbg testbg
testbg testbg

Reputation: 333

CI/CD Automation in Tekton

Is it possible to enable CI/CD automation using Tekton Pipeline ? I have my project in GitHub repo. and whenever I make a change, I want to perform the build and deployment in Kubernetes automatically? I came across Prow, Trigger etc. If anyone could share the pros and cons and the best approach, that would be very helpful. Thanks in advance!

Upvotes: 2

Views: 1354

Answers (2)

tost
tost

Reputation: 41

Also, are there any tekton trigger example that triggers the build when a github commit is done?

Sure! Have a look at the official repo: https://github.com/tektoncd/triggers/tree/master/examples/github

Version 0.6.0 introduced interceptors for github and bitbucket, for example an eventlistener for github webhook:

apiVersion: triggers.tekton.dev/v1alpha1
kind: EventListener
metadata:
  name: github-listener-interceptor
spec:
  triggers:
    - name: github-listener
      interceptors:
        - github:
            secretRef:
              secretName: github-secret
              secretKey: secretToken
            eventTypes:
              - pull_request
        - cel:
            filter: "body.action in ['opened', 'synchronize', 'reopened']"
      bindings:
        - ref: github-pr-binding
      template:
        ref: github-template

Upvotes: 1

Jonas
Jonas

Reputation: 128985

Is it possible to enable CI/CD automation using Tekton Pipeline?

Yes, Tekton Pipelines is a controller for implementing CI/CD pipelines in Kubernetes using CRDs.

I have my project in GitHub repo. and whenever I make a change, I want to perform the build and deployment in Kubernetes automatically?

Yes, with Tekton Triggers you can setup a webhook from GitHub that triggers a new run of your CI/CD pipeline each time you "make a change" in your git repository.

Prow is a group of tools used for build automation within the Kubernetes project, they are a bit complex to use for a custom app project. One of the components is a ChatOps tool, that can trigger build pipelines using chat-commands in comments to GitHub pull-requests. Jenkins X is also adopting ChatOps functionality.

Upvotes: 1

Related Questions