xref: /aosp_15_r20/external/aws-crt-java/codebuild/cd/musl-linux-build.sh (revision 3c7ae9de214676c52d19f01067dc1a404272dc11)
1*3c7ae9deSAndroid Build Coastguard Worker#!/usr/bin/env bash
2*3c7ae9deSAndroid Build Coastguard Worker
3*3c7ae9deSAndroid Build Coastguard Workerset -ex
4*3c7ae9deSAndroid Build Coastguard Worker
5*3c7ae9deSAndroid Build Coastguard WorkerIMAGE_NAME=$1
6*3c7ae9deSAndroid Build Coastguard Workershift
7*3c7ae9deSAndroid Build Coastguard WorkerCLASSIFIER=$1
8*3c7ae9deSAndroid Build Coastguard Workershift
9*3c7ae9deSAndroid Build Coastguard Worker
10*3c7ae9deSAndroid Build Coastguard Worker# Pry the builder version this CRT is using out of ci.yml
11*3c7ae9deSAndroid Build Coastguard WorkerBUILDER_VERSION=$(cat .github/workflows/ci.yml | grep 'BUILDER_VERSION:' | sed 's/\s*BUILDER_VERSION:\s*\(.*\)/\1/')
12*3c7ae9deSAndroid Build Coastguard Workerecho "Using builder version ${BUILDER_VERSION}"
13*3c7ae9deSAndroid Build Coastguard Worker
14*3c7ae9deSAndroid Build Coastguard Workeraws ecr get-login-password | docker login 123124136734.dkr.ecr.us-east-1.amazonaws.com -u AWS --password-stdin
15*3c7ae9deSAndroid Build Coastguard Workerexport DOCKER_IMAGE=123124136734.dkr.ecr.us-east-1.amazonaws.com/${IMAGE_NAME}:${BUILDER_VERSION}
16*3c7ae9deSAndroid Build Coastguard Workerexport QEMU_IMAGE=123124136734.dkr.ecr.us-east-1.amazonaws.com/multiarch-qemu-user-static:latest
17*3c7ae9deSAndroid Build Coastguard Workerdocker run --rm --privileged ${QEMU_IMAGE} --reset -p yes
18*3c7ae9deSAndroid Build Coastguard Worker
19*3c7ae9deSAndroid Build Coastguard Worker
20*3c7ae9deSAndroid Build Coastguard Workerexport CRT_CLASSIFIER=${CLASSIFIER}
21*3c7ae9deSAndroid Build Coastguard Workerexport BRANCH_TAG=$(git describe --tags)
22*3c7ae9deSAndroid Build Coastguard Workerdocker 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
23*3c7ae9deSAndroid Build Coastguard Workerdocker container prune -f
24*3c7ae9deSAndroid Build Coastguard Worker
25*3c7ae9deSAndroid Build Coastguard Worker# Upload the artifacts to S3
26*3c7ae9deSAndroid Build Coastguard Workerexport GIT_TAG=$(git describe --tags)
27*3c7ae9deSAndroid Build Coastguard Worker
28*3c7ae9deSAndroid Build Coastguard Workeraws s3 cp --recursive --include "*.so" target/cmake-build/lib s3://aws-crt-java-pipeline/${GIT_TAG}/lib
29*3c7ae9deSAndroid Build Coastguard Workeraws s3 cp target/ s3://aws-crt-java-pipeline/${GIT_TAG}/jar/ --recursive --exclude "*" --include "aws-crt*.jar"
30