Automake in OpenShift

It’s Friday evening, 19:00 (7pm) and I just spent more than an hour resolving a problem in anaconda. The problem was that builds sometimes failed with:

/bin/sh: /sandcastle/docker-io-usercont-sandcastle-prod-20210212-101715691597/missing: No such file or directory

The irony, right? A file called “missing” is actually missing.

Luckily, I was successful and figured it out. Beer incoming.

Keep reading

Open Service as a Service in Practice

This is a follow-up to the open-source-as-a-service blog post of a friend and a colleague of mine, Stef Walter.

TL;DR of Stef’s article is that open source services are hard to contribute to. Any first-time contributor is probably having hard times to try changes locally in the same way the service is deployed in production.

Imagine that you’d be able to contribute to GitHub and try your change in some playground moments later you opened your PR. Freakin’ awesome, right?! I strongly advise you to read Stef’s blog post to understand this concept further.

In this article I’d like to discuss the practical side of this - how can one actually achieve such glorious service contribution model?

Keep reading

Sharing audio to a videoconference using pulseaudio

Since I do all the meetings via videoconferencing software in this pandemic, from time to time I need to do something extra than just sharing my face and voice: share a video from my laptop. Luckily, pulseaudio has your backs, it’s just not that trivial. Before we start, I suggest to read these posts how to share sound and hear it in your headphones: github.com/toadjaune/pulseaudio-config How can I use PulseAudio virtual audio streams to play music over Skype?

Keep reading

Rootless Podman I/O

A colleague of mine asked me today to prove that rootless podman has worse I/O performance than running podman as root. Which I claimed.

My instinct is that it gotta be worse, because fuse-overlayfs is overlayfs implementation in userspace, so it gotta be less performant than a kernel module. Let’s see.

Keep reading

Ansible Collections: init

sshnaidm gave me an opportunity to play with Ansible Collections today.

Since I was at AnsibleFest 2019 in Atlanta, I heard so much about the collections but never actually used them.

Keep reading

Debugging Python Code

People on my team asked me some time ago how I debug things in our python code base. So I thought I’d share here.

The easiest (and least efficient) way to debug is to use print statements and logging. But since you’re not using a real debugger, you need to update the code and rerun in order to get new results.

Hence the most efficient way to debug things in python is to use a debugger. Don’t be scared, they are easy to master and they’ll serve you nicely for the rest of your life. They all are very similar.

Keep reading

Building container images from scratch using Ansible

This blog post is a guide coming from ansible-bender#49 issue.

Okay, let’s start.

Building from scratch, what does it mean? It’s very simple: your base image is an empty directory:

Keep reading