CI/CD автоматизация в Tekton

Можно ли включить автоматизацию CI/CD с помощью Tekton Pipeline? У меня есть проект в репозитории GitHub. и всякий раз, когда я вношу изменения, я хочу автоматически выполнять сборку и развертывание в Kubernetes? Я наткнулся на Prow, Trigger и т. Д. Если бы кто-нибудь мог поделиться плюсами и минусами и лучшим подходом, это было бы очень полезно. Заранее спасибо!

1 ответ

Кроме того, есть ли какой-либо пример триггера tekton, который запускает сборку при выполнении фиксации github?

Конечно! Взгляните на официальное репо: https://github.com/tektoncd/triggers/tree/master/examples/github

Версия 0.6.0 представила перехватчики для github и bitbucket, например прослушиватель событий для 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

Можно ли включить автоматизацию CI/CD с помощью Tekton Pipeline?

Да, Tekton Pipelines - это контроллер для реализации конвейеров CI/CD в Kubernetes с использованием CRD.

У меня есть проект в репозитории GitHub. и всякий раз, когда я вношу изменения, я хочу выполнять сборку и развертывание в Kubernetes автоматически?

Да, с помощью Tekton Triggers вы можете настроить веб-перехватчик из GitHub, который запускает новый запуск вашего конвейера CI/CD каждый раз, когда вы "вносите изменения" в свой репозиторий git.

Prow - это группа инструментов, используемых для автоматизации сборки в рамках проекта Kubernetes, их немного сложно использовать для проекта пользовательского приложения. Одним из компонентов является инструмент ChatOps, который может запускать конвейеры сборки с помощью команд чата в комментариях к запросам на вытягивание GitHub. Jenkins X также использует функции ChatOps.

Другие вопросы по тегам