dev_1.0.0_yuyr_2:重新提交 PR,增加 master/agent 以及系统集成测试 #17
@ -21,6 +21,7 @@ EOF
|
|||||||
}
|
}
|
||||||
|
|
||||||
use_intranet=false
|
use_intranet=false
|
||||||
|
build_master=true
|
||||||
build_master_offline=false
|
build_master_offline=false
|
||||||
|
|
||||||
while [[ $# -gt 0 ]]; do
|
while [[ $# -gt 0 ]]; do
|
||||||
@ -29,7 +30,12 @@ while [[ $# -gt 0 ]]; do
|
|||||||
use_intranet=true
|
use_intranet=true
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
--master)
|
||||||
|
build_master=true
|
||||||
|
shift
|
||||||
|
;;
|
||||||
--master-offline)
|
--master-offline)
|
||||||
|
build_master=true
|
||||||
build_master_offline=true
|
build_master_offline=true
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
@ -142,11 +148,23 @@ fi
|
|||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
if [[ "$build_master_offline" == true ]]; then
|
if [[ "$build_master" == true ]]; then
|
||||||
echo "🏗️ Building master offline image"
|
echo ""
|
||||||
|
echo "🔄 Building Master image..."
|
||||||
pushd "$master_root" >/dev/null
|
pushd "$master_root" >/dev/null
|
||||||
if ./scripts/build_images.sh --offline --tag argus-master:offline; then
|
master_args=("--tag" "argus-master:latest")
|
||||||
images_built+=("argus-master:offline")
|
if [[ "$use_intranet" == true ]]; then
|
||||||
|
master_args+=("--intranet")
|
||||||
|
fi
|
||||||
|
if [[ "$build_master_offline" == true ]]; then
|
||||||
|
master_args+=("--offline")
|
||||||
|
fi
|
||||||
|
if ./scripts/build_images.sh "${master_args[@]}"; then
|
||||||
|
if [[ "$build_master_offline" == true ]]; then
|
||||||
|
images_built+=("argus-master:offline")
|
||||||
|
else
|
||||||
|
images_built+=("argus-master:latest")
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
build_failed=true
|
build_failed=true
|
||||||
fi
|
fi
|
||||||
|
@ -13,7 +13,7 @@ services:
|
|||||||
- "ARGUS_BUILD_GID=${ARGUS_BUILD_GID:-2015}"
|
- "ARGUS_BUILD_GID=${ARGUS_BUILD_GID:-2015}"
|
||||||
|
|
||||||
master:
|
master:
|
||||||
image: argus-master:dev
|
image: argus-master:latest
|
||||||
container_name: argus-master-agent-e2e
|
container_name: argus-master-agent-e2e
|
||||||
depends_on:
|
depends_on:
|
||||||
- bind
|
- bind
|
||||||
|
@ -43,7 +43,7 @@ else
|
|||||||
echo "[WARN] bind update script missing at $BIND_ROOT/build/update-dns.sh"
|
echo "[WARN] bind update script missing at $BIND_ROOT/build/update-dns.sh"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
ensure_image "argus-master:dev"
|
ensure_image "argus-master:latest"
|
||||||
ensure_image "$BIND_IMAGE_TAG"
|
ensure_image "$BIND_IMAGE_TAG"
|
||||||
|
|
||||||
AGENT_BINARY="$AGENT_ROOT/dist/argus-agent"
|
AGENT_BINARY="$AGENT_ROOT/dist/argus-agent"
|
||||||
|
@ -11,7 +11,7 @@ Argus Master 是基于 Flask + SQLite 的节点管理服务,负责:
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd src/master
|
cd src/master
|
||||||
./scripts/build_images.sh # 生成 argus-master:dev 镜像
|
./scripts/build_images.sh # 生成 argus-master:latest 镜像
|
||||||
```
|
```
|
||||||
|
|
||||||
如需离线构建,先在有网环境运行准备脚本:
|
如需离线构建,先在有网环境运行准备脚本:
|
||||||
@ -25,7 +25,7 @@ cd src/master
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd src/master
|
cd src/master
|
||||||
./scripts/build_images.sh --offline --tag argus-master:dev
|
./scripts/build_images.sh --offline --tag argus-master:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
若内网缺少 `python:3.11-slim`,请提前在外网 `docker save` 后通过离线介质 `docker load`。
|
若内网缺少 `python:3.11-slim`,请提前在外网 `docker save` 后通过离线介质 `docker load`。
|
||||||
|
@ -8,14 +8,14 @@ Usage: $0 [--intranet] [--offline] [--tag <image_tag>]
|
|||||||
Options:
|
Options:
|
||||||
--intranet 使用指定的 PyPI 镜像源(默认清华镜像)。
|
--intranet 使用指定的 PyPI 镜像源(默认清华镜像)。
|
||||||
--offline 完全离线构建,依赖 offline_wheels/ 目录中的离线依赖包。
|
--offline 完全离线构建,依赖 offline_wheels/ 目录中的离线依赖包。
|
||||||
--tag <image_tag> 自定义镜像标签,默认 argus-master:dev。
|
--tag <image_tag> 自定义镜像标签,默认 argus-master:latest。
|
||||||
USAGE
|
USAGE
|
||||||
}
|
}
|
||||||
|
|
||||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)"
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)"
|
||||||
MODULE_ROOT="$PROJECT_ROOT/src/master"
|
MODULE_ROOT="$PROJECT_ROOT/src/master"
|
||||||
IMAGE_TAG="${IMAGE_TAG:-argus-master:dev}"
|
IMAGE_TAG="${IMAGE_TAG:-argus-master:latest}"
|
||||||
DOCKERFILE="src/master/Dockerfile"
|
DOCKERFILE="src/master/Dockerfile"
|
||||||
BUILD_ARGS=()
|
BUILD_ARGS=()
|
||||||
OFFLINE_MODE=0
|
OFFLINE_MODE=0
|
||||||
|
@ -8,7 +8,7 @@ usage() {
|
|||||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
||||||
DEFAULT_OUTPUT="$PROJECT_ROOT/images/argus-master-dev.tar"
|
DEFAULT_OUTPUT="$PROJECT_ROOT/images/argus-master-dev.tar"
|
||||||
IMAGE_TAG="${IMAGE_TAG:-argus-master:dev}"
|
IMAGE_TAG="${IMAGE_TAG:-argus-master:latest}"
|
||||||
OUTPUT_PATH="$DEFAULT_OUTPUT"
|
OUTPUT_PATH="$DEFAULT_OUTPUT"
|
||||||
|
|
||||||
while [[ "$#" -gt 0 ]]; do
|
while [[ "$#" -gt 0 ]]; do
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
services:
|
services:
|
||||||
master:
|
master:
|
||||||
image: ${MASTER_IMAGE_TAG:-argus-master:dev}
|
image: ${MASTER_IMAGE_TAG:-argus-master:latest}
|
||||||
container_name: argus-master-e2e
|
container_name: argus-master-e2e
|
||||||
environment:
|
environment:
|
||||||
- OFFLINE_THRESHOLD_SECONDS=6
|
- OFFLINE_THRESHOLD_SECONDS=6
|
||||||
|
@ -17,7 +17,7 @@ SCRIPTS=(
|
|||||||
|
|
||||||
for script in "${SCRIPTS[@]}"; do
|
for script in "${SCRIPTS[@]}"; do
|
||||||
echo "[TEST] Running $script"
|
echo "[TEST] Running $script"
|
||||||
MASTER_IMAGE_TAG="${MASTER_IMAGE_TAG:-argus-master:dev}" "$SCRIPT_DIR/$script"
|
MASTER_IMAGE_TAG="${MASTER_IMAGE_TAG:-argus-master:latest}" "$SCRIPT_DIR/$script"
|
||||||
echo "[TEST] $script completed"
|
echo "[TEST] $script completed"
|
||||||
echo
|
echo
|
||||||
done
|
done
|
||||||
|
@ -44,7 +44,7 @@ fi
|
|||||||
|
|
||||||
pushd "$TEST_ROOT" >/dev/null
|
pushd "$TEST_ROOT" >/dev/null
|
||||||
compose down --remove-orphans || true
|
compose down --remove-orphans || true
|
||||||
MASTER_IMAGE_TAG="${MASTER_IMAGE_TAG:-argus-master:dev}" compose up -d
|
MASTER_IMAGE_TAG="${MASTER_IMAGE_TAG:-argus-master:latest}" compose up -d
|
||||||
popd >/dev/null
|
popd >/dev/null
|
||||||
|
|
||||||
echo "[INFO] Master container is up on http://localhost:31300"
|
echo "[INFO] Master container is up on http://localhost:31300"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user