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)
- Ubuntu 20.04以降
ユーザー要件
Vega SDKの0.20.3106より前のバージョン
* ビルドホスト/CI環境の非rootユーザーアカウント
* すべてのインストール方法で必須です
* CI/CDを直接インストールする場合は、ビルドプロセスを非rootで実行します
Vega SDKの0.20.3106以降のバージョン
* 非rootユーザーアカウントの要件はなくなりました
* CI環境では「NONINTERACTIVE=true」に設定します
インストールプロセス
Vega SDKをCI環境に実装する場合、インストールプロセスで特に注意が必要です。開発者ワークステーションではインタラクティブなインストールが一般的ですが、CI環境では完全に自動化されたアプローチが必要です。以下のセクションでは、これらの手順について説明します。
基本インストール
- インストールページから、ビルドホストに適切なOSとアーキテクチャを選択して、インストールコマンドをコピーします。
- インストールコマンドを編集します。
NONINTERACTIVE環境変数を設定して、自動インストールを中断する可能性のあるインストーラーのプロンプトを無効にします。--sim-urlフラグとその値を削除して、Vega仮想デバイスのインストールをスキップします。
KEPLER_SDK_PATH環境変数とPATH環境変数を適宜構成します。
# 山かっこ内の値を、インストールページに記載されているそれぞれの値に置き換えます
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)またはfileを使用できます。 ファイル名のみの指定はできません。値は有効な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以降では、SDKインストールの実効サイズを削減するため、Vega仮想デバイス(VVD)イメージのインストールは任意になりました。
--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"
## nodeコマンドと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日

