-
I have used the “Bourne Again Shell” (bash) for years now to automate various tasks. One thing that has bothered me for a long time is not having a good way to test my scripts. Recently, I became aware of “bashunit” while setting up “neovim” as my IDE.
-
In GitLab version 16.0.0, the default settings for “Personal Access Tokens” (PAT) were changed. Since I use PATs for my deployments, I needed an automated solution to rotate these tokens regularly.
-
I encountered persistent issues with my container image build pipeline. The pipeline is run by my local GitLab CI instance. After struggling for a considerable period, I decided to address the problem by transitioning from a build setup relying on “docker” to a new setup built on “podman/buildah”. This required a complete overhaul of the build process. Unfortunately, this change broke the deployment of my website using GitLab CI.
-
I ran a rather decent monitoring system for my servers at home based on
prometheus
. My monitoring service sends an alert, if some file systems start filling up. Unfortunately, in most cases, I don’t know, what file(s) cause this mess. I usencdu
to find the largest files in the alerted filesystem. This short article shows how to install and use this small helper.
-
Some time ago, I started to set up the “Network UPS Tools” (NUT) for my uninterruptible power supply (UPS) “Eaton 3S”. It’s a UPS which can be connected to a computer via USB cable.
I found a NUT-package in the “testing”-repository of “Alpine Linux”. Unfortunately, I was unable to create a working setup using this package. After some research, I found the reason for my problems: A missing dependency to the
hidapi
-package. I wanted to submit a merge request to get around the problem permanently.
-
I bought an “Eaton 3S” uninterruptible power supply (UPS) some time ago. It is supposed to support my servers with power in case of a power loss. I also wanted to get notified about those “power down” events, so I looked for an open-source software to monitor the UPS hardware. I found the “Network UPS Tools” (NUT). In this article, I describe some of the pitfalls I came across.
-
I have been used to have a server running under my desk for years now. It serves “Nextcloud” for internal data sharing and “GitLab CE” for hosting my internal “git” repositories. Unfortunately this year was quite a hot one in terms of temperature. I was forced to shutdown the server multiple times due to the heat in my home office. As a result I started a research in order to find a solution about how to setup a much smaller system which does not heat up the room that much. This article describes my search to get it up and running with “Alpine Linux” in “diskless mode”.
-
One of “Go”’s strengths is its capability to build your “Go” project cross-platform for all kinds of operating systems and architectures, e. g.
windows/amd64
(Windows),linux/386
(Linux),darwin/amd64
(MacOS). But setting up the environment for this is not that easy. This article is a small “HOWTO” listing all the steps required to set up a cross-platform “Go” environment.
-
Occasionally I get some really weird errors when I try to install gems using
gem
orbundler
. It took me some time to find out the reason for this. Read on if you’d like to hear the full story.
-
It’s quite easy to pull images via
docker
down to your local developer machine. But sometimes you need to get images onto servers which have no access to the World Wide Web (WWW) nor to an internal docker registry. In this article I show you how to usedocker save
anddocker load
to get the required images onto those servers.
-
… or why you should care about “OOMScoreAdjust” in your systemd-enabled docker-images Recently I put together a docker image with “PostgreSQL 9.4” installed from the project’s software repository on “CentOS 7.1” to back a rails application. Unfortunately I was not abled to run the “PostgreSQL”-server in a container based on that image. It failed with exit code 206/OOM_ADJUST. In this article I’m going to describe the reason for the failure using a minimal failing example.
-
Given you’re a professional website designer and would like to work on some wonderful project. This project might be about designing a new website with a blog and a shop for one of your favourite customers. To get involved in this project, she asked...
-
I use
middleman
for my own website. To make it easier for me to pickup my work over different machines , I added a small start script to the repository. In this article I’m going to show you how it works and how you can make use of it for your own...
-
If you need to share files from your local system with others, you’ve got plenty of options. For some of them you need a client installed locally and an account at a remote website. Fortunately there are easier options available as most programming languages come with an HTTP server. In most cases it’s able to serve files from a local directory and is sufficient for a lot use cases. In this article I am going to show you, how I solved the problem by “writing” a local web server in
Go
running on Linux, Windows and Mac OS X.
-
You can find quite a few IT infrastructures where an HTTP proxy is used to secure the access to the “World Wide Web” (WWW). In smaller company environments you can configure the proxy for each workstation manually. In larger environments you normally use a so called “proxy.pac” for this. This article gives you an introduction to “proxy.pac”-files.
-
Recently I added a Read-Eval-Print-Loop-Console (REPL)-console to the
aruba
-project as playground for our users similar to the one you find inrails
. This article first shows youaruba
’s console a bit and then describes how you can build your own console in Ruby with some help ofIRB
.
-
Given you have two different customers which need to access the same resource. The URL should be the same for both, e.g. “https://www.example.org/resource.db”, but the response should be different.
-
Having a suite testing a lot of features is a good thing. But if your project supports a lot of different Rubies – MRI-Ruby, JRuby etc. – you might face platform dependent bugs. Read on, if you like to know how we worked around some platform dependent bugs in
aruba
to keep the build status “green” on all support Rubies.
-
Some of my rubygems – e.g. proxy_pac_rb – either need a backing HTTP(S)-server for their tests or interact with some external web services via HTTP/HTTPS. To mock external services you can either use
VCR
,webmock
or just plainWebrick
. To serve data...
-
You probably heard about embedding CSS into SVG, but have you ever tried that yourself? Recently I faced a rather strange design issue.
-
Do you know what: It’s that simple to setup an HTTP forwarding proxy (proxy) with ruby. The only thing you need is
webrick
’sHTTPProxyServer
-class.