commit f7f70862a79cd27ecccca4545ddf6cd595082a56
parent c9140a1186d42e68d64f0a7f7af62e17b176421a
Author: Iván Ávalos <avalos@disroot.org>
Date: Wed, 5 Jun 2024 11:37:13 -0600
Add initial Buildbot pipeline
Diffstat:
8 files changed, 68 insertions(+), 0 deletions(-)
diff --git a/contrib/ci/Containerfile b/contrib/ci/Containerfile
@@ -0,0 +1,5 @@
+FROM briar/ci-image-android:latest
+
+ENV JAVA_HOME /usr/lib/jvm/java-17-openjdk-amd64
+
+WORKDIR /workdir
diff --git a/contrib/ci/ci.sh b/contrib/ci/ci.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+set -exvuo pipefail
+
+# Use podman, fails if it isn't found in PATH
+OCI_RUNTIME=$(which podman)
+REPO_NAME=$(basename "${PWD}")
+JOB_NAME="${1}"
+JOB_CONTAINER=$((grep CONTAINER_NAME contrib/ci/jobs/${JOB_NAME}/config.ini | cut -d' ' -f 3) || echo "localhost/${REPO_NAME}")
+JOB_ARCH=$((grep CONTAINER_ARCH contrib/ci/jobs/${JOB_NAME}/config.ini | cut -d' ' -f 3) || echo "${2:-amd64}")
+CONTAINER_BUILD=$((grep CONTAINER_BUILD contrib/ci/jobs/${JOB_NAME}/config.ini | cut -d' ' -f 3) || echo "True")
+
+echo "${JOB_CONTAINER}"
+
+if [ "${CONTAINER_BUILD}" = "True" ] ; then
+ "${OCI_RUNTIME}" build \
+ --arch "${JOB_ARCH}" \
+ -t "${JOB_CONTAINER}" \
+ -f contrib/ci/Containerfile .
+fi
+
+"${OCI_RUNTIME}" run \
+ --rm \
+ -ti \
+ --arch "${JOB_ARCH}" \
+ --env CI_COMMIT_REF="$(git rev-parse HEAD)" \
+ --volume "${PWD}":/workdir \
+ --workdir /workdir \
+ "${JOB_CONTAINER}" \
+ contrib/ci/jobs/"${JOB_NAME}"/job.sh
+
+top_dir=$(dirname "${BASH_SOURCE[0]}")
+
+#"${top_dir}"/build.sh
diff --git a/contrib/ci/jobs/0-wallet-test/job.sh b/contrib/ci/jobs/0-wallet-test/job.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+set -exuo pipefail
+
+job_dir=$(dirname "${BASH_SOURCE[0]}")
+
+"${job_dir}"/test.sh
diff --git a/contrib/ci/jobs/0-wallet-test/test.sh b/contrib/ci/jobs/0-wallet-test/test.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+set -exuo pipefail
+
+./gradlew :wallet:check :wallet:assembleRelease
diff --git a/contrib/ci/jobs/1-cashier-test/job.sh b/contrib/ci/jobs/1-cashier-test/job.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+set -exuo pipefail
+
+job_dir=$(dirname "${BASH_SOURCE[0]}")
+
+"${job_dir}"/test.sh
diff --git a/contrib/ci/jobs/1-cashier-test/test.sh b/contrib/ci/jobs/1-cashier-test/test.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+set -exuo pipefail
+
+./gradlew :cashier:check :cashier:assembleRelease
diff --git a/contrib/ci/jobs/2-merchant-terminal-test/job.sh b/contrib/ci/jobs/2-merchant-terminal-test/job.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+set -exuo pipefail
+
+job_dir=$(dirname "${BASH_SOURCE[0]}")
+
+"${job_dir}"/test.sh
diff --git a/contrib/ci/jobs/2-merchant-terminal-test/test.sh b/contrib/ci/jobs/2-merchant-terminal-test/test.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+set -exuo pipefail
+
+./gradlew :merchant-terminal:check :merchant-terminal:assembleRelease