How to manually update Kubernetes Resources

This article demonstrates different strategies to update kubernetes resources.

Context and Problem Statement

Our goal is to update resource without overwritting changes made outside of our control. For example, we would like to upgrade a container image version or a deployment replicas count.

In the context of a kubernetes operator …

more ...

Running Software Factory on OpenShift

This article presents a plan for running Software Factory on OpenShift.

Context and Problem Statement

We are looking for solutions to the following list of pain points with the current system:

  • Where are the services secrets, and how can I rotate them? This is a key requirement for auditing purpose …
more ...

Completing the first release of logreduce-rust

I am happy to announce that the logreduce-rust project now implements a minimum viable product. It can be used to compare two remote directories like this: logreduce diff build-log-url1 build-log-url2. This article introduces the latest features.

In this post I will write about:

  • My choices regarding user input processing.
  • Data …
more ...

Introducing the BytesLines iterator

The BytesLines iterator's goal is to provide an API for processing logs line by line. It processes logs by:

  • Splitting sub line to treat cmd output embedded as a long oneliner.
  • Working with Read objects, such as file decompressors or network endpoints.
  • Using zero copy slices to optimize memory usage …
more ...


Improving logreduce with Rust

This article introduces logreduce-tokenizer which leverages the Rust programing language to improve logreduce performance and reporting capabilities.

In this post you will learn:

  • What logreduce is.
  • How it works.
  • Why we need this new function.
  • What the upcoming roadmap is.

Logreduce

Logreduce is a command line tool that can extract …

more ...

Practical Haskell Use Cases

This post presents a few practical projects in which we used Haskell succesfully.

After using Python type annotations, and then the OCaml type system, a colleague and I started to use Haskell to better define our program. We …

more ...

Introducing Functional Programming to Pythonistas

This year, I continued my journey through computer science by learning functional programming. I started using functional programming (FP) through emacs lisp, then scheme with the SICP book, until I discovered Haskell, which is arguably the best language to learn FP concepts. There I discovered software designs that provide elegant …

more ...


Python Dataclasses

This is a demonstration of how to use python dataclasses to build a Zuul client that shows build information from a REST api.

Introduction

Python dataclasses provides many advantages over traditional datastructure such as dict or object. Before we use them, let's take a look at typing, immutability and parsing …

more ...