You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
3.0 KiB
YAML
81 lines
3.0 KiB
YAML
version: "3"
|
|
|
|
services:
|
|
|
|
cross-compile-aarch64-runtime-setup:
|
|
image: netty-quic-centos:cross_compile_aarch64
|
|
build:
|
|
context: ../
|
|
dockerfile: docker/Dockerfile.cross_compile_aarch64
|
|
args:
|
|
gcc_version: "10.2-2020.11"
|
|
|
|
cross-compile-aarch64-common: &cross-compile-aarch64-common
|
|
image: netty-quic-centos:cross_compile_aarch64
|
|
depends_on: [cross-compile-aarch64-runtime-setup]
|
|
environment:
|
|
- GPG_KEYNAME
|
|
- GPG_PASSPHRASE
|
|
- GPG_PRIVATE_KEY
|
|
- MAVEN_OPTS
|
|
volumes:
|
|
- ~/.ssh:/root/.ssh:delegated
|
|
- ~/.gnupg:/root/.gnupg:delegated
|
|
- ~/.m2/repository:/root/.m2/repository
|
|
- ..:/code:delegated
|
|
working_dir: /code
|
|
|
|
cross-compile-aarch64-shell:
|
|
<<: *cross-compile-aarch64-common
|
|
volumes:
|
|
- ~/.ssh:/root/.ssh:delegated
|
|
- ~/.gnupg:/root/.gnupg:delegated
|
|
- ~/.m2:/root/.m2:delegated
|
|
- ~/.gitconfig:/root/.gitconfig:delegated
|
|
- ~/.gitignore:/root/.gitignore:delegated
|
|
- ..:/code:delegated
|
|
entrypoint: /bin/bash
|
|
|
|
cross-compile-aarch64-build:
|
|
<<: *cross-compile-aarch64-common
|
|
command: /bin/bash -cl "./mvnw -B -ntp clean package -Plinux-aarch64 -DskipTests"
|
|
|
|
cross-compile-aarch64-deploy:
|
|
<<: *cross-compile-aarch64-common
|
|
volumes:
|
|
- ~/.ssh:/root/.ssh
|
|
- ~/.gnupg:/root/.gnupg
|
|
- ~/.m2/repository:/root/.m2/repository
|
|
- ~/.m2/settings.xml:/root/.m2/settings.xml
|
|
command: /bin/bash -cl "./mvnw -B -ntp clean deploy -Plinux-aarch64 -DskipTests"
|
|
|
|
cross-compile-aarch64-stage-snapshot:
|
|
<<: *cross-compile-aarch64-common
|
|
volumes:
|
|
- ~/.ssh:/root/.ssh
|
|
- ~/.gnupg:/root/.gnupg
|
|
- ~/.m2/repository:/root/.m2/repository
|
|
- ~/.m2/settings.xml:/root/.m2/settings.xml
|
|
- ~/local-staging:/root/local-staging
|
|
- ..:/code
|
|
command: /bin/bash -cl "./mvnw -B -ntp -Plinux-aarch64 clean package org.sonatype.plugins:nexus-staging-maven-plugin:deploy -DaltStagingDirectory=/root/local-staging -DskipRemoteStaging=true -DskipTests=true"
|
|
|
|
cross-compile-aarch64-stage-release:
|
|
<<: *cross-compile-aarch64-common
|
|
volumes:
|
|
- ~/.ssh:/root/.ssh
|
|
- ~/.m2/settings.xml:/root/.m2/settings.xml
|
|
- ~/.m2/repository:/root/.m2/repository
|
|
- ~/local-staging:/root/local-staging
|
|
- ..:/code
|
|
command: /bin/bash -cl "cat <(echo -e \"${GPG_PRIVATE_KEY}\") | gpg --batch --import && ./mvnw -B -ntp -Plinux-aarch64 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}"
|
|
|
|
cross-compile-aarch64-install:
|
|
<<: *cross-compile-aarch64-common
|
|
volumes:
|
|
- ~/.ssh:/root/.ssh
|
|
- ~/.gnupg:/root/.gnupg
|
|
- ~/.m2:/root/.m2
|
|
- ..:/code
|
|
command: /bin/bash -cl "./mvnw -B -ntp clean install -Plinux-aarch64 -DskipTests=true"
|