kubefirst 2.0 Adds Civo, GitLab, UX++ & More
With the 2.0 release of kubefirst it's easier than before to deploy Kubernetes clusters. We added Civo as a cloud platform, now support GitLab SaaS, and the stability of our CLI has improved so much.
It’s been a while since we released a new version of our CLI, but it's for a good reason: we were working hard on 2.0. We are really excited to share with you the new major release of the kubefirst platform, which includes a lot of new goodies! For those of you that are new with us, kubefirst delivers instant GitOps platforms so you can have the most popular open source platform tools working together in minutes.
Kubefirst provides fully-automated open source application delivery and infrastructure management gitops platforms providing you with the best cloud native tools with a single command.
In addition to supporting new cloud and Git providers, we improved the overall CLI experience, reduced the points of failure in the provisioning (and deprovisioning) process, updated the gitops-template repository for a clearer architecture, brought to life a new sexy UI for the kubefirst console app, and simplified the deployment with only one Metaphor demo application who also got a new amazing UI, and logo.
Civo: an alternative cloud provider
One of the biggest features for this release is the addition of another cloud platform on which you can deploy your Kubernetes cluster using kubefirst. With AWS, and the possibility to create a cluster locally, you can now use Civo as your cloud provider. This new cloud provisioning is now as fast as deploying locally: in only six little minutes, instead of 35 with AWS, you’ll have a production-ready Kubernetes cluster working on Civo!
If you do not know Civo, they are a great alternative to the usual suspects. They give you a simplified developer experience with a transparent pricing model. They are also powered only by Kubernetes, so what not to love about Civo, right!
To start your experience with this new provider, simply install the kubefirst CLI using brew install kubefirst
or update it with the following commands:
brew update
brew upgrade kubefirst
For other operating systems, or if you are not using Homebrew, please follow these instructions.
Once you have the latest kubefirst version, to use GitHub as your Git provider, run the following:
export GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxx
export CIVO_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
kubefirst civo create \
--alerts-email [email protected] \
--github-org your-github-org \
--domain-name your-domain.io \
--cluster-name kubefirst
For GitLab, follow these steps:
export GITLAB_TOKEN=xxxxxxxxxxxxxxxx
export CIVO_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
kubefirst civo create \
--alerts-email [email protected] \
--git-provider gitlab \
--gitlab-group your-gitlab-group \
--domain-name your-domain.io \
--cluster-name kubefirst
For more details on the installation for CIVO, please refer to the CIVO with GitHub documentation or the CIVO with GitLab one.
What does the fox say? GitLab SaaS support!
Prior to this release, we were supporting self-hosted GitLab with AWS as the main cloud provider. We heard loud and clear from our community that the GitLab lovers wanted support for the SaaS offering from their preferred open-source code-sharing platform. It is now replacing the self-hosted version, for an even better experience! But we didn’t stop there, we added support to our beloved local install (which we renamed to k3d, more on that later), and to our new integration with Civo.
All in all, you now have six ways to create your cluster: AWS with GitHub, AWS with GitLab, Civo with GitHub, Civo with GitLab, k3d with GitHub & k3d with GitLab. It’s exciting, right!?
Breaking Changes
With 2.0, we’ve done a lot of refactoring for a faster, and smoother experience while ensuring our CLI is as future-proof as possible. With those changes, it was inevitable… We introduced some breaking ones.
kubefirst <platform> <command>
Any platform commands are now executed with the kubefirst <platform> <command>
structure: it’s the new kid on the block. Concretely, it means that kubefirst cluster create
which was for creating a cluster on AWS, is now kubefirst aws create
. We think that by doing so, we are making it easier for you to instinctively find the command you need, and at the same time, making it easier for us to add the new cloud offering.
This new sequence is also applicable to kubefirst local
which can now be run using kubefirst k3d create
. As you can see, it’s not just about the new command structure; we also changed the name from local
to k3d
, which better reflects the technology we are using behind the hood, and gives us the opportunity to add other local platforms in the future. Didn’t I tell you, the Civo addition is just the beginning!
It’s Retirement Time for init & clean
Both commands are sipping cocktails on the beach, and we wish them the best! From now on, you do not need to run the init
command before creating a new cluster: the create
one will do it for you, isn’t it wonderful? Same goes for the clean
command you were using when you needed to undust the platform resources: guess what, the destroy
command (yeah, we like the name too) will magically make it happen.
To Infinity and Beyond
Oh, before we forget, we moved our documentation to Docusaurus which will empower us to give you a better experience, and, what we all really wanted, a dark mode. We took that opportunity to integrate with TypeSense, another open source project, and started a restructuring of the documentation while updating the content.
We sincerely hope you’ll like our new release as much as we like it. Truth be told, we are proud of the work we have accomplished in the last two months. kubefirst is now faster than ever. Our CLI is also more stable, and gives you even more possibilities than before. It is free to use, and yes, remains open source as always. Oh, and guess what, we are just getting started…
So don’t wait, and try it yourself! As always, we are on our Slack community if you need any help, and we are welcoming any feedback about the new, and improve kubefirst experience.