パイプラインの更新

Prev Next

Classic/VPC環境で利用できます。

パイプラインの設定を変更します。

リクエスト

リクエスト形式を説明します。リクエスト形式は次の通りです。

メソッド URI
PATCH /api/v1/project/{projectId}

リクエストヘッダ

SourcePipeline APIで共通して使用されるヘッダの詳細は、SourcePipelineのリクエストヘッダをご参照ください。

リクエストパスパラメータ

リクエストパスパラメータの説明は次の通りです。

フィールド タイプ 必須の有無 説明
projectId String Required パイプライン ID

リクエストボディ

リクエストボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
description String Optional パイプラインの説明
tasks Array Required タスクリスト
trigger Object Optional トリガーの設定
trigger.repository Array Optional Pushトリガーの設定
trigger.sourcepipeline Array Optional パイプライントリガーの設定
trigger.schedule Array Optional 予約トリガーの設定

tasks

tasksの説明は次の通りです。

フィールド タイプ 必須の有無 説明
name String Required タスク名
  • 英数字、記号の「-」、「_」を組み合わせて1~50文字以内で入力
type String Required タスクタイプ
  • SourceBuild | SourceDeploy
config Object Required タスク設定
config.projectId Number Required タスクプロジェクト ID
config.stageId Number Conditional デプロイステージ ID
config.scenarioId Number Conditional デプロイシナリオ ID
config.target Object Optional 接続情報
config.target.info Object Optional 詳細な接続情報
config.target.info.branch String Optional ブランチ名
linkedTasks Array Required 先行タスク名
  • 先行タスクがない場合、空の値[]を入力

repository

repositoryの説明は次の通りです。

フィールド タイプ 必須の有無 説明
type String Conditional リポジトリの種類
  • sourcecommit: SourceCommit (有効値)
  • トリガー設定時、必ず入力
name String Conditional リポジトリ名
branch String Conditional ブランチ名

sourcepipeline

sourcepipelineの説明は次の通りです。

フィールド タイプ 必須の有無 説明
id Number Conditional パイプライン ID

schedule

scheduleの説明は次の通りです。

フィールド タイプ 必須の有無 説明
day Array Conditional 予約実行曜日リスト
  • MON | TUE | WED | THU | FRI | SAT | SUN
  • トリガー設定時、必ず入力
time String Conditional 予約実行時間
  • HH:mm形式(24時間)
  • トリガー設定時、必ず入力
timeZone String Conditional 予約トリガーのタイムゾーン
scheduleOnlyWithChange Boolean Conditional SourceCommit、SourcePipeline変更時、実行するかどうか
  • true | false
    • true: 実行
    • false: 実行しない
  • トリガー設定時、必ず入力

リクエスト例

リクエストのサンプルコードは次の通りです。

curl --location --request PATCH 'https://vpcsourcepipeline.apigw.ntruss.com/api/v1/project/2***' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--data '{
    "tasks": [
        {
            "name": "task1",
            "type": "SourceBuild",
            "config": {
                "projectId": 20***,
                "target": {
                    "info": {
                        "branch": "master"
                    }
                }
            },
            "linkedTasks": []
        },
        {
            "name": "task2",
            "type": "SourceDeploy",
            "config": {
                "projectId": 2***,
                "stageId": 3***,
                "scenarioId": 2***
            },
            "linkedTasks": [
                "task1"
            ]
        }
    ],
    "trigger": {
        "schedule": [
            {
                "day": [
                    "MON",
                    "WED",
                    "FRI",
                    "SUN"
                ],
                "time": "01:00",
                "timeZone": "Asia/Seoul (UTC+09:00)",
                "scheduleOnlyWithChange": true
            }
        ]
    }
}'

レスポンス

レスポンス形式を説明します。

レスポンスボディ

レスポンスボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
result Object - レスポンス結果
result.result Boolean - API呼び出しは成功したか
  • 成功した場合、trueと表示
  • 失敗した場合、フィールドは表示されない

レスポンスステータスコード

SourcePipeline APIで共通して使用されるレスポンスステータスコードの詳細は、SourcePipelineのレスポンスステータスコードをご参照ください。

レスポンス例

レスポンスのサンプルコードは次の通りです。

{
    "result": {
        "result": true
    }
}