66 lines
3.2 KiB
Bash
Executable File
66 lines
3.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
cd "$ROOT_DIR"
|
|
|
|
env_value() {
|
|
python3 "$ROOT_DIR/scripts/env-value.py" "$ROOT_DIR/.env" "$1" "${2:-}"
|
|
}
|
|
|
|
JAVA_SOURCE_DIR="${JAVA_SOURCE_DIR:-$(env_value JAVA_SOURCE_DIR "$ROOT_DIR/sources/chatapp3-java")}"
|
|
ADMIN_SOURCE_DIR="${ADMIN_SOURCE_DIR:-$(env_value ADMIN_SOURCE_DIR "$ROOT_DIR/sources/chatapp3-admin")}"
|
|
TESTBOX_ADMIN_API_BASE_URL="${TESTBOX_ADMIN_API_BASE_URL:-$(env_value TESTBOX_ADMIN_API_BASE_URL "https://yumi-test-admin.haiyihy.com/console")}"
|
|
TESTBOX_ADMIN_OSS_URL="${TESTBOX_ADMIN_OSS_URL:-$(env_value TESTBOX_ADMIN_OSS_URL "")}"
|
|
|
|
if [ ! -d "$JAVA_SOURCE_DIR" ]; then
|
|
echo "missing JAVA_SOURCE_DIR: $JAVA_SOURCE_DIR" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ ! -d "$ADMIN_SOURCE_DIR" ]; then
|
|
echo "missing ADMIN_SOURCE_DIR: $ADMIN_SOURCE_DIR" >&2
|
|
exit 1
|
|
fi
|
|
|
|
cd "$JAVA_SOURCE_DIR"
|
|
if [ -x ./ci/install-private-maven.sh ]; then
|
|
./ci/install-private-maven.sh
|
|
fi
|
|
|
|
clean_java_service_jars() {
|
|
rm -f \
|
|
"$JAVA_SOURCE_DIR/rc-auth/target/rc-auth-"*.jar \
|
|
"$JAVA_SOURCE_DIR/rc-auth/target/rc-auth-"*.jar.original \
|
|
"$JAVA_SOURCE_DIR/rc-gateway/target/rc-gateway-"*.jar \
|
|
"$JAVA_SOURCE_DIR/rc-gateway/target/rc-gateway-"*.jar.original \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-external/external-start/target/rc-service-external-"*.jar \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-external/external-start/target/rc-service-external-"*.jar.original \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-console/console-start/target/rc-service-console-"*.jar \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-console/console-start/target/rc-service-console-"*.jar.original \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-other/other-start/target/rc-service-other-"*.jar \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-other/other-start/target/rc-service-other-"*.jar.original \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-live/live-start/target/rc-service-live-"*.jar \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-live/live-start/target/rc-service-live-"*.jar.original \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-wallet/wallet-start/target/rc-service-wallet-"*.jar \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-wallet/wallet-start/target/rc-service-wallet-"*.jar.original \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-order/order-start/target/rc-service-order-"*.jar \
|
|
"$JAVA_SOURCE_DIR/rc-service/rc-service-order/order-start/target/rc-service-order-"*.jar.original
|
|
}
|
|
|
|
clean_java_service_jars
|
|
|
|
JAVA_MODULES="rc-auth,rc-gateway,rc-service/rc-service-external/external-start,rc-service/rc-service-console/console-start,rc-service/rc-service-other/other-start,rc-service/rc-service-live/live-start,rc-service/rc-service-wallet/wallet-start,rc-service/rc-service-order/order-start"
|
|
mvn -Ptest -T 1C -pl "$JAVA_MODULES" -am -Dmaven.test.skip=true package
|
|
|
|
cd "$ROOT_DIR"
|
|
docker compose --env-file .env -f docker-compose.infra.yml -f docker-compose.apps.yml build \
|
|
auth gateway external console other live wallet order golang chatapp-cron
|
|
|
|
docker build \
|
|
-f "$ROOT_DIR/docker/chatapp3-admin.Dockerfile" \
|
|
--build-arg "ADMIN_API_BASE_URL=$TESTBOX_ADMIN_API_BASE_URL" \
|
|
--build-arg "ADMIN_OSS_URL=$TESTBOX_ADMIN_OSS_URL" \
|
|
-t chatapp-test/admin:testbox \
|
|
"$ADMIN_SOURCE_DIR"
|