as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
AWS
文档
Support
Contact Us
My Cases
新手入门
设计和开发
应用发布
参考
支持

将Vega SDK集成到CI管道中

将Vega SDK集成到CI管道中

本页面介绍如何将Vega SDK集成到持续集成 (CI) 管道中,包括自动安装过程和配置要求。

构建主机是指CI管道中用于构建Vega应用的计算机(虚拟机或物理机)。Vega SDK可在安装说明页面上提供安装命令,该命令能以非交互式的方式运行,无需用户输入,便于在构建主机上自动安装SDK。在安装页面上,您必须为构建主机选择相应的操作系统和架构。例如,如果您的构建主机运行的是Ubuntu 22.04,请从Operating System(操作系统)下拉列表中选择Linux (x86_64)。然后,您可以在构建主机上运行生成的命令。

先决条件

在将Vega SDK集成到CI管道中之前,请确保您的构建环境满足以下要求。请特别注意为构建主机选择正确的平台,因为选择错误的平台可能会导致安装或运行时错误。

系统要求

主机配置

  • 操作系统
    • Ubuntu 20.04或以上
      • x86_64
    • Mac OS X
      • arm64(M系列)或x86_64 (Intel)

用户要求

0.20.3106之前版本的Vega SDK

* 构建主机/CI环境中的非根用户帐户
    * 此要求适用于所有安装方法
    * 对于直接CI/CD安装,请确保以非根用户身份运行构建过程

0.20.3106及更高版本的Vega SDK

* 不再要求使用非根用户帐户
* 为CI环境设置`NONINTERACTIVE=true`

安装过程

在CI环境中安装Vega SDK时,需要特别注意。与经常进行交互式安装的开发者工作站不同,CI环境需要使用全自动的方法。以下部分将指导您完成此过程。

基本安装

  1. 安装页面上,为您的构建主机选择相应的操作系统和架构,然后复制安装命令
  2. 编辑安装命令:
    • 设置NONINTERACTIVE环境变量,以禁用可能中断自动安装的安装程序提示
    • 从中移除--sim-url标记及其值,以跳过安装Vega虚拟设备的过程
  3. 相应地配置KEPLER_SDK_PATHPATH环境变量
# 将尖括号中的值替换为安装页面中的相关值
curl -fsSL <安装程序脚本URL> | NONINTERACTIVE=true /bin/bash -- --sdk-url <SDK URL> --version <版本>

# 将 <版本> 替换为SDK版本
export KEPLER_SDK_PATH="$HOME/kepler/sdk/<版本>"
export PATH="$KEPLER_SDK_PATH/bin:$PATH"

有关其他配置选项,请参阅以下部分。

安装脚本标记

安装脚本接受以下命令行标记。

标志 描述
--sdk-url SDK下载URL。必需。 可以是http(s):// 或file://。
不接受纯文件名。值必须是有效的URL:file:///Users/somebody/sdk.sh
覆盖SDK_URL环境变量
--sim-url 虚拟设备 (VVD) 下载URL。可选 可以是http(s) 或文件。
不接受纯文件名。值必须是有效的URL:file:///Users/somebody/sim.tar.bz2
覆盖SIM_URL环境变量
--version SDK版本。必需。 语义版本 <主要>.<次要>.<补丁>
覆盖VERSION环境变量

环境变量配置

使用以下环境变量控制安装程序脚本。

变量名 有效值 默认值 描述  
DELETE_DOWNLOADS true false "true" 控制下载的SDK/模拟器文件的删除
DOWNLOAD_DIR 有效路径 $HOME/Downloads SDK/模拟器的下载位置  
DIRECTED_ID 字符串 - 匿名的客户ID  
INSECURE_DOWNLOADS true false "false" 启用不安全的curl下载
INSTALL_ROOT_DIR 有效路径 $HOME/kepler/sdk SDK安装的基本目录  
LOG_ENABLED true false "true" 启用文件日志记录
LOG_FILE 有效路径 $HOME/.kepler/logs/kepler-YYYY-MM-DD.log 日志文件位置  
NONINTERACTIVE true false "false" 启用非交互式安装
OPT_IN true false "false" 启用使用量指标收集
VERBOSE true false - 启用详细输出
OVERWRITE_PREVIOUS true false 因情况而异 控制对现有安装的覆盖
SDK_URL URL 必需: SDK下载URL  
SIM_URL URL 可选: 模拟器下载URL  
VERSION 字符串 SDK版本号  

安装目录配置

默认安装路径为$HOME/kepler/sdk/$VERSION。

要更改安装SDK版本所用的目录前缀,请在运行安装脚本时设置INSTALL_ROOT_DIR环境变量。

curl -fsSL <安装程序脚本URL> | INSTALL_ROOT_DIR=/opt/kepler /bin/bash --version <版本> --sdk-url <SDK URL>

重要注意事项

环境变量

安装后,您需要配置环境才能找到SDK工具。

设置KEPLER_SDK_PATH

export KEPLER_SDK_PATH="/path/to/kepler/sdk/version"

添加到系统路径

export PATH="$KEPLER_SDK_PATH/bin:$PATH"

示例

如果您的SDK安装位置为/home/user/kepler/sdk/0.20.3106

export KEPLER_SDK_PATH="/home/user/kepler/sdk/0.20.3106"
export PATH="$KEPLER_SDK_PATH/bin:$PATH"

验证: 要验证设置是否正确,请运行以下命令。

已复制到剪贴板。

kepler -v  

可选的VVD映像安装

从版本0.20.3106开始,用户可以选择是否安装Vega虚拟设备 (VVD) 映像,以减小SDK安装的实际大小:

  • 移除--sim-url标记即可跳过下载和安装VVD映像的过程
  • 这可以显著减少安装在CI环境中所占用的空间

VS Code插件注意事项

在CI环境中,您可以安全地忽略VS Code插件安装错误。

遥测配置

要明确启用遥测,请设置OPT_IN环境变量。

# 使用OPT_IN环境变量启用遥测。
curl -fssL <安装程序脚本URL> | OPT_IN=true /bin/bash --version <版本> --sdk-url <SDK URL>

Docker集成

Docker为使用Vega SDK构建应用提供了统一且隔离的环境。以下示例演示如何创建包含所有必要依赖项和配置的构建环境。这种方法适用于各种支持基于容器进行构建的CI解决方案。

示例Dockerfile

已复制到剪贴板。

FROM ubuntu:22.04

SHELL ["/bin/bash", "-c"]

# 需要利用cURL来获取安装程序。
RUN apt-get update && \
    apt-get install curl ca-certificates --no-install-recommends -y && \
    rm -rf /var/lib/apt/lists/*

# 安装Vega SDK
ARG INSTALLER_SCRIPT
ARG SDK_VERSION
ARG SDK_URL
ARG SDK_ROOT=/kepler
ARG SIM_URL
RUN test -n "$INSTALLER_SCRIPT" || (echo "INSTALLER_SCRIPT not set" && false)
RUN test -n "$SDK_VERSION" || (echo "SDK_VERSION not set" && false)
RUN test -n "$SDK_URL" || (echo "SDK_URL not set" && false)
RUN curl ${INSTALLER_SCRIPT} | NONINTERACTIVE=true INSTALL_ROOT_DIR=${SDK_ROOT} bash -s -- \
    --sdk-url=${SDK_URL} \
    --sim-url=${SIM_URL} \
    --version=${SDK_VERSION}
## 设置所需的环境变量
## 注意将脚本安装到$SDK_ROOT/sdk/$SDK_VERSION中
## 如果未设置$SDK_ROOT,则默认为/kepler
ENV KEPLER_SDK_PATH="$SDK_ROOT/$SDK_VERSION"
ENV PATH="$KEPLER_SDK_PATH/bin:$PATH"
## 验证Kepler命令是否可用
RUN kepler -v

# 如果您要构建React Native应用,则需要用到NodeJS和NPM
RUN curl -sL https://deb.nodesource.com/setup_lts.x | bash -
RUN apt-get update && apt-get install -y nodejs
RUN npm install -g npm

## 将全局npm配置路径设置为/etc/npmrc
## 将您的npmrc配置绑定到此位置
ENV NPM_CONFIG_GLOBALCONFIG="/etc/npmrc"
## 验证节点和npm命令是否可用
RUN node -v && npm -v

ENTRYPOINT [ "/bin/bash", "-c" ]

构建Docker映像

以下代码示例显示了如何使用示例Dockerfile文件构建Docker映像。将Dockerfile中的构建参数替换为生成的安装命令中提供给安装脚本标记的值:

  • INSTALLER_SCRIPT设置为传递给curl命令的URL的值
  • SDK_URL设置为传递给 --sdk-url脚本标记的值
  • SIM_URL设置为传递给 --sim-url脚本标记的值
  • SDK_VERSION设置为传递给 --version脚本标记的值

已复制到剪贴板。

docker build . --tag ksdk \
--build-arg INSTALLER_SCRIPT=<安装程序脚本URL> \
--build-arg SDK_URL=<SDK URL> \
--build-arg SIM_URL=<SIM URL> \
--build-arg SDK_VERSION =\     <版本>
--build-arg SDK_ROOT=/tmp/kepler

Last updated: 2025年10月14日