What is our primary use case?
We have our automation pipeline in Tekton. We create pipelines, basically pipelines, to run automated customer scenarios through our automation, Bash scripts, and Golang. To execute these tests routinely, we have implemented those pipelines in Tekton.
How has it helped my organization?
Tekton's integration capabilities enhance our development workflows. The product we are testing is also based on Kubernetes and containers, as is Tekton. At the end of the day, we use similar files and languages.
So, it integrates pretty well. We use it through OpenShift pipelines on the OpenShift platform. The updates are automated, so we don't have to worry about them too much.
What is most valuable?
I like that you can parallelize tasks. If two tests are not conflicting, you can run them in parallel. This saves time. You can also test pipelines locally if they are not working.
Additionally, I like the branching and visualization tools for the pipeline. I can easily share an image with someone, and they can understand the pipeline's structure.
What needs improvement?
Compared to traditional tools like Jenkins, Tekton lacks a lot of features. It's not efficient in managing conflicts between multiple pipelines. If I execute a test and someone else executes a test, we face lots of conflicts and overwriting of each other's work. That's one area for improvement.
Also, the reliability of Tekton is sometimes an issue. I think it's more of a Kubernetes-related issue than a Tekton issue. There are more outages than we expect.
We have a strict requirement of running tests four to five times a day, and sometimes it's not able to provision the pipeline on time, so we lose test runs.
For how long have I used the solution?
I have been using it for two years.
What do I think about the stability of the solution?
We have had stability issues, but on my side, it was more dependent on Kubernetes, the platform we used. But it depends on the deployment model.
I would rate the stability a seven out of ten.
What do I think about the scalability of the solution?
No issues with scalability. I can estimate that around 20 teams, with an average of four people per team, use it, so around 80 people use it.
How are customer service and support?
The customer service and support have been excellent. We have an internal deployment of Tekton, so the support team is also internal.
How would you rate customer service and support?
How was the initial setup?
It's easy, but it depends on which distribution you use. The Google one, I haven't tried. Because it is easy on RedHat one.
Challenges:
There are too many files to change if you have to make any minor source code changes. It becomes difficult to review (if someone has changed something) and assess the impact of those changes on other tasks or pipelines. There's too much friction in terms of making small changes.
What's my experience with pricing, setup cost, and licensing?
Tekton is an open-source tool, and we use it directly. Red Hat has its own distribution of Tekton.
We have our own internal deployment, so we don't pay anything.
What other advice do I have?
Overall, I would rate the solution a seven out of ten because there are lots of areas for improvement.
I would recommend it to someone who is well-versed in Kubernetes and can debug internal issues, not to any newcomers. I would suggest they explore traditional legacy tools first.
*Disclosure: My company does not have a business relationship with this vendor other than being a customer.