Merikan Blog

My personal braindump

Speed up your Testcontainers tests

How you can drastically reduce the runtime for your Testcontainers tests

This is the second part of a two part series about Testcontainers. In this part I will among other things show you some tricks to get your Testcontainers start much faster. Intro In the previous blog post, Getting Started with Testcontainers, I described what the Testcontainers framework is and how to get started using it in your project. After using Testcontainers for a long time I learned that there are things that need to be adjusted to make it even better and faster.

Getting started with Testcontainers

What is Testcontainers and why should I use it?

This is the first part of a two-part series about Testcontainers. In this first part I will explain what it is, what problems it tries to solve, how it works and finally how you can use it in your own projects. In the second part we will see if we can reduce startup time for our Testcontainers. Introduction Earlier this spring I held a skills meeting for my colleagues that was about JUnit 5 and Testcontainers.

Troubleshooting Hyperswitch

time to fix this once and for all

update 20190625: Sometimes the login console prevents hyperswitch to work properly, see below. Intro For many years I’ve been using an excellent little gem called Hyperswitch. From time to time I have had problems with it, suddenly it just stopped working and I have never found out what the reason really was. I have Googled for it and tried all sorts of things but nothing has worked and suddenly it has started to work again.

How to Sign Git Commits

Installation To be able to sign our git commits on Macos we have to install gnupg and pinentry-mac. When installing gnupg a pinentry is provided but we want to use a pinentry that is specific för MacOS so we can use the Key-chain to store our Passphrase. First install gnupg, later on we will install pinentry-mac too. $ brew install gnupg Generate a key First we have to generate a key that we will use.

Upgrade to Bash 5 in MacOS

I am a long time user of Zsh but I also use Bash now and then but mostly when running bash scripts. The other day when upgrading SdkMan it complained that I was using an old version of bash. I have to admit that I have used the default bash installation in MacOS. What I didn’t know was that Apple will not update Bash, because the latest version is licensed under GPLv3, which Apple cannot use.

JVM in a Container

How different Java versions behave in a container

How different Java versions behave in a container

Upgrade CrashPlan on Synology

#make CrashPlan log entry echo “I ${TIMESTAMP} Synology repairing upgrade in ${SCRIPT_HOME}” >> ${DLOG}  mv ${SCRIPT_HOME}/upgrade.log ${SCRIPT_HOME}/upgrade.log.old UPGRADE_VER=echo ${SCRIPT_HOME} | sed -r "s/^.*\/([0-9]+)\.[0-9]+/\1/" unzip -o ${OPTDIR}/upgrade/${UPGRADE_VER}.jar “.jar” -d ${OPTDIR}/lib/ unzip -o ${OPTDIR}/upgrade/${UPGRADE_VER}.jar “lang/” -d ${OPTDIR} mv ${SCRIPT_HOME}/upgrade.sh ${SCRIPT_HOME}/upgrade.sh.old exit 0 fi  #updates may also overwrite our native binaries [ -e ${OPTDIR}/bin/libffi.so.5 ] && cp -fp ${SYNOPKG_PKGDEST}/bin/libffi.so.5 ${OPTDIR}/lib [ -e ${OPTDIR}/bin/libjtux.so ] && cp -fp ${OPTDIR}/bin/libjtux.so ${OPTDIR}/ # for some reason only version 3.

Move a git repository to another location.

Clone the the repository git clone https://code.google.com/p/my_repo cd my_repo List all local and remote branches. Note: All branches will be pushed later, both local and remote. git branch -a Track all remote branches. for remote in git branch -r | grep -v '\->'; do git branch –track ${remote#*/} $remote; done Add the new remote repository. git remote add new-origin git@github.com:user/my_repo.git git remote -v Push all branches to the new remote repository location.

Mavericks and slow Finder

Last weekend I upgraded my MBP to Mavericks. I have been waiting with the upgrade because I didn’t want to have problem with my computer so I figured I’ll wait for some bugfixes before upgrading. So last weekend I decided to take the jump and upgrade. The first thing I discovered was that HyperSwitch was not working as it should and I still have not found a solution to the problem.

Regex and negative lookbehind

In my current project our application is built with Spring and we are using a couple of Spring profiles. Unfortunately we didn’t make them unique so if we deploy it with another application in the same application server we might get a name clash. We decided that we better try to use names that are specific for our application. So I started renaming all of our spring profiles by just adding the prefix apigw.