1version: 0.2 2#this buildspec assumes the aws-common-runtime/ubuntu-16.04 image 3# This job is responsible for artifacting the JAR which will have all of the other shared libs stuffed 4# into it once all platforms are built and artifacted 5phases: 6 install: 7 commands: 8 - sudo add-apt-repository ppa:openjdk-r/ppa 9 - sudo apt-get update -y 10 - sudo apt-get install openjdk-8-jdk-headless maven -y -f 11 12 pre_build: 13 commands: 14 - cd $CODEBUILD_SRC_DIR/aws-crt-java 15 - export PKG_VERSION=$(git describe --tags | cut -f2 -dv) 16 - echo PKG_VERSION=$PKG_VERSION 17 # install settings.xml to ~/.m2/settings.xml 18 - mkdir -p $HOME/.m2 19 - aws s3 cp s3://code-sharing-aws-crt/aws-crt-java.settings.xml $HOME/.m2/settings.xml 20 # import gpg key 21 - aws s3 cp s3://code-sharing-aws-crt/aws-sdk-common-runtime.key.asc /tmp/aws-sdk-common-runtime.key.asc 22 - gpg --import /tmp/aws-sdk-common-runtime.key.asc 23 - export GPG_PASSPHRASE=$(aws --query "SecretString" secretsmanager get-secret-value --secret-id aws-sdk-common-runtime.key.asc/password | cut -f2 -d":" | sed -e 's/[\\\"\}]//g') 24 - export REPOSITORY_ID=$(cat $CODEBUILD_SRC_DIR_aws_crt/repositoryId.txt) 25 - export ANDROID_REPOSITORY_ID=$(cat $CODEBUILD_SRC_DIR_aws_crt/android_repositoryId.txt) 26 - export ST_PASSWORD=$(aws --query "SecretString" secretsmanager get-secret-value --secret-id Sonatype/JIRA/Password | cut -f2 -d":" | sed -e 's/[\\\"\}]//g') 27 # Use the password from secret manager to update the settings 28 - sed -i 's/password-to-replace/'"$ST_PASSWORD"'/g' $HOME/.m2/settings.xml 29 build: 30 commands: 31 - cd $CODEBUILD_SRC_DIR/aws-crt-java 32 # Trigger the release of the last staged package in the staging repository 33 - mvn -B nexus-staging:release -Prelease -DstagingRepositoryId=$REPOSITORY_ID 34 - mvn -B nexus-staging:release -Prelease -DstagingRepositoryId=$ANDROID_REPOSITORY_ID 35 post_build: 36 commands: 37 38cache: 39 paths: 40 - "/root/.m2/**/*" 41