d5d6c3d3cf
Motivation: When Maven does not run in batch mode, it will continuously print its progress as it downloads dependencies. This can produce a very large amount of log output, that makes it harder to debug build failures. Modification: Make all Maven builds run in batch mode by adding the `-B` command line flag, and have transfer progress suppressed with the `-ntp` flag. Some builds were already running batch mode but had the flag in a different location – these have had their `-B` flag moved so all builds are consistent. Result: Much less output in our build logs where Maven is just downloading stuff.
68 lines
2.2 KiB
YAML
68 lines
2.2 KiB
YAML
version: "3"
|
|
|
|
services:
|
|
|
|
runtime-setup:
|
|
image: netty:default
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.centos6
|
|
|
|
common: &common
|
|
image: netty:default
|
|
depends_on: [runtime-setup]
|
|
environment:
|
|
- GPG_KEYNAME
|
|
- GPG_PASSPHRASE
|
|
- GPG_PRIVATE_KEY
|
|
- MAVEN_OPTS
|
|
volumes:
|
|
- ~/.ssh:/root/.ssh
|
|
- ~/.gnupg:/root/.gnupg
|
|
- ~/.m2:/root/.m2
|
|
- ..:/code
|
|
working_dir: /code
|
|
|
|
build-leak:
|
|
<<: *common
|
|
command: /bin/bash -cl "./mvnw -B -ntp -Pleak clean install -Dio.netty.testsuite.badHost=netty.io -Dtcnative.classifier=linux-x86_64-fedora"
|
|
|
|
build:
|
|
<<: *common
|
|
command: /bin/bash -cl "./mvnw -B -ntp clean install -Dio.netty.testsuite.badHost=netty.io -Dtcnative.classifier=linux-x86_64-fedora"
|
|
|
|
deploy:
|
|
<<: *common
|
|
command: /bin/bash -cl "./mvnw -B -ntp clean deploy -DskipTests=true"
|
|
|
|
stage-snapshot:
|
|
<<: *common
|
|
volumes:
|
|
- ~/.ssh:/root/.ssh
|
|
- ~/.gnupg:/root/.gnupg
|
|
- ~/.m2:/root/.m2
|
|
- ~/local-staging:/root/local-staging
|
|
- ..:/code
|
|
command: /bin/bash -cl "./mvnw -B -ntp clean package org.sonatype.plugins:nexus-staging-maven-plugin:deploy -DaltStagingDirectory=/root/local-staging -DskipRemoteStaging=true -DskipTests=true"
|
|
|
|
stage-release:
|
|
<<: *common
|
|
volumes:
|
|
- ~/.ssh:/root/.ssh
|
|
- ~/.m2:/root/.m2
|
|
- ~/local-staging:/root/local-staging
|
|
- ..:/code
|
|
command: /bin/bash -cl "cat <(echo -e \"${GPG_PRIVATE_KEY}\") | gpg --batch --import && ./mvnw -B -ntp clean javadoc:jar package gpg:sign org.sonatype.plugins:nexus-staging-maven-plugin:deploy -DnexusUrl=https://oss.sonatype.org -DserverId=sonatype-nexus-staging -DaltStagingDirectory=/root/local-staging -DskipRemoteStaging=true -DskipTests=true -Dgpg.passphrase=${GPG_PASSPHRASE} -Dgpg.keyname=${GPG_KEYNAME} -Dtcnative.classifier=linux-x86_64-fedora"
|
|
|
|
build-boringssl-static:
|
|
<<: *common
|
|
command: /bin/bash -cl "./mvnw -B -ntp -Pboringssl clean install -Dio.netty.testsuite.badHost=netty.io -Dxml.skip=true"
|
|
|
|
build-leak-boringssl-static:
|
|
<<: *common
|
|
command: /bin/bash -cl "./mvnw -B -ntp -Pboringssl,leak clean install -Dio.netty.testsuite.badHost=netty.io -Dxml.skip=true"
|
|
|
|
shell:
|
|
<<: *common
|
|
entrypoint: /bin/bash
|