Skip to content

Instantly share code, notes, and snippets.

View jprinet's full-sized avatar

Jérôme Prinet jprinet

  • Bayonne, France
  • 11:27 (UTC +02:00)
View GitHub Profile
@jprinet
jprinet / Dockerfile
Created June 18, 2025 11:19
Dockerfile custom GitLab runner
FROM bellsoft/liberica-openjdk-alpine:21
RUN apk add maven
ENV MAVEN_HOME=/usr/share/java/maven-3
# Collect convention extension from binary manager
#RUN mkdir -p $MAVEN_HOME/lib/ext
#ADD https://my-repo-hostname/repo/com/myorg/1.0/develocity-convention-extension-1.0.jar $MAVEN_HOME/lib/ext
@jprinet
jprinet / ConventionDevelocityListener.java
Last active June 18, 2025 13:26
Conditioned Develocity injection
package com.myorg;
import com.gradle.develocity.agent.maven.api.DevelocityApi;
import com.gradle.develocity.agent.maven.api.DevelocityListener;
import com.gradle.develocity.agent.maven.api.cache.BuildCacheApi;
import com.gradle.develocity.agent.maven.api.scan.BuildScanApi;
import org.apache.maven.execution.MavenSession;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@jprinet
jprinet / collect-users.sh
Created June 5, 2025 13:01
Collect DV users
#!/bin/bash
# Parse CLI arguments
if [[ $# -lt 3 ]]; then
echo "Usage: $0 <develocity_url> <access_key> <yyyy-mm>"
exit 1
fi
# Init parameters
readonly develocityUrl=$1
@jprinet
jprinet / collect-git-repository-urls.sh
Created June 5, 2025 08:50
Collect git repository URLs having non readcted usernames
#!/bin/bash
# Parse CLI arguments
if [[ $# -lt 3 ]]; then
echo "Usage: $0 <develocity_url> <access_key> <yyyy-mm>"
exit 1
fi
# Init parameters
readonly develocityUrl=$1
@jprinet
jprinet / build.gradle.kts
Last active January 30, 2025 17:08
Docker image ids as test inputs
tasks.named("e2eTest") {
val dockerImageIdsProvider = providers.provider {
val dockerImageIds = mutableMapOf<String,String>()
layout.projectDirectory.file("src/test/resources/docker-images.txt").asFile.forEachLine { dockerImageName ->
val dockerImageId = providers.exec {
commandLine("docker", "images", dockerImageName, "--format", "{{.ID}}")
}.standardOutput.asText.getOrElse("not-found-${UUID.randomUUID()}")
logger.info("Adding input $dockerImageName=$dockerImageId")
dockerImageIds.put(dockerImageName,dockerImageId)
}
@jprinet
jprinet / collect-monthly-kpi.sh
Last active January 21, 2025 11:42
Collect Build Scan publication monthly metrics
#!/bin/bash
# Parse CLI arguments
if [[ $# -lt 3 ]]; then
echo "Usage: $0 <develocity_url> <access_key> <yyyy-mm>"
exit 1
fi
# Init parameters
readonly develocityUrl=$1
@jprinet
jprinet / pom.xml
Created August 14, 2024 15:01
Configure Quarkus properties in profiles
<profiles>
<profile>
<id>local</id>
<activation>
</activation>
<properties>
<develocity.quarkus.dump.config.suffix>config-check-local</develocity.quarkus.dump.config.suffix>
</properties>
</profile>
@jprinet
jprinet / pom.xml
Created August 14, 2024 12:17
Configure quarkus-maven-plugin
<plugin>
<groupId>${quarkus.platform.group-id}</groupId>
<artifactId>quarkus-maven-plugin</artifactId>
<version>${quarkus.platform.version}</version>
<extensions>true</extensions>
<executions>
<execution>
<id>track-prod-config-changes</id>
<phase>process-resources</phase>
<goals>
@jprinet
jprinet / pom.xml
Created August 14, 2024 12:16
Enable Quarkus configuration tracking
<properties>
<quarkus.config-tracking.enabled>true</quarkus.config-tracking.enabled>
</properties>
@jprinet
jprinet / extensions.xml
Last active August 22, 2024 09:28
Quarkus build caching extension configuration
<extensions>
<extension>
<groupId>com.gradle</groupId>
<artifactId>develocity-maven-extension</artifactId>
<version>1.22</version>
</extension>
<extension>
<groupId>com.gradle</groupId>
<artifactId>quarkus-build-caching-extension</artifactId>
<version>1.8</version>