#!/usr/bin/env bash # 平台无关 CI 校验脚本(T-M0-03)。 # 任何 CI 平台(GitHub Actions / GitLab CI / 本地)均可调用,前提是环境已装 # DevEco SDK 与 devecocli(PATH 可访问),并已配置好工程依赖。 # # 用法: # bash scripts/ci.sh # debug 构建校验(默认) # bash scripts/ci.sh --release # release 构建校验(需已配 release 签名) # # 退出码非 0 表示校验失败,可直接作为 CI gate。 set -euo pipefail ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" cd "$ROOT" MODE="debug" if [ "${1:-}" = "--release" ]; then MODE="release" fi echo "==> [CI] 多模块构建校验:devecocli build --build-mode ${MODE}" devecocli build --build-mode "${MODE}" # 单元测试 + 覆盖率(本地单测)。devecocli 无 test 子命令,故经 DevEco hvigorw(见 test.sh)。 # 需 DevEco 环境;CI runner 无 DevEco 时设 SKIP_TESTS=1 跳过。 if [ "${SKIP_TESTS:-0}" != "1" ]; then echo "==> [CI] 单元测试 + 覆盖率" bash "${ROOT}/scripts/test.sh" fi echo "==> [CI] 校验通过 (${MODE})"