openshiftdevopsopenshift-enterprisetekton

what is the difference between openshift buildconfig and pipeline


I am new to devops and reading openshift docs about this. Seems both buildconfig and pipeline(tekton in openshift 4.6) can achieve source-to-image process and triggered by git webhooks. So what is the difference between openshift buildconfig and pipeline?

PS: Just finished the pipeline tutorial on openshift, there is no build or buildconfig resource created during the whole process.


Solution

  • Openshift buildconfig is "Openshift specific" and was very hot in Openshift3. The hot stuff then was the source2image thing.

    Buildconfig could be setup for S2I, Docker and even "Pipeline". But this is not to mix with Openshift Pipelines with Tekton. The BuildConfig pipeliens was provided using jenkins files.

    Now as Tekton has gain more stability, respect and maturity out in the community and also under the "Openshift Pipeline" it has been the right way to do stuff.

    It is a more complete way to setup complex pipeliens with k8s native way and not only for openshift.

    So what the difference more than above I would say that using a pipeline will give you all the flexibility and power as any CI build tool. It is frequently updated and has a great slack community. Buildconfig has lot of limitations on what you can do.

    All you can do in buildconfig and more is achievable in Tekton pipeliens, but not the other way around. ;)

    When using Openshift Pipelines there are tasks provided for s2i too: https://github.com/openshift/pipelines-catalog

    Also Tekton tasks can be added from: https://github.com/tektoncd/catalog