xref: /aosp_15_r20/external/aws-crt-java/codebuild/cd/musl-linux-build.sh (revision 3c7ae9de214676c52d19f01067dc1a404272dc11)
1#!/usr/bin/env bash
2
3set -ex
4
5IMAGE_NAME=$1
6shift
7CLASSIFIER=$1
8shift
9
10# Pry the builder version this CRT is using out of ci.yml
11BUILDER_VERSION=$(cat .github/workflows/ci.yml | grep 'BUILDER_VERSION:' | sed 's/\s*BUILDER_VERSION:\s*\(.*\)/\1/')
12echo "Using builder version ${BUILDER_VERSION}"
13
14aws ecr get-login-password | docker login 123124136734.dkr.ecr.us-east-1.amazonaws.com -u AWS --password-stdin
15export DOCKER_IMAGE=123124136734.dkr.ecr.us-east-1.amazonaws.com/${IMAGE_NAME}:${BUILDER_VERSION}
16export QEMU_IMAGE=123124136734.dkr.ecr.us-east-1.amazonaws.com/multiarch-qemu-user-static:latest
17docker run --rm --privileged ${QEMU_IMAGE} --reset -p yes
18
19
20export CRT_CLASSIFIER=${CLASSIFIER}
21export BRANCH_TAG=$(git describe --tags)
22docker run --mount type=bind,src=$(pwd),dst=/root/aws-crt-java --env AWS_ACCESS_KEY_ID --env AWS_SECRET_ACCESS_KEY --env AWS_DEFAULT_REGION --env CXXFLAGS --env AWS_CRT_ARCH --env CRT_CLASSIFIER $DOCKER_IMAGE --version=${BUILDER_VERSION} build -p aws-crt-java --branch ${BRANCH_TAG} run_tests=false
23docker container prune -f
24
25# Upload the artifacts to S3
26export GIT_TAG=$(git describe --tags)
27
28aws s3 cp --recursive --include "*.so" target/cmake-build/lib s3://aws-crt-java-pipeline/${GIT_TAG}/lib
29aws s3 cp target/ s3://aws-crt-java-pipeline/${GIT_TAG}/jar/ --recursive --exclude "*" --include "aws-crt*.jar"
30