We adopted Kubernetes two years ago, allowing us to quickly deploy, scale, and improve our fault tolerance capabilities and lower our infrastructure maintenance costs. We’ve been leveraging this level of infrastructure abstraction across all of our workloads, including our internal tools. In order to help our engineers ship quality fast, we have to structure our deployments. Today, we will show how ArgoCD puts this amazing feature within our reach!
At Qonto, we have two main environments:
production
: our main production cluster, used by our beloved customersstaging
: a cluster consisting of feature branch environments (acting as QA/development environments) and a…I often need to open a specific file in a deeply nested folders project. ZSH globbing does help but I wanted to have something faster.
Most of the time I already know the exact name of the file I want to open with my favorite editor $EDITOR
. The only thing I need to do is to find the first matching file in my current tree that matches the filename I want to edit.
Here’s a quick look of how my solution works.
Below the snippet to make it work. Simply paste it into your .bashrc/.zshrc file.
Enjoy! 🎉
UPDATE: I've also made an autocomplete function that works with zsh.
Here is how it looks like:
In this story I will walk you through a PostgreSQL master/slave cluster using repmgr. It also uses repmgrd for an automatic failover mechanism.
In order to test all the commands with two local machines I am using Vagrant. However, you can also use your own public / private cloud servers.
Create a Vagrantfile and run vagrant up
First you should configure either a private DNS server for example Route53 if you are on AWS or you can just modify your hosts file.
For this demo, the IP addresses used are
I mainly use Github for all my projects. When working with a team, I have a specific git flow which is composed of two protected branches:
master
main branch (production)dev
always ready to be pushed to master, thus to productionI can as well setup continuous integration with services like Travis
or CircleCI
to ensure that my code is always working in a neutral environment.
Now that I have my two protected branches, if I want to work on a specific a branch I have to create a new branch from dev, implement all the needed features and then…
DevOps engineer & SRE