An open API service indexing awesome lists of open source software.

https://github.com/vpro/maven

Docker image with maven and some other utilities which may be used during builds @vpro
https://github.com/vpro/maven

Last synced: 5 months ago
JSON representation

Docker image with maven and some other utilities which may be used during builds @vpro

Awesome Lists containing this project

README

          

= maven docker image

Dedicated Maven Docker images which provides additional file resources needed.

== Description

A specialization of https://hub.docker.com/_/maven/[`maven:3.9-eclipse-temurin-25(-alpine)`] providing also

- openshift cli (oc)
- yq (lightweight yaml processor)
- ssh
- ssh agent
- some extra scripts.

== Versions and history

Since version 34 also an 'alpine' version is build, which is smaller.

Also since 34, the java version is 25 because that is LTS now.

== Used by

=== Api functional tests
Tests are using it (they can use oc to port forward for JMX access)

=== YQ
YQ is s json parser, which can be used in some scripts.

=== Maven Release
Image specifically created to perform a maven release. For this you need the ability to check out a branch (not detached head) and preform release commit using a private ssh key.

When running it expects an GITLAB_RUNNER_PRIVATE_KEY argument containing the private key to use for git checkout and pushing of commits:

[source, bash]
----
docker run -it \
--env "GITLAB_RUNNER_PRIVATE_KEY=$(cat ~/.ssh/id_rsa)" \
ghcr.io/vpro/maven:latest \
/bin/bash -c "git clone git@gitlab.com/npo-identity/poms/poms-maven.git && cd maven-release && mvn release:prepare release:perform"
----

== github actions

For github actions we don't use this maven image.

The 'after maven' script is useful though, and this was wrapped
in https://github.com/marketplace/actions/after-maven