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.