A CI/CD Hello World Pipeline: Is it possible?

G.L Solaria - Sep 24 '19 - - Dev Community

I haven't had experience working with a full CI/CD pipeline yet so I thought I would build a "Hello, World!" one. I realise CI/CD is a complex subject and it will take me time to learn and build but I want to give it my best shot to keep it simple ... ish.

There are probably many technology combinations that could be used but I want to use the following criteria to narrow it down:

  • Tooling shall be free for individual use - preferably Open Source or have a Community Edition available.
  • Tooling shall run on my Ubuntu 18.04 machine.
  • Tooling shall be able to run on Windows and Mac.

Now I am a very confident Bash scripter and I think I could use Bash as the glue for my rinky-dink (?!!) pipeline but I don't want to because I want to have fun and learn all the things!

So I after some google-foo I cobbled together the following line up:

  • Git and GitHub for source/configuration control.
  • GitHub for issue tracking.
  • Jenkins to run build and tests.
  • Docker containers to run each of the 2 hello-world-ish micro-services.
  • Kubernetes to orchestrate container deployment to give continuous user access to the micro-services.
  • I may have to use Virtual Box to simulate a multi-node architecture.

I realise that Azure Devops has a free tier which looks great. I know that GitHub is working on a CI/CD pipeline with free (I think) self-hosted runners. But I feel like more of a challenge. However, I reserve the right to change my mind if things get out of control!

So that's the rough plan. Feel free to tell me what I am missing, where I am over-tooling, or what you would do differently in the comments.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terabox Video Player