Environment オブジェクトと設定構造。
Environment オブジェクト
作成、取得、一覧、更新、アーカイブの各エンドポイントで返される構造です。
| フィールド | 型 | 説明 |
|---|---|---|
id | string | Environment ID(env_ プレフィックス付き) |
type | string | 固定値 "environment" |
name | string | Environment 名 |
description | string | Environment の説明 |
config | Environment config | Environment 設定 |
metadata | object | Metadata オブジェクト、デフォルト {} |
archived_at | string | null | UTC アーカイブ時刻。未アーカイブ時は null |
created_at | string | UTC 作成時刻 |
updated_at | string | UTC 最終更新時刻 |
Environment config
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
type | string | はい | "cloud" または "self_hosted" |
packages | Environment packages | いいえ | Environment に関連付けられたパッケージ宣言 |
setup_script | string | いいえ | ユーザーセットアップスクリプトのテキスト。詳細は Environment setup script を参照 |
self_hosted の場合、config には type と任意の setup_script を指定できます:
self_hosted config で使用できるのは type と任意の setup_script のみです。
Environment packages
packages はパッケージマネージャーからパッケージ仕様文字列の配列へのマッピングです。リクエストでは apt、npm、pip を指定できます。Cloud Environment のレスポンスには予約済みフィールドも含まれ、省略された配列は [] として返されます。
| キー | 型 | 説明 | 例 |
|---|---|---|---|
type | string | レスポンスでは固定値 "packages" | "packages" |
apt | string の配列 | Debian/Ubuntu システムパッケージ宣言 | ["git", "curl", "build-essential"] |
npm | string の配列 | Node.js パッケージ宣言 | ["typescript@5.0.0", "eslint"] |
pip | string の配列 | Python パッケージ宣言 | ["pandas", "PyYAML==6.0.1"] |
cargo | string の配列 | 予約済みのレスポンスフィールド。現在、このフィールドからのパッケージインストールはサポートされません | [] |
gem | string の配列 | 予約済みのレスポンスフィールド。現在、このフィールドからのパッケージインストールはサポートされません | [] |
go | string の配列 | 予約済みのレスポンスフィールド。現在、このフィールドからのパッケージインストールはサポートされません | [] |
Environment setup script
setup_script はサンドボックスの準備段階で packages のインストール完了後に実行されるシェルスクリプトで、/bin/bash -lc で実行されます。リポジトリのクローン、設定ファイルの書き込み、キャッシュのウォームアップなど、packages では表現できない初期化手順に使用します。
| 制約 | 値 |
|---|---|
| 型 | string |
| 最大長 | 64 KB |
| インタープリタ | /bin/bash -lc |
| タイムアウト | 10 分 |
| 実行タイミング | サンドボックス準備段階、packages インストール完了後 |
setup_script の終了コードと stderr の抜粋が含まれ、障害の原因を特定するのに役立ちます。

