Author Archives for Manuel Dewald

Things I always search for when writing a new BASH script

November 25, 2020 8:16 am Published by Comments Off on Things I always search for when writing a new BASH script

Get the directory of the script When writing a bash script, especially when it is distributed via a git repository and depends on other files in the same repository, it is often important to know the location of the script to use relative paths to other files. Particularly, getting the directory of the current script allows users to execute the script from wherever they want and the script can still depend on files similar to using a relative path. This... View Article


Building Kubernetes Operators

November 17, 2020 4:33 pm Published by Comments Off on Building Kubernetes Operators

In the past months ad Red Hat I dove a bit into operator development. During learning how to build Kubernetes operators myself I published a quick start article on opensource.com . Using Operator SDK is a good way to kick-start your own Kubernetes operator. While the post itself is based on an older version of the SDK and usage has changed, you should be able to get such an example operator up and running quickly using this post and a... View Article


CFP: How to build a Kubernetes operator that doesn’t break production

September 21, 2020 8:46 am Published by Comments Off on CFP: How to build a Kubernetes operator that doesn’t break production

Audience This talk is targeted at software developers and SREs interested in development practices for Kubernetes operators. Are they interested in how development of an operator is different from other software projects? This project will give an outline of the operator pattern and how development looks like, focusing on the importance of good engineering practices. Are they writing a Kubernetes operator just to automate a simple task? They should write tests for it, and this talk will tell them why.... View Article


CFP: 5 agile practices and why they are useful to SRE teams

April 21, 2020 2:28 pm Published by Comments Off on CFP: 5 agile practices and why they are useful to SRE teams

As SRE (Site Reliability Engineering) teams contain a fair portion of software development work, and get filled up by software developers, it is a natural move to also adapt agile software development practices. The right agile model depends heavily on the percentage of development work vs. operations, which may be influenced by the team size. For example, in a small team where a high percentage of people is on call during the day, it might not make too much sense to plan... View Article


Guest article: Build a Kubernetes Operator in 10 minutes with Operator SDK

April 20, 2020 1:53 pm Published by Comments Off on Guest article: Build a Kubernetes Operator in 10 minutes with Operator SDK

It’s been a while since I last submitted an article to opensource.com. This time it is about quickly kick-starting a Kubernetes Operator with Operator SDK. Click here to get to the article. When you start working on a new software project, often a bunch of code is already existing. That’s by no means different when joining development of a Kubernetes Operator. In the case of Operator SDK a good part of the code is additionally generated, so you also want... View Article


CFP: Things I love about SRE that I loathe about DevOps

January 28, 2020 8:32 pm Published by Comments Off on CFP: Things I love about SRE that I loathe about DevOps

DevOps & SRE – what is it? Let’s define what those terms mean. DevOps means, the same team building the software is responsible for running it. This can be easiest imagined for software that is operated by the vendor themselves, i.e. cloud services. The idea is, no one knows the software better than the developers, so no one could better operate and fix in-flight issues than them. On the other hand, developers have high interest in building software that is... View Article


Ruby best practice: Implementing operator == and ensuring it doesn’t break

March 8, 2019 12:42 pm Published by Comments Off on Ruby best practice: Implementing operator == and ensuring it doesn’t break

In ruby, comparing hashes, strings and objects is a complicated topic. Should you use equal?, eql? or ==? There is plenty of help on this topic, but in this post, we will focus on the interesting behavior of the == operator and how you can make it behave as you need it for your use case. When comparing Hashes in Ruby, the == operator compares the content of a hash recursively. 1 2 3 4 5 6 7 8 9... View Article


Raspberry Pi powered Wifi Pictureframe

March 6, 2019 7:09 am Published by Comments Off on Raspberry Pi powered Wifi Pictureframe

Some days ago I wrote an post about building a picture frame using a Raspberry Pi. The article has been published on opensource.com. The software to show the slideshow has been written by myself and published on github as I wasn’t happy with all the existing solutions. As they either involve using a GL rendered xscreensaver which was terribly slow on the Raspberry Pi or installing Kodi which I think is kind of overkill, just to get a slide show.Also I wanted the... View Article


Ansible: Passing arrays to BASH scripts

January 7, 2019 7:56 am Published by Comments Off on Ansible: Passing arrays to BASH scripts

When using Ansible, it may become handy sooner or later to invoke a BASH script in one of you playbooks. Invoking a BASH script in Ansible can be done using a simple shell task: 1 2 3 4 5 6 --- - hosts: 127.0.0.1 connection: local tasks: - name: ensure stuff is done shell: ./do_stuff.sh This task will execute the bash script do_stuff.sh. Sometimes, it is also necessary to configure the behaviour of the BASH script you are executing. The simplest way... View Article


A Christmas Poem

December 19, 2018 7:31 am Published by Comments Off on A Christmas Poem

1 2 3 4 5 6 7 8 910111213141516171819202122232425262728293031 #include <stdio.h>/* A CHRISTMAS POEM * * Christmas is near, * brings relaxed atmosphere. * The devs are staying at home, * feeling bored like a stone. * * Left the winter outside, * but still not satisfied. * They are missing their code, * yet so tired of node. * * And if this feels like you - * here is something to do. * Celebrate! It's written in C:... View Article