HNHacker News
TopNewBestAskShowJobs

michelvocks

170 karma · joined July 4, 2018

submissionscomments
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Yes, that is indeed possible and shouldn't be a huge problem. Would love to talk about this idea in a separate github issue! :-)
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
At the end Gaia is a task scheduler. You can compare it with AWS stepflow but also with Jenkins/CircleCI/TravisCI/Bamboo/Codeship and many more.

In my opinion Gaia is perfect for programmers which are "forced" to write automation tasks. It allows you to write automation tasks in your preferred programming language and makes it super easy for you to schedule them because Gaia comes with an automatic build feature (just provide the git url of your source code and Gaia does the rest). Additionally, Gaia is super fast, lightweight and open-source.

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
At the end Gaia is a task scheduler. You can compare it with AWS stepflow but also with Jenkins/CircleCI/TravisCI/Bamboo/Codeship and many more.

In my opinion Gaia is perfect for programmers which are "forced" to write automation tasks. It allows you to write automation tasks in your preferred programming language and makes it super easy for you to schedule them because Gaia comes with an automatic build feature (just provide the git url of your source code and Gaia does the rest). Additionally, Gaia is super fast, lightweight and open-source.

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Gaia is only a few month old so we currently only support Go, Java, Python and C++. Feel free to open an issue on our github page to rise some awareness that C# support is appreciated. :-)
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Thanks. In the end it is similar to Gaia (a task scheduler) but also comparable with Jenkins/TravisCI/CircleCI and probably hundreds more schedulers. :-) The basic idea is not new.

In my opinion Gaia is perfect for programmers which are "forced" to write automation tasks. It allows you to write automation tasks in your preferred programming language and makes it super easy for you to schedule them because Gaia comes with an automatic build feature (just provide the git url of your source code and Gaia does the rest). Additionally, Gaia is super fast, lightweight and open-source.

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
In the past you simply had to compile your application, package it and push it to a remote server. Nowadays, it's not that simple anymore. You often find yourself writing scripts to create Kubernetes resources, manage remote APIs to create services which are needed by your application, talk to remote services (like HashiCorp Vault) to get credentials or secrets. Gaia does a great job here because you can directly use client SDKs in your preferred language to communicate with those remote APIs.

Have a look at the Kubernetes deployment tutorial, this might clear things up for you: https://medium.com/@michelvocks/automatic-kubernetes-deploym...

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
It does not generate any revenue. It's free and open-source. :-)

In my opinion it's comparable with airflow except it's more lightweight and supports basically any programming language and not only python.

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Yes, except it's more lightweight and supports basically any programming language and not only python.
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Thanks for the feedback. I will work on that! :-)
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
It can be used as an replacement for existing CI/CD tools but not exclusive. In my opinion Gaia can be used for every possible automation task. :-)

We are already working on "agents/build slaves" (we call them worker): https://github.com/gaia-pipeline/gaia/issues/107

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Gaia is just a few month old so we currently only officially support those languages. Feel free to open an issue on our github page to help us figuring out which languages are missing/needed.
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Pretty good description. Seems like I still have a lot to learn on how to present an idea right. :-)
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Really good idea. Website definitively needs something like that. I will work on this!

Argo is pretty cool but I think it's different. Imagine developing an automation workflow with 20-30 different steps. In Argo you basically have to develop 20-30 different applications, compile them, build a separate docker image and push all these images to a registry.

In my opinion that's too much overhead and a configuration management nightmare as well. Additionally, what if one step needs to share information with another one? What if when this information is not trivial like a binary for example?

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
You are right. Often I'm so drown in what I'm doing that I lose the overview. I will do better in the future!
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Hey bsenftner. Could you provide a link or an example of what you mean? :-) I googled "Deadline" but what I've found looks not correct.

I usually compare Gaia with tools like Jenkins and Spinnaker. For example, many people use Jenkins Pipeline (https://jenkins.io/solutions/pipeline/) which allows you to write CI/CD tasks in Groovy. In my opinion, Gaia fulfills this job way better because it doesn't force you to use a specific language. It's also super fast and provides features like the automatic (re)build of your pipelines.

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Thanks for the feedback. You are absolutely right.

I think we have answered those questions on our github readme page (https://github.com/gaia-pipeline/gaia) but somehow missed that on our webpage. We will work on that!

Edit: Oh and thanks. I will fix the links of the language icons. :-)

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Thanks for the feedback. You are absolutely right, this needs some more work!

We have already defined a "Q&A" section in our github README file (https://github.com/gaia-pipeline/gaia#questions-and-answers-...). Does this briefly answer your question or is still too vague?

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Good question! :-) Gaia is basically a scheduler. It automatically starts your pipeline, executes the functions defined in the pipeline and is also responsible for terminating the pipeline process.
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Thanks for the feedback. I will add that!

To answer your question, a pipeline is a real application which consists of at least one function (we call it job). You can compare it with a Jenkins Pipeline (https://jenkins.io/solutions/pipeline/). Therefore, a pipeline is one flow of automation task which consists of one or more steps.

michelvocks··on Show HN: Gaia – Build pipelines in any programming language
We have just added the support for C++ and currently looking at Rust but it's a bit tricky. There is no official gRPC SDK for Rust but I think we will manage it soon. :-)
michelvocks··on Show HN: Gaia – Build pipelines in any programming language
Hey simplify. Yes, actually when you open the website (https://gaia-pipeline.io) it should automatically start the video. Otherwise, have a look here: https://gaia-pipeline.io/video/gaia.mp4
michelvocks··on Show HN: Gaia – Build powerful pipelines in any programming language
Hey oldgun. Sorry for the late reply. Good to hear that. Let me know if you have any questions! :-)
michelvocks··on Show HN: Gaia – Build powerful pipelines in any programming language
Hey rs86. Sorry for the late reply. I actually like the design a lot. I think many developers also enjoy a fresh modern design, too :-)
michelvocks··on Show HN: Gaia – Build powerful pipelines in any programming language
Hey stevekemp. Sorry for the late reply. You are right, Gaia is alpha so this feature is currently missing. I hope we can provide this soon. :-)
michelvocks··on Show HN: Gaia – Build powerful pipelines in any programming language
Hey empath75. Sorry for the late reply. We also discussed this (https://github.com/gaia-pipeline/gaia/issues/19) and you are right. We will switch soon to a dependency system instead of a priority system. :-)
michelvocks··on Show HN: Gaia – Build powerful pipelines in any programming language
Hey rahimnathwani. Sorry for the late reply. You are absolutely right, this is my fault. I should have explained the term "pipeline" a bit more. I will work on this!
michelvocks··on Show HN: Gaia – Build powerful pipelines in any programming language
Hello smarx007. Sorry for the late reply. Gaia is not BPMN. You can actually compare it with Jenkins Pipelines but with the advantage that you can basically use any programming language. And no, "any" programming language does not mean Go. Gaia is alpha, that is the reason why we currently only support Go. We will support other languages soon. :-)
michelvocks··on Show HN: Gaia – Build powerful pipelines in any programming language
Hey regnerba. Sorry for the late reply. I don't know which CI/CD system you use but please let me explain my current experience. :-) At my company, we often had the requirement to do complex stuff besides the deployments. For example, we wanted to offer a service for developers that they can via "One-Button-Click" deploy our big monolith into Kubernetes from their code-fork. To get this working, we had to use Spinnaker and Jenkins. We had a really poor experience with Spinnaker cause everything needs to be configured manually and there is no way to actually "code" it. Jenkins supports this via Jenkins Pipelines. Those pipelines are actually nice but they force you to write them in Groovy. Gaia solves this problem. Any programming language can be potentially be used to develop such pipelines.
michelvocks··on Show HN: Gaia – Build powerful pipelines in any programming language
Hey jsd1982. Sorry for the late reply. You are right, I didn't describe the term "pipeline" explicitly. A pipeline is a compilation of functions which do "something". We used/use "priority" to determine to order of execution of these functions. We already noticed that priority is probably a bad name and we actually need something different (https://github.com/gaia-pipeline/gaia/issues/19). We are currently working hard on the documentation part (https://gaia-pipeline.io). The project is really early. I hope we can improve within the next weeks/month a lot! :-)
michelvocks··on Show HN: Gaia – Build powerful pipelines in any programming language
Hello myWindoonn. First of all, sorry for the late reply.

Actually, gRPC is the only requirement for pipelines. I hope can make this more clear in the future! :-)