From 7331e53a09715d293922120a40cace1aa4193ade Mon Sep 17 00:00:00 2001 From: Bryan Moffatt Date: Sat, 13 Aug 2022 07:48:01 +0000 Subject: [PATCH 1/4] Add AWS CodeBuild workflow and Dockerfile for ArchLinux --- ci/codebuild/arch-linux.yml | 9 +++++++++ ci/docker/arch-linux | 17 +++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 ci/codebuild/arch-linux.yml create mode 100644 ci/docker/arch-linux diff --git a/ci/codebuild/arch-linux.yml b/ci/codebuild/arch-linux.yml new file mode 100644 index 0000000..4262f50 --- /dev/null +++ b/ci/codebuild/arch-linux.yml @@ -0,0 +1,9 @@ +version: 0.2 +# This uses the docker image specified in ci/docker/arch-linux +phases: + build: + commands: + - echo Build started on `date` + - ./ci/codebuild/build.sh -DTEST_RESOURCE_PREFIX=lambda-cpp-archbtw + - ./ci/codebuild/run-tests.sh aws-lambda-package-lambda-test-fun + - echo Build completed on `date` diff --git a/ci/docker/arch-linux b/ci/docker/arch-linux new file mode 100644 index 0000000..af881fb --- /dev/null +++ b/ci/docker/arch-linux @@ -0,0 +1,17 @@ +FROM public.ecr.aws/docker/library/archlinux:latest + +RUN pacman -Sy --noconfirm git +RUN git clone --recurse-submodules https://github.com/aws/aws-sdk-cpp.git +RUN pacman -Sy --noconfirm \ + cmake \ + ninja \ + clang \ + curl \ + zip + +RUN CC=/usr/bin/clang CXX=/usr/bin/clang++ cmake -Saws-sdk-cpp -Baws-sdk-cpp/build -GNinja \ + -DBUILD_ONLY=lambda \ + -DUSE_OPENSSL=OFF \ + -DENABLE_TESTING=OFF +RUN cmake --build aws-sdk-cpp/build -t install + From a4356a187bb85eea0e201b8015446268ed36dfb4 Mon Sep 17 00:00:00 2001 From: Bryan Moffatt Date: Mon, 22 Aug 2022 19:02:42 -0700 Subject: [PATCH 2/4] Empty commit From ddb8fef92a0b439c44366a0b8d09d9860e785d2b Mon Sep 17 00:00:00 2001 From: Bryan Moffatt Date: Mon, 22 Aug 2022 21:17:02 -0700 Subject: [PATCH 3/4] git checkout origin/ci-files-refactor ci/codebuild/build.sh --- ci/codebuild/build.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ci/codebuild/build.sh b/ci/codebuild/build.sh index 53a9544..8a90d30 100755 --- a/ci/codebuild/build.sh +++ b/ci/codebuild/build.sh @@ -6,6 +6,10 @@ set -euo pipefail cd $CODEBUILD_SRC_DIR mkdir build cd build -cmake .. -GNinja -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/install $@ +cmake .. -GNinja \ + -DBUILD_SHARED_LIBS=ON \ + -DCMAKE_BUILD_TYPE=Debug \ + -DENABLE_TESTS=ON \ + -DCMAKE_INSTALL_PREFIX=/install $@ ninja ninja install From 897ab60899df6cc4cb296e37b491fb885f6e2b0c Mon Sep 17 00:00:00 2001 From: Bryan Moffatt Date: Tue, 23 Aug 2022 00:48:24 -0700 Subject: [PATCH 4/4] added a note about -DUSE_OPENSSL=OFF --- ci/docker/arch-linux | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ci/docker/arch-linux b/ci/docker/arch-linux index af881fb..dce1a50 100644 --- a/ci/docker/arch-linux +++ b/ci/docker/arch-linux @@ -8,7 +8,12 @@ RUN pacman -Sy --noconfirm \ clang \ curl \ zip + +# Note: (2022-08-23) +# Using -DUSE_OPENSSL=OFF as a workaround to an AWS SDK dependency issue with this distro. +# The current SDK version has a dependency on a static build version of openssl, not available through pacman. +# ref: https://github.com/aws/aws-sdk-cpp/issues/1910 RUN CC=/usr/bin/clang CXX=/usr/bin/clang++ cmake -Saws-sdk-cpp -Baws-sdk-cpp/build -GNinja \ -DBUILD_ONLY=lambda \ -DUSE_OPENSSL=OFF \