Jenkins

Jenkins shared libraries: tested

Jenkins is a very neat tool to implement a continuous delivery process, mainly due to its flexibility. Sometimes it can be hard though to keep complexity low, and when that happens, (automated) tests become far more important. Jenkins should in fact be running tests that verify the scripts running tests, proving they actually work. Warning: this dog will chase its … Lees verder Jenkins shared libraries: tested

Strangling pipelines

Strangling pipelines This practical example is about the strangulation pattern, as explained by Martin Fowler here, applied to pipelines.   The situation Right after ditching the old manually managed Jenkins jobs, we were left with ‘simple’ but very lengthy procedural pipeline scripts. These scripts were then duplicated and slightly modified for each type of pipeline (because there’s always need for … Lees verder Strangling pipelines

Grails multi tenant databases – update for 3.2

Multi-tenant Grails revisited: update to Grails 3.2 Before reading any of this, please know that a full article was published recently about multi tenancy with Grails 3.1. The key of multi tenancy is that the data handled should ‘stick‘ to a certain tenant, primarily used for white label product situations, or storage divided by region because of its size. One … Lees verder Grails multi tenant databases – update for 3.2

Grails 3.1 multi tenant databases

Grails and databases, easy right? Having Grails and GORM makes a programmers life really easy when a simple database is your target storage. Grails generates a bunch of things for you, the conventions allow for almost zero configuration and presto: there’s your working application running on spring boot. Things change though when you need to, for instance, white-label your application. … Lees verder Grails 3.1 multi tenant databases

Eclipse Neon: Grails 2.x with Groovy and GSP Support

What if you want to develop Grails 2 projects with Eclipse Neon (4.6) as easy as you did with Groovy/Grails Tool Suite? Written and tested with Eclipse Neon and Grails 2.3, 2.4 and 2.5. Disclaimer: this post is a complete copy of my awesome colleague Ted Vinke’s post about eclipse Mars of last year! Actually, this is of course only … Lees verder Eclipse Neon: Grails 2.x with Groovy and GSP Support

Why Grails logs package names in different ways

I just realized something that had me puzzled for some time. For some reason, Grails logging for a specific component or class stopped or started ‘working’ at some point in time. I never got around to looking into it much, though the idea of not knowing why this happened was uncomfortable. TLDR: Not all loggers are created equal Grails’ implicit … Lees verder Why Grails logs package names in different ways

Native code interop with JNA

In enterprise situations you will often find a mashup of polyglot systems, many systems and many languages working together. The glue that commonly binds different systems are databases. You can imagine though, that going through the database, using a network connection, is not always always suitable. In many cases a simple local in-process call offers the necessary performance gains. For … Lees verder Native code interop with JNA

Fix CacheManager with same name grails-cache-ehcache

[box type=”shadow”]Or: “getting parallel deployment to work when using EhCache”[/box] Caching During our regular Grails development work, we apply both Hibernate with second level caching and Spring method level caching. They both use EhCache by default. This seems to be the only mature implementation choice for the Grails platform. All this used to work fine (so we thought) until we … Lees verder Fix CacheManager with same name grails-cache-ehcache