Você não pode selecionar mais de 25 tópicos
Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
|
- #!/usr/bin/env bash
- set -Eeuo pipefail
-
- # 在我方受控构建机生成一次性的 shunfeng runtime 引导包,不包含业务镜像和源码。
-
- SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
- ISOLATED_DIR="$(cd "$SCRIPT_DIR/../.." && pwd)"
- EMP_ROOT="${EMP_ROOT:-}"
- DIST_DIR="${DIST_DIR:-$ISOLATED_DIR/dist}"
- COS_UPLOAD="${COS_UPLOAD:-0}"
- BUILD_TIME="${BUILD_TIME:-$(date '+%Y%m%d%H%M%S')}"
- PACKAGE_NAME="${PACKAGE_NAME:-emp-shunfeng-runtime-bootstrap-$BUILD_TIME}"
- PACKAGE_DIR="$DIST_DIR/$PACKAGE_NAME"
- PACKAGE_ARCHIVE="$DIST_DIR/$PACKAGE_NAME.tar.gz"
-
- die() {
- echo "ERROR: $*" >&2
- exit 1
- }
-
- [[ -n "$EMP_ROOT" ]] || die "set EMP_ROOT to the directory containing emp_server"
- [[ -f "$EMP_ROOT/emp_server/.env.example" ]] || die "missing $EMP_ROOT/emp_server/.env.example"
- [[ ! -e "$PACKAGE_DIR" && ! -e "$PACKAGE_ARCHIVE" ]] || die "package output already exists: $PACKAGE_NAME"
-
- mkdir -p "$PACKAGE_DIR"
- cp "$SCRIPT_DIR/docker-compose.yml" "$PACKAGE_DIR/docker-compose.yml"
- cp "$SCRIPT_DIR/release.env.example" "$PACKAGE_DIR/release.env.example"
- cp "$SCRIPT_DIR/install-runtime.sh" "$PACKAGE_DIR/install-runtime.sh"
- cp "$SCRIPT_DIR/README.md" "$PACKAGE_DIR/README.md"
- cp "$ISOLATED_DIR/deploy-from-url.sh" "$PACKAGE_DIR/deploy-from-url.sh"
- cp "$EMP_ROOT/emp_server/.env.example" "$PACKAGE_DIR/.env.example"
- chmod +x "$PACKAGE_DIR/install-runtime.sh" "$PACKAGE_DIR/deploy-from-url.sh"
-
- mkdir -p "$DIST_DIR"
- tar -czf "$PACKAGE_ARCHIVE" -C "$DIST_DIR" "$PACKAGE_NAME"
-
- echo "Runtime bootstrap package: $PACKAGE_ARCHIVE"
- if command -v sha256sum >/dev/null 2>&1; then
- sha256sum "$PACKAGE_ARCHIVE"
- fi
-
- if [[ "$COS_UPLOAD" == "1" ]]; then
- DEPLOY_ENV=emp-shunfeng \
- PACKAGE_KIND=bootstrap \
- TARGET_DEPLOY_HOME=/home/emp-shunfeng \
- bash "$ISOLATED_DIR/publish-cos.sh" "$PACKAGE_ARCHIVE"
- fi
|