シナリオ詳細
- 印刷する
- PDF
シナリオ詳細
- 印刷する
- PDF
記事の要約
この要約は役に立ちましたか?
ご意見ありがとうございます
概要
SourceDeployプロジェクトのシナリオ詳細を照会します。
リクエスト
API URL
GET {SOURCEDEPLOY_API_URL}/project/{projectId}/stage/{stageId}/scenario/{scenarioId}
リクエスト Parameter
項目 | タイプ | 説明 | 備考 |
---|---|---|---|
projectId | string | プロジェクト ID | projectList APIで照会 |
stageId | string | stage ID | stageList APIで照会 |
scenarioId | string | シナリオ ID | scenarioList APIで照会 |
リクエスト Query
なし
リクエスト Body
なし
レスポンス
レスポンス Body
{
"project": {
"id": "number",
"name": "string"
},
"stage": {
"id": "number",
"name": "string"
},
"id": "number",
"name": "string",
"description": "string",
"type": "string",
"config": "TScenarioServer" | "TScenarioAutoScaling" | "TSecnarioKubernetesService" | "TSecnarioObjectStorage"
}
項目 | タイプ | 説明 | 備考 |
---|---|---|---|
project.id | number | プロジェクト id | |
project.name | string | プロジェクト名 | |
stage.id | number | stage id | |
stage.name | string | stage名 | |
id | number | シナリオ id | |
name | string | シナリオ名 | |
description | string | シナリオの説明 | |
type | string | リリース対象の type | "Server" | "AutoScalingGroup" | "KubernetesService" |"ObjectStorage" |
Config | TScenarioServer | TScenarioAutoScalingGroup | TSecnarioKubernetesService | シナリオ設定 | type="Server"の場合、TScenarioServer type="AutoScalingGroup"の場合、TScenarioAutoScalingGroup type="KubernetesService"の場合、TSecnarioKubernetesService type="ObjectStorage"の場合、TSecnarioObjectStorage |
TScenarioServer
{
"strategy": "string",
"sequence": "boolean",
"file": {
"type": "string",
"ObjectStorage": {
"bucket": "string",
"object": "string"
},
"SourceBuild": {
"id": "number",
"name": "string"
}
},
"rollback": "boolean",
"cmd": {
"pre": [
{
"user": "string",
"cmd": "string"
}
],
"deploy": [
{
"sourcePath": "string",
"deployPath": "string"
}
],
"post": [
{
"user": "string",
"cmd": "string"
}
]
}
}
項目 | タイプ | 説明 | 備考 |
---|---|---|---|
strategy | string | リリース戦略 | "normal" |
sequence | boolean | 順次リリースの有無 | |
file.type | string | リリースファイルの type | "ObjectStorage" | "SourceBuild" | "later" |
file.ObjectStorage.bucket | string | ObjectStorageバケット名 | file.type=ObjectStorage |
file.ObjectStorage.object | string | ObjectStorage objectの位置 | file.type=ObjectStorage |
file.SourceBuild.id | number | SourceBuild id | file.type=SourceBuild |
file.SourceBuild.name | string | SourceBuildのプロジェクト名 | file.type=SourceBuild |
rollback | boolean | リリース失敗時にロールバック | |
cmd.pre.user | string | リリース前に実行>実行アカウント | |
cmd.pre.cmd | string | リリース前に実行>実行コマンド | |
cmd.deploy.sourcePath | string | ファイルリリース>ソースファイルパス | |
cmd.deploy.deployPath | string | ファイルリリース>リリースパス | |
cmd.post.user | string | リリース後に実行>実行アカウント | |
cmd.post.cmd | string | リリース後に実行>実行コマンド |
TScenarioAutoScalingGroup
{
"strategy": "string",
"sequence": "boolean",
"file": {
"type": "string",
"ObjectStorage": {
"bucket": "string",
"object": "string"
},
"SourceBuild": {
"id": "number",
"name": "string"
}
},
"rollback": "boolean",
"cmd": {
"pre": [
{
"user": "string",
"cmd": "string"
}
],
"deploy": [
{
"sourcePath": "string",
"deployPath": "string"
}
],
"post": [
{
"user": "string",
"cmd": "string"
}
]
},
"loadBalancer": {
"loadBalancerTargetGroupNo": "number",
"loadBalancerTargetGroupName": "string",
"deleteAsg": "boolean",
"deleteServer": "boolean"
}
}
項目 | タイプ | 説明 | 備考 |
---|---|---|---|
strategy | string | リリース戦略 | "normal" | "blueGreen" |
sequence | boolean | 順次リリースの有無 | |
file.type | string | リリースファイルの type | "ObjectStorage" | "SourceBuild" | "later" |
file.ObjectStorage.bucket | string | ObjectStorageバケット名 | file.type=ObjectStorage |
file.ObjectStorage.object | string | ObjectStorage objectの位置 | file.type=ObjectStorage |
file.SourceBuild.id | number | SourceBuild id | file.type=SourceBuild |
file.SourceBuild.name | string | SourceBuildのプロジェクト名 | file.type=SourceBuild |
rollback | boolean | リリース失敗時にロールバック | |
cmd.pre.user | string | リリース前に実行>実行アカウント | |
cmd.pre.cmd | string | リリース前に実行>実行コマンド | |
cmd.deploy.sourcePath | string | ファイルリリース>ソースファイルパス | |
cmd.deploy.deployPath | string | ファイルリリース>リリースパス | |
cmd.post.user | string | リリース後に実行>実行アカウント | |
cmd.post.cmd | string | リリース後に実行>実行コマンド | |
loadBalancer.loadBalancerTargetGroupNo | number | ロードバランサの Target Group no | strategy=blueGreen |
loadBalancer.loadBalancerTargetGroupName | string | ロードバランサの Target Group名 | strategy=blueGreen |
loadBalancer.deleteAsg | boolean | 既存の Auto Scaling Groupの削除有無 | strategy=blueGreen |
loadBalancer.deleteServer | boolean | 既存の Auto Scaling Group内のサーバ削除有無 | strategy=blueGreen |
TSecnarioKubernetesService
{
"manifest": {
"type": "string",
"url": "string",
"serverUrl": "string",
"owner": "string",
"repository": "string",
"branch": "string",
"path": ["string"]
},
"strategy": "string",
"canaryConfig": {
"canaryCount": "number",
"analysisType": "string",
"timeout": "number",
"prometheus": "string",
"env": {
"baseline": "string",
"canary": "string"
},
"metrics": [
{
"name": "string",
"successCriteria": "string",
"queryType": "string",
"weight": "number",
"metric": "string",
"filter": "string",
"query": "string"
}
],
"analysisConfig": {
"duration": "number",
"delay": "number",
"interval": "number",
"step": "number"
},
"passScore": "number"
}
}
項目 | タイプ | 説明 | 備考 |
---|---|---|---|
strategy | string | リリース戦略 | "rolling" |"blueGreen" |"canary" |
manifest.type | string | マニフェストファイルの保存場所 | "SourceCommit" | "Github Enterprise Server" |
manifest.url | string | リポジトリ URL | manifest.type=Github Enterprise Serverであり、SSH Keyでログインした場合 |
manifest.serverUrl | string | サーバ URL | manifest.type=Github Enterprise Serverであり、OAuth、Personal Access Token、Username/Passwordでログインした場合 |
manifest.owner | string | 所有者 | manifest.type=Github Enterprise Serverの場合 |
manifest.repository | string | リポジトリ | |
manifest.branch | string | リポジトリブランチ | |
manifest.path | string[] | ファイルの保存場所 | |
canaryConfig.analysisType | string | Canary解析方法 | strategy=canaryの場合、 "manual" | "auto" |
canaryConfig.timeout | number | リリース/キャンセルの最大時間 | strategy=canary & canaryConfig.analysisType=manualの場合 |
canaryConfig.canaryCount | number | Baseline、Canary Podの数 | strategy=canary & (canaryConfig.analysisType=manual || canaryConfig.analysisType=auto)の場合 |
canaryConfig.prometheus | string | Prometheus Url | strategy=canary & canaryConfig.analysisType=autoの場合 |
canaryConfig.env.baseline | string | 解析環境変数 > baseline | strategy=canary & canaryConfig.analysisType=autoの場合 |
canaryConfig.env.canary | string | 解析環境変数 > canary | strategy=canary & canaryConfig.analysisType=autoの場合 |
canaryConfig.metrics.name | string | メトリック名 | strategy=canary & canaryConfig.analysisType=autoの場合 |
canaryConfig.metrics.successCriteria | string | 成功基準 | strategy=canary & canaryConfig.analysisType=autoの場合 "base" | "canary" |
canaryConfig.metrics.queryType | string | クエリタイプ | strategy=canary & canaryConfig.analysisType=autoの場合 "default" | "promQL" |
canaryConfig.metrics.weight | number | 重み付け | strategy=canary & canaryConfig.analysisType=auto |
canaryConfig.metrics.metric | string | メトリック | strategy=canary & canaryConfig.analysisType=auto &canaryConfig.metrics.queryType="default" |
canaryConfig.metrics.filter | string | Filter | strategy=canary & canaryConfig.analysisType=auto &canaryConfig.metrics.queryType="default" |
canaryConfig.metrics.query | string | クエリ | strategy=canary & canaryConfig.analysisType=auto & canaryConfig.metrics.queryType="promQL" |
canaryConfig.analysisConfig.duration | number | 分析時間 | strategy=canary & canaryConfig.analysisType=auto |
canaryConfig.analysisConfig.delay | number | 分析遅延時間 | strategy=canary & canaryConfig.analysisType=auto |
canaryConfig.analysisConfig.interval | number | 分析の周期 | strategy=canary & canaryConfig.analysisType=auto |
canaryConfig.analysisConfig.step | number | Metricの収集周期 | strategy=canary & canaryConfig.analysisType=auto |
canaryConfig.passScore | number | 解析成功スコア | strategy=canary & canaryConfig.analysisType=auto |
TSecnarioObjectStorage
{
"file": {
"type": "string",
"ObjectStorage": {
"bucket": "string",
"object": "string"
},
"SourceBuild": {
"id": "number",
"name": "string"
}
},
"path": [
{
"sourcePath": "string",
"deployPath": "string"
}
]
}
項目 | タイプ | 説明 | 備考 |
---|---|---|---|
file.type | string | リリースファイルの type | "ObjectStorage" | "SourceBuild" | "later" |
file.ObjectStorage.bucket | string | ObjectStorageバケット名 | file.type=ObjectStorage |
file.ObjectStorage.object | string | ObjectStorage objectの位置 | file.type=ObjectStorage |
file.SourceBuild.id | number | SourceBuild id | file.type=SourceBuild |
file.SourceBuild.name | string | SourceBuildのプロジェクト名 | file.type=SourceBuild |
path.sourcePath | string | ソースファイルのパス | |
path.deployPath | string | リリースパス |
この記事は役に立ちましたか?