Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sebhoss/maven-build-process
DEPRECATED -> https://github.com/metio/maven-build-process
https://github.com/sebhoss/maven-build-process
continuous-delivery continuous-deployment maven
Last synced: about 1 month ago
JSON representation
DEPRECATED -> https://github.com/metio/maven-build-process
- Host: GitHub
- URL: https://github.com/sebhoss/maven-build-process
- Owner: sebhoss
- License: cc0-1.0
- Archived: true
- Created: 2016-05-05T16:51:38.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2017-12-03T18:29:47.000Z (almost 7 years ago)
- Last Synced: 2023-07-28T09:32:13.580Z (over 1 year ago)
- Topics: continuous-delivery, continuous-deployment, maven
- Language: Makefile
- Homepage:
- Size: 237 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.asciidoc
- License: LICENSE
Awesome Lists containing this project
README
= Maven Build Process image:https://img.shields.io/badge/email-%40metio-brightgreen.svg?style=social&label=mail["Discuss on Google Groups", link="https://groups.google.com/forum/#!forum/metio"] image:https://img.shields.io/badge/irc-%23metio.wtf-brightgreen.svg?style=social&label=IRC["Chat on IRC", link="http://webchat.freenode.net/?channels=metio.wtf"]
Sebastian Hoß
:github-org: sebhoss
:project-name: maven-build-process
:project-group: de.xn--ho-hia.maven++++
++++Bunch of POMs that help setting up a link:http://maven.apache.org/[Maven] based build process.
== Usage
=== Maven Parent
Inherit from one of the parents like this:
[source, xml]
----
de.xn--ho-hia.maven.parents
maven-parents-java-prototype
${version.parent}
de.xn--ho-hia.maven.parents
maven-parents-java-stable
${version.parent}
----Specify SCM, Issue Management, CI Management, and Distribution Management sections of your POM in case you want to deploy into link:http://search.maven.org/[Maven Central].
=== Docker Build Environment
The build environment can be used together with docker-compose like this:
[source, yaml]
----
version: '2'
services:
verify-project:
image: sebhoss/maven-build-environment:latest
container_name: my-verifier
volumes:
- "./:/project"
working_dir: /workspace
command: bash -c "cp -af /project/. . && mvn clean verify -s /config/local-nexus-mirror.xml -Dmaven.repo.local=/repository"
networks:
- nexus
networks:
nexus:
external:
name: nexus_default
----Execute this by calling `docker-compose run --rm verify-project`. Executing builds directly inside the `/project` directory will most likely cause a permission problem on the host system. Therefore the above `docker-compose.yml` file copies the project source into the `/workspace` directory first. The `--rm` option makes sure that everything gets cleaned up nicely once execution is finished. Specify a *container_name* in case you want to easily reference the running container. The container includes two predefined Maven settings files:
* /config/google-mirror.xml (https://maven-central.storage.googleapis.com)
* /config/local-nexus-mirror.xml (http://local-nexus:8081/content/groups/public/)Use them together with docker networks like in the above example to run your builds against different Maven repositories. The local `/repository` directory already includes _some_ artifacts. Re-use it in order to cut down on build time.
== License
To the extent possible under law, the author(s) have dedicated all copyright
and related and neighboring rights to this software to the public domain
worldwide. This software is distributed without any warranty.You should have received a copy of the CC0 Public Domain Dedication along
with this software. If not, see http://creativecommons.org/publicdomain/zero/1.0/.== Mirrors
* https://github.com/sebhoss/{project-name}
* https://bitbucket.org/sebhoss/{project-name}
* https://gitlab.com/sebastian.hoss/{project-name}
* http://v2.pikacode.com/sebhoss/{project-name}
* http://repo.or.cz/{project-name}.git