{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "management.azure.com",
  "basePath": "/",
  "info": {
    "title": "ContainerRegistryManagementClient",
    "version": "2018-02-01-preview",
    "x-apisguru-categories": [
      "cloud"
    ],
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png"
    },
    "x-origin": [
      {
        "format": "swagger",
        "url": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2018-02-01-preview/containerregistry_build.json",
        "version": "2.0"
      }
    ],
    "x-preferred": false,
    "x-providerName": "azure.com",
    "x-serviceName": "containerregistry-containerregistry_build",
    "x-tags": [
      "Azure",
      "Microsoft"
    ]
  },
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "securityDefinitions": {
    "azure_auth": {
      "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
      "description": "Azure Active Directory OAuth2 Flow",
      "flow": "implicit",
      "scopes": {
        "user_impersonation": "impersonate your user account"
      },
      "type": "oauth2"
    }
  },
  "security": [
    {
      "azure_auth": [
        "user_impersonation"
      ]
    }
  ],
  "parameters": {
    "ApiVersionParameter": {
      "description": "The client API version.",
      "in": "query",
      "name": "api-version",
      "required": true,
      "type": "string"
    },
    "BuildTaskNameParameter": {
      "description": "The name of the container registry build task.",
      "in": "path",
      "maxLength": 50,
      "minLength": 5,
      "name": "buildTaskName",
      "pattern": "^[a-zA-Z0-9]*$",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "RegistryNameParameter": {
      "description": "The name of the container registry.",
      "in": "path",
      "maxLength": 50,
      "minLength": 5,
      "name": "registryName",
      "pattern": "^[a-zA-Z0-9]*$",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "ResourceGroupNameParameter": {
      "description": "The name of the resource group to which the container registry belongs.",
      "in": "path",
      "name": "resourceGroupName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "StepNameParameter": {
      "description": "The name of a build step for a container registry build task.",
      "in": "path",
      "maxLength": 50,
      "minLength": 5,
      "name": "stepName",
      "pattern": "^[a-zA-Z0-9]*$",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "SubscriptionIdParameter": {
      "description": "The Microsoft Azure subscription ID.",
      "in": "path",
      "name": "subscriptionId",
      "required": true,
      "type": "string"
    }
  },
  "paths": {
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/buildTasks": {
      "get": {
        "description": "Lists all the build tasks for a specified container registry.",
        "operationId": "BuildTasks_List",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "description": "The build task filter to apply on the operation.",
            "in": "query",
            "name": "$filter",
            "required": false,
            "type": "string"
          },
          {
            "description": "$skipToken is supported on get list of build tasks, which provides the next page in the list of tasks.",
            "in": "query",
            "name": "$skipToken",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildTaskListResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "BuildTasks"
        ],
        "x-ms-examples": {
          "BuildTasks_List": {
            "parameters": {
              "$filter": "alias%20eq%20'myalias'",
              "api-version": "2018-02-01-preview",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask",
                      "location": "eastus",
                      "name": "myBuildTask",
                      "properties": {
                        "alias": "myalias",
                        "creationDate": "2018-01-25T06:54:23.536Z",
                        "platform": {
                          "cpu": 2,
                          "osType": "Linux"
                        },
                        "provisioningState": "Succeeded",
                        "sourceRepository": {
                          "isCommitTriggerEnabled": true,
                          "repositoryUrl": "https://github.com/Azure/azure-rest-api-specs",
                          "sourceControlType": "Github"
                        },
                        "status": "Enabled"
                      },
                      "tags": {
                        "testkey": "value"
                      },
                      "type": "Microsoft.ContainerRegistry/registries/buildTasks"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-odata": "#/definitions/BuildTaskFilter",
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/buildTasks/{buildTaskName}": {
      "delete": {
        "description": "Deletes a specified build task.",
        "operationId": "BuildTasks_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly."
          },
          "202": {
            "description": "The request was successfully accepted; the operation will complete asynchronously."
          },
          "204": {
            "description": "No Content - the specified resource was not found."
          },
          "default": {
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "BuildTasks"
        ],
        "x-ms-examples": {
          "BuildTasks_Delete": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Get the properties of a specified build task.",
        "operationId": "BuildTasks_Get",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildTask"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned."
          }
        },
        "tags": [
          "BuildTasks"
        ],
        "x-ms-examples": {
          "BuildTasks_Get": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask",
                  "location": "eastus",
                  "name": "myBuildTask",
                  "properties": {
                    "alias": "myalias",
                    "creationDate": "2018-01-25T06:54:23.536Z",
                    "platform": {
                      "cpu": 2,
                      "osType": "Linux"
                    },
                    "provisioningState": "Succeeded",
                    "sourceRepository": {
                      "isCommitTriggerEnabled": true,
                      "repositoryUrl": "https://github.com/Azure/azure-rest-api-specs",
                      "sourceControlType": "Github"
                    },
                    "status": "Enabled"
                  },
                  "tags": {
                    "testkey": "value"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks"
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Updates a build task with the specified parameters.",
        "operationId": "BuildTasks_Update",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          },
          {
            "description": "The parameters for updating a build task.",
            "in": "body",
            "name": "buildTaskUpdateParameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/BuildTaskUpdateParameters"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildTask"
            }
          },
          "201": {
            "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.",
            "schema": {
              "$ref": "#/definitions/BuildTask"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned."
          }
        },
        "tags": [
          "BuildTasks"
        ],
        "x-ms-examples": {
          "BuildTasks_Update": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildTaskName": "myBuildTask",
              "buildTaskUpdateParameters": {
                "properties": {
                  "alias": "myalias",
                  "base_image_trigger": "Runtime",
                  "platform": {
                    "cpu": 2,
                    "osType": "Linux"
                  },
                  "sourceRepository": {
                    "isCommitTriggerEnabled": false,
                    "sourceControlAuthProperties": {
                      "scope": "repo",
                      "token": "xxxxx"
                    }
                  },
                  "status": "Disabled"
                },
                "tags": {
                  "key": "value"
                }
              },
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask",
                  "location": "eastus",
                  "name": "myBuildTask",
                  "properties": {
                    "alias": "myalias",
                    "creationDate": "2018-01-25T06:54:23.458Z",
                    "platform": {
                      "cpu": 2,
                      "osType": "Linux"
                    },
                    "provisioningState": "Succeeded",
                    "sourceRepository": {
                      "isCommitTriggerEnabled": false,
                      "repositoryUrl": "https://github.com/Azure/azure-rest-api-specs",
                      "sourceControlType": "Github"
                    },
                    "status": "Disabled"
                  },
                  "tags": {
                    "key": "value"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask",
                  "location": "eastus",
                  "name": "myBuildTask",
                  "properties": {
                    "alias": "myalias",
                    "creationDate": "2018-01-25T06:54:23.458Z",
                    "platform": {
                      "cpu": 2,
                      "osType": "Linux"
                    },
                    "provisioningState": "Updating",
                    "sourceRepository": {
                      "isCommitTriggerEnabled": false,
                      "repositoryUrl": "https://github.com/Azure/azure-rest-api-specs",
                      "sourceControlType": "Github"
                    },
                    "status": "Disabled"
                  },
                  "tags": {
                    "key": "value"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "put": {
        "description": "Creates a build task for a container registry with the specified parameters.",
        "operationId": "BuildTasks_Create",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          },
          {
            "description": "The parameters for creating a build task.",
            "in": "body",
            "name": "buildTaskCreateParameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/BuildTask"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildTask"
            }
          },
          "201": {
            "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.",
            "schema": {
              "$ref": "#/definitions/BuildTask"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned."
          }
        },
        "tags": [
          "BuildTasks"
        ],
        "x-ms-examples": {
          "BuildTasks_Create": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildTaskCreateParameters": {
                "location": "eastus",
                "properties": {
                  "alias": "myalias",
                  "platform": {
                    "cpu": 2,
                    "osType": "Linux"
                  },
                  "sourceRepository": {
                    "isCommitTriggerEnabled": true,
                    "repositoryUrl": "https://github.com/Azure/azure-rest-api-specs",
                    "sourceControlAuthProperties": {
                      "scope": "repo",
                      "token": "xxxxxx",
                      "tokenType": "OAuth"
                    },
                    "sourceControlType": "Github"
                  },
                  "status": "Enabled"
                },
                "tags": {
                  "testkey": "value"
                }
              },
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask",
                  "location": "eastus",
                  "name": "myBuildTask",
                  "properties": {
                    "alias": "myalias",
                    "creationDate": "2018-01-25T06:54:23.536Z",
                    "platform": {
                      "cpu": 2,
                      "osType": "Linux"
                    },
                    "provisioningState": "Succeeded",
                    "sourceRepository": {
                      "isCommitTriggerEnabled": true,
                      "repositoryUrl": "https://github.com/Azure/azure-rest-api-specs",
                      "sourceControlType": "Github"
                    },
                    "status": "Enabled"
                  },
                  "tags": {
                    "key": "value"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask",
                  "location": "eastus",
                  "name": "myBuildTask",
                  "properties": {
                    "alias": "myalias",
                    "creationDate": "2018-01-25T06:54:23.536Z",
                    "platform": {
                      "cpu": 2,
                      "osType": "Linux"
                    },
                    "provisioningState": "Creating",
                    "sourceRepository": {
                      "isCommitTriggerEnabled": true,
                      "repositoryUrl": "https://github.com/Azure/azure-rest-api-specs",
                      "sourceControlType": "Github"
                    },
                    "status": "Enabled"
                  },
                  "tags": {
                    "key": "value"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/buildTasks/{buildTaskName}/listSourceRepositoryProperties": {
      "post": {
        "description": "Get the source control properties for a build task.",
        "operationId": "BuildTasks_ListSourceRepositoryProperties",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/SourceRepositoryProperties"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned."
          }
        },
        "tags": [
          "BuildTasks"
        ],
        "x-ms-examples": {
          "BuildTasks_ListSourceRepositoryProperties": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "isCommitTriggerEnabled": true,
                  "repositoryUrl": "https://github.com/Azure/azure-rest-api-specs",
                  "sourceControlAuthProperties": {
                    "scope": "repo",
                    "token": "xxxxxx",
                    "tokenType": "OAuth"
                  },
                  "sourceControlType": "Github"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/buildTasks/{buildTaskName}/steps": {
      "get": {
        "description": "List all the build steps for a given build task.",
        "operationId": "BuildSteps_List",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildStepList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "BuildSteps"
        ],
        "x-ms-examples": {
          "BuildSteps_List": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask/steps/myStep",
                      "name": "myStep",
                      "properties": {
                        "baseImageTrigger": "Runtime",
                        "branch": "master",
                        "buildArguments": [
                          {
                            "isSecret": false,
                            "name": "mytestargument",
                            "type": "DockerBuildArgument",
                            "value": "mytestvalue"
                          },
                          {
                            "isSecret": true,
                            "name": "mysecrettestargument",
                            "type": "DockerBuildArgument",
                            "value": "mysecrettestvalue"
                          }
                        ],
                        "contextPath": "dockerfiles",
                        "dockerFilePath": "subfolder/Dockerfile",
                        "imageNames": [
                          "azurerest:testtag"
                        ],
                        "isPushEnabled": true,
                        "noCache": false,
                        "provisioningState": "Succeeded",
                        "type": "Docker"
                      },
                      "type": "Microsoft.ContainerRegistry/registries/buildTasks/steps"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/buildTasks/{buildTaskName}/steps/{stepName}": {
      "delete": {
        "description": "Deletes a build step from the build task.",
        "operationId": "BuildSteps_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          },
          {
            "$ref": "#/parameters/StepNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly."
          },
          "202": {
            "description": "The request was successfully accepted; the operation will complete asynchronously."
          },
          "default": {
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "BuildSteps"
        ],
        "x-ms-examples": {
          "BuildSteps_Delete": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "stepName": "myStep",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {},
              "202": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Gets the build step for a build task.",
        "operationId": "BuildSteps_Get",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          },
          {
            "$ref": "#/parameters/StepNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildStep"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry/step doesn't exist, 404 (Not found) is returned."
          }
        },
        "tags": [
          "BuildSteps"
        ],
        "x-ms-examples": {
          "BuildSteps_Get": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "stepName": "myStep",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask/steps/myStep",
                  "name": "myStep",
                  "properties": {
                    "baseImageTrigger": "Runtime",
                    "branch": "master",
                    "buildArguments": [
                      {
                        "isSecret": false,
                        "name": "mytestargument",
                        "type": "DockerBuildArgument",
                        "value": "mytestvalue"
                      },
                      {
                        "isSecret": true,
                        "name": "mysecrettestargument",
                        "type": "DockerBuildArgument",
                        "value": "mysecrettestvalue"
                      }
                    ],
                    "contextPath": "dockerfiles",
                    "dockerFilePath": "subfolder/Dockerfile",
                    "imageNames": [
                      "azurerest:testtag"
                    ],
                    "isPushEnabled": true,
                    "noCache": false,
                    "provisioningState": "Succeeded",
                    "type": "Docker"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks/steps"
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Updates a build step in a build task.",
        "operationId": "BuildSteps_Update",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          },
          {
            "$ref": "#/parameters/StepNameParameter"
          },
          {
            "description": "The parameters for updating a build step.",
            "in": "body",
            "name": "buildStepUpdateParameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/BuildStepUpdateParameters"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildStep"
            }
          },
          "201": {
            "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.",
            "schema": {
              "$ref": "#/definitions/BuildStep"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry/step doesn't exist, 404 (Not found) is returned.If any of the input parameters is wrong, 400(Bad Request) is returned."
          }
        },
        "tags": [
          "BuildSteps"
        ],
        "x-ms-examples": {
          "BuildSteps_Update": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildStepUpdateParameters": {
                "properties": {
                  "baseImageTrigger": "None",
                  "buildArguments": [
                    {
                      "isSecret": false,
                      "name": "mytestargument",
                      "type": "DockerBuildArgument",
                      "value": "mytestvalue"
                    },
                    {
                      "isSecret": true,
                      "name": "mysecrettestargument",
                      "type": "DockerBuildArgument",
                      "value": "mysecrettestvalue"
                    }
                  ],
                  "contextPath": "dockerfiles",
                  "dockerFilePath": "subfolder/Dockerfile",
                  "imageNames": [
                    "azurerest:testtag",
                    "azurerest1:testtag1"
                  ],
                  "isPushEnabled": true,
                  "noCache": false,
                  "type": "Docker"
                }
              },
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "stepName": "myStep",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask/steps/myStep",
                  "name": "myStep",
                  "properties": {
                    "baseImageTrigger": "Runtime",
                    "branch": "master",
                    "buildArguments": [
                      {
                        "isSecret": false,
                        "name": "mytestargument",
                        "type": "DockerBuildArgument",
                        "value": "mytestvalue"
                      },
                      {
                        "isSecret": true,
                        "name": "mysecrettestargument",
                        "type": "DockerBuildArgument",
                        "value": "mysecrettestvalue"
                      }
                    ],
                    "contextPath": "dockerfiles",
                    "dockerFilePath": "subfolder/Dockerfile",
                    "imageNames": [
                      "azurerest:testtag"
                    ],
                    "isPushEnabled": true,
                    "noCache": false,
                    "provisioningState": "Succeeded",
                    "type": "Docker"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks/steps"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask/steps/myStep",
                  "name": "myStep",
                  "properties": {
                    "baseImageTrigger": "Runtime",
                    "branch": "master",
                    "buildArguments": [
                      {
                        "isSecret": false,
                        "name": "mytestargument",
                        "type": "DockerBuildArgument",
                        "value": "mytestvalue"
                      },
                      {
                        "isSecret": true,
                        "name": "mysecrettestargument",
                        "type": "DockerBuildArgument",
                        "value": "mysecrettestvalue"
                      }
                    ],
                    "contextPath": "dockerfiles",
                    "dockerFilePath": "subfolder/Dockerfile",
                    "imageNames": [
                      "azurerest:testtag"
                    ],
                    "isPushEnabled": true,
                    "noCache": false,
                    "provisioningState": "Updating",
                    "type": "Docker"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks/steps"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "put": {
        "description": "Creates a build step for a build task.",
        "operationId": "BuildSteps_Create",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          },
          {
            "$ref": "#/parameters/StepNameParameter"
          },
          {
            "description": "The parameters for creating a build step.",
            "in": "body",
            "name": "buildStepCreateParameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/BuildStep"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildStep"
            }
          },
          "201": {
            "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.",
            "schema": {
              "$ref": "#/definitions/BuildStep"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry doesn't exist, 404 (Not found) is returned.If any of the input parameters is wrong, 400(Bad Request) is returned."
          }
        },
        "tags": [
          "BuildSteps"
        ],
        "x-ms-examples": {
          "BuildSteps_Create": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildStepCreateParameters": {
                "properties": {
                  "buildArguments": [
                    {
                      "isSecret": false,
                      "name": "mytestargument",
                      "type": "DockerBuildArgument",
                      "value": "mytestvalue"
                    },
                    {
                      "isSecret": true,
                      "name": "mysecrettestargument",
                      "type": "DockerBuildArgument",
                      "value": "mysecrettestvalue"
                    }
                  ],
                  "contextPath": "dockerfiles",
                  "dockerFilePath": "subfolder/Dockerfile",
                  "imageNames": [
                    "azurerest:testtag"
                  ],
                  "isPushEnabled": true,
                  "noCache": true,
                  "type": "Docker"
                }
              },
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "stepName": "myStep",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask/steps/myStep",
                  "name": "myStep",
                  "properties": {
                    "baseImageTrigger": "Runtime",
                    "branch": "master",
                    "buildArguments": [
                      {
                        "isSecret": false,
                        "name": "mytestargument",
                        "type": "DockerBuildArgument",
                        "value": "mytestvalue"
                      },
                      {
                        "isSecret": true,
                        "name": "mysecrettestargument",
                        "type": "DockerBuildArgument",
                        "value": "mysecrettestvalue"
                      }
                    ],
                    "contextPath": "dockerfiles",
                    "dockerFilePath": "subfolder/Dockerfile",
                    "imageNames": [
                      "azurerest:testtag"
                    ],
                    "isPushEnabled": true,
                    "noCache": false,
                    "provisioningState": "Succeeded",
                    "type": "Docker"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks/steps"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/buildTasks/myBuildTask/steps/myStep",
                  "name": "myStep",
                  "properties": {
                    "baseImageTrigger": "Runtime",
                    "branch": "master",
                    "buildArguments": [
                      {
                        "isSecret": false,
                        "name": "mytestargument",
                        "type": "DockerBuildArgument",
                        "value": "mytestvalue"
                      },
                      {
                        "isSecret": true,
                        "name": "mysecrettestargument",
                        "type": "DockerBuildArgument",
                        "value": "mysecrettestvalue"
                      }
                    ],
                    "contextPath": "dockerfiles",
                    "dockerFilePath": "subfolder/Dockerfile",
                    "imageNames": [
                      "azurerest:testtag"
                    ],
                    "isPushEnabled": true,
                    "noCache": false,
                    "provisioningState": "Updating",
                    "type": "Docker"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/buildTasks/steps"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/buildTasks/{buildTaskName}/steps/{stepName}/listBuildArguments": {
      "post": {
        "description": "List the build arguments for a step including the secret arguments.",
        "operationId": "BuildSteps_ListBuildArguments",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/BuildTaskNameParameter"
          },
          {
            "$ref": "#/parameters/StepNameParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildArgumentList"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry/step doesn't exist, 404 (Not found) is returned."
          }
        },
        "tags": [
          "BuildSteps"
        ],
        "x-ms-examples": {
          "BuildSteps_ListBuildArguments": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildTaskName": "myBuildTask",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "stepName": "myStep",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "isSecret": false,
                      "name": "mytestargument",
                      "type": "DockerBuildArgument",
                      "value": "mytestvalue"
                    },
                    {
                      "isSecret": true,
                      "name": "mysecrettestargument",
                      "type": "DockerBuildArgument",
                      "value": "mysecrettestvalue"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/builds": {
      "get": {
        "description": "Gets all the builds for a registry.",
        "operationId": "Builds_List",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "description": "The builds filter to apply on the operation.",
            "in": "query",
            "name": "$filter",
            "required": false,
            "type": "string"
          },
          {
            "description": "$top is supported for get list of builds, which limits the maximum number of builds to return.",
            "format": "int32",
            "in": "query",
            "name": "$top",
            "required": false,
            "type": "integer"
          },
          {
            "description": "$skipToken is supported on get list of builds, which provides the next page in the list of builds.",
            "in": "query",
            "name": "$skipToken",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildListResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed."
          }
        },
        "tags": [
          "Builds"
        ],
        "x-ms-examples": {
          "Builds_List": {
            "parameters": {
              "$filter": "",
              "$top": 10,
              "api-version": "2018-02-01-preview",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/builds/0accec26-d6de-4757-8e74-d080f38eaaab",
                      "name": "0accec26-d6de-4757-8e74-d080f38eaaab",
                      "properties": {
                        "buildId": "0accec26-d6de-4757-8e74-d080f38eaaab",
                        "buildTask": "myBuildTask",
                        "buildType": "AutoBuild",
                        "createTime": "2018-01-25T05:13:51.618Z",
                        "finishTime": "2018-01-25T06:13:51.618Z",
                        "imageUpdateTrigger": {
                          "id": "c0c43143-da5d-41ef-b9e1-e7d749272e88",
                          "images": [
                            {
                              "digest": "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0",
                              "registry": "registry.hub.docker.com",
                              "repository": "mybaseimage",
                              "tag": "latest"
                            }
                          ],
                          "timestamp": "2018-01-25T05:13:51.618Z"
                        },
                        "isArchiveEnabled": true,
                        "lastUpdatedTime": "2018-01-25T05:13:51.617Z",
                        "outputImages": [
                          {
                            "digest": "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0",
                            "registry": "myregistry.azurecr.io",
                            "repository": "myimage",
                            "tag": "latest"
                          }
                        ],
                        "platform": {
                          "cpu": 2,
                          "osType": "Linux"
                        },
                        "provisioningState": "Succeeded",
                        "startTime": "2018-01-25T05:50:51.618Z",
                        "status": "Succeeded"
                      },
                      "type": "Microsoft.ContainerRegistry/registries/builds"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-odata": "#/definitions/BuildFilter",
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/builds/{buildId}": {
      "get": {
        "description": "Gets the detailed information for a given build.",
        "operationId": "Builds_Get",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "description": "The build ID.",
            "in": "path",
            "name": "buildId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/Build"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry/build doesn't exist, 404 (Not found) is returned."
          }
        },
        "tags": [
          "Builds"
        ],
        "x-ms-examples": {
          "Builds_Get": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildId": "0accec26-d6de-4757-8e74-d080f38eaaab",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/builds/0accec26-d6de-4757-8e74-d080f38eaaab",
                  "name": "0accec26-d6de-4757-8e74-d080f38eaaab",
                  "properties": {
                    "buildId": "0accec26-d6de-4757-8e74-d080f38eaaab",
                    "buildTask": "myBuildTask",
                    "buildType": "AutoBuild",
                    "createTime": "2018-01-25T05:13:51.618Z",
                    "finishTime": "2018-01-25T06:13:51.618Z",
                    "imageUpdateTrigger": {
                      "id": "c0c43143-da5d-41ef-b9e1-e7d749272e88",
                      "images": [
                        {
                          "digest": "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0",
                          "registry": "registry.hub.docker.com",
                          "repository": "mybaseimage",
                          "tag": "latest"
                        }
                      ],
                      "timestamp": "2018-01-25T05:13:51.618Z"
                    },
                    "isArchiveEnabled": true,
                    "lastUpdatedTime": "2018-01-25T05:13:51.617Z",
                    "outputImages": [
                      {
                        "digest": "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0",
                        "registry": "myregistry.azurecr.io",
                        "repository": "myimage",
                        "tag": "latest"
                      }
                    ],
                    "platform": {
                      "cpu": 2,
                      "osType": "Linux"
                    },
                    "provisioningState": "Succeeded",
                    "startTime": "2018-01-25T05:50:51.618Z",
                    "status": "Succeeded"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/builds"
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Patch the build properties.",
        "operationId": "Builds_Update",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "description": "The build ID.",
            "in": "path",
            "name": "buildId",
            "required": true,
            "type": "string"
          },
          {
            "description": "The build update properties.",
            "in": "body",
            "name": "buildUpdateParameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/BuildUpdateParameters"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/Build"
            }
          },
          "201": {
            "description": "The request was successfully accepted; the operation will complete asynchronously. The provisioning state of the resource should indicate the current state of the resource.",
            "schema": {
              "$ref": "#/definitions/Build"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry/build doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned."
          }
        },
        "tags": [
          "Builds"
        ],
        "x-ms-examples": {
          "Builds_Update": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildId": "0accec26-d6de-4757-8e74-d080f38eaaab",
              "buildUpdateParameters": {
                "isArchiveEnabled": true
              },
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/builds/0accec26-d6de-4757-8e74-d080f38eaaab",
                  "name": "0accec26-d6de-4757-8e74-d080f38eaaab",
                  "properties": {
                    "buildId": "0accec26-d6de-4757-8e74-d080f38eaaab",
                    "buildTask": "myBuildTask",
                    "buildType": "AutoBuild",
                    "createTime": "2018-01-25T05:13:51.618Z",
                    "finishTime": "2018-01-25T06:13:51.618Z",
                    "imageUpdateTrigger": {
                      "id": "c0c43143-da5d-41ef-b9e1-e7d749272e88",
                      "images": [
                        {
                          "digest": "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0",
                          "registry": "registry.hub.docker.com",
                          "repository": "mybaseimage",
                          "tag": "latest"
                        }
                      ],
                      "timestamp": "2018-01-25T05:13:51.618Z"
                    },
                    "isArchiveEnabled": true,
                    "lastUpdatedTime": "2018-01-25T05:13:51.617Z",
                    "outputImages": [
                      {
                        "digest": "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0",
                        "registry": "myregistry.azurecr.io",
                        "repository": "myimage",
                        "tag": "latest"
                      }
                    ],
                    "platform": {
                      "cpu": 2,
                      "osType": "Linux"
                    },
                    "provisioningState": "Succeeded",
                    "startTime": "2018-01-25T05:50:51.618Z",
                    "status": "Succeeded"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/builds"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/builds/0accec26-d6de-4757-8e74-d080f38eaaab",
                  "name": "0accec26-d6de-4757-8e74-d080f38eaaab",
                  "properties": {
                    "buildId": "0accec26-d6de-4757-8e74-d080f38eaaab",
                    "buildTask": "myBuildTask",
                    "buildType": "AutoBuild",
                    "createTime": "2018-01-25T05:13:51.618Z",
                    "finishTime": "2018-01-25T06:13:51.618Z",
                    "imageUpdateTrigger": {
                      "id": "c0c43143-da5d-41ef-b9e1-e7d749272e88",
                      "images": [
                        {
                          "digest": "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0",
                          "registry": "registry.hub.docker.com",
                          "repository": "mybaseimage",
                          "tag": "latest"
                        }
                      ],
                      "timestamp": "2018-01-25T05:13:51.618Z"
                    },
                    "isArchiveEnabled": true,
                    "lastUpdatedTime": "2018-01-25T05:13:51.617Z",
                    "outputImages": [
                      {
                        "digest": "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0",
                        "registry": "myregistry.azurecr.io",
                        "repository": "myimage",
                        "tag": "latest"
                      }
                    ],
                    "platform": {
                      "cpu": 2,
                      "osType": "Linux"
                    },
                    "provisioningState": "Updating",
                    "startTime": "2018-01-25T05:50:51.618Z",
                    "status": "Succeeded"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/builds"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/builds/{buildId}/cancel": {
      "post": {
        "description": "Cancel an existing build.",
        "operationId": "Builds_Cancel",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "description": "The build ID.",
            "in": "path",
            "name": "buildId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly."
          },
          "202": {
            "description": "The request was successfully accepted; the operation will complete asynchronously."
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry/build doesn't exist, 404 (Not found) is returned."
          }
        },
        "tags": [
          "Builds"
        ],
        "x-ms-examples": {
          "Builds_Cancel": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildId": "0accec26-d6de-4757-8e74-d080f38eaaab",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {},
              "202": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/builds/{buildId}/getLogLink": {
      "post": {
        "description": "Gets a link to download the build logs.",
        "operationId": "Builds_GetLogLink",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "description": "The build ID.",
            "in": "path",
            "name": "buildId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/BuildGetLogResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry/build doesn't exist, 404 (Not found) is returned."
          }
        },
        "tags": [
          "Builds"
        ],
        "x-ms-examples": {
          "Builds_GetLogLink": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildId": "0accec26-d6de-4757-8e74-d080f38eaaab",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "logLink": "https://registrystorageaccount.blob.core.windows.net/sascontainer/logs/0accec26-d6de-4757-8e74-d080f38eaaab/rawtext.log?sv=2015-04-05&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https&sig=Z%2FRHIX5Xcg0Mq2rqI3OlWTjEg2tYkboXr1P9ZUXDtkk%3D"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/getBuildSourceUploadUrl": {
      "post": {
        "description": "Get the upload location for the user to be able to upload the source.",
        "operationId": "Registries_GetBuildSourceUploadUrl",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/SourceUploadDefinition"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry/build doesn't exist, 404 (Not found) is returned."
          }
        },
        "tags": [
          "Registries"
        ],
        "x-ms-examples": {
          "Registries_GetBuildSourceUploadUrl": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "relativePath": "source/201802130000/b52f12d8-c3d6-4d75-9107-220f0bfc681d.tar.gz",
                  "uploadUrl": "https://registrystorageaccount.blob.core.windows.net/registrycontainer/source/201802130000/b52f12d8-c3d6-4d75-9107-220f0bfc681d.tar.gz?sv=2015-04-05&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https&sig=Z%2FRHIX5Xcg0Mq2rqI3OlWTjEg2tYkboXr1P9ZUXDtkk%3D"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/queueBuild": {
      "post": {
        "description": "Creates a new build based on the request parameters and add it to the build queue.",
        "operationId": "Registries_QueueBuild",
        "parameters": [
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/RegistryNameParameter"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "description": "The parameters of a build that needs to queued.",
            "in": "body",
            "name": "buildRequest",
            "required": true,
            "schema": {
              "$ref": "#/definitions/QueueBuildRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The request was successful; the request was well-formed and received properly.",
            "schema": {
              "$ref": "#/definitions/Build"
            }
          },
          "202": {
            "description": "The request was successfully accepted; the operation will complete asynchronously."
          },
          "default": {
            "description": "Error response describing why the operation failed. If the registry/build doesn't exist, 404 (Not found) is returned. If any of the input parameters is wrong, 400(Bad Request) is returned."
          }
        },
        "tags": [
          "Registries"
        ],
        "x-ms-examples": {
          "Registries_QueueBuild": {
            "parameters": {
              "api-version": "2018-02-01-preview",
              "buildRequest": {
                "buildArguments": [
                  {
                    "isSecret": false,
                    "name": "mytestargument",
                    "type": "DockerBuildArgument",
                    "value": "mytestvalue"
                  },
                  {
                    "isSecret": true,
                    "name": "mysecrettestargument",
                    "type": "DockerBuildArgument",
                    "value": "mysecrettestvalue"
                  }
                ],
                "dockerFilePath": "subfolder/Dockerfile",
                "imageNames": [
                  "azurerest:testtag"
                ],
                "isPushEnabled": true,
                "noCache": true,
                "platform": {
                  "cpu": 2,
                  "osType": "Linux"
                },
                "sourceLocation": "https://myaccount.blob.core.windows.net/sascontainer/source.zip?sv=2015-04-05&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&sip=168.1.5.60-168.1.5.70&spr=https&sig=Z%2FRHIX5Xcg0Mq2rqI3OlWTjEg2tYkboXr1P9ZUXDtkk%3D",
                "type": "QuickBuild"
              },
              "registryName": "myRegistry",
              "resourceGroupName": "myResourceGroup",
              "subscriptionId": "4385cf00-2d3a-425a-832f-f4285b1c9dce"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/4385cf00-2d3a-425a-832f-f4285b1c9dce/resourceGroups/myResourceGroup/providers/Microsoft.ContainerRegistry/registries/myRegistry/builds/0accec26-d6de-4757-8e74-d080f38eaaab",
                  "name": "0accec26-d6de-4757-8e74-d080f38eaaab",
                  "properties": {
                    "buildId": "0accec26-d6de-4757-8e74-d080f38eaaab",
                    "lastUpdatedTime": "2018-01-25T05:13:51.617Z",
                    "provisioningState": "Succeeded",
                    "status": "Succeeded"
                  },
                  "type": "Microsoft.ContainerRegistry/registries/builds"
                }
              },
              "202": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    }
  },
  "definitions": {
    "BaseImageDependency": {
      "description": "Properties that describe a base image dependency.",
      "properties": {
        "digest": {
          "description": "The sha256-based digest of the image manifest.",
          "type": "string"
        },
        "registry": {
          "description": "The registry login server.",
          "type": "string"
        },
        "repository": {
          "description": "The repository name.",
          "type": "string"
        },
        "tag": {
          "description": "The tag name.",
          "type": "string"
        },
        "type": {
          "description": "The type of the base image dependency.",
          "enum": [
            "BuildTime",
            "RunTime"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BaseImageDependencyType"
          }
        }
      },
      "type": "object"
    },
    "Build": {
      "allOf": [
        {
          "$ref": "#/definitions/ProxyResource"
        }
      ],
      "description": "Build resource properties",
      "properties": {
        "properties": {
          "$ref": "#/definitions/BuildProperties",
          "description": "The properties of a build.",
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "BuildArgument": {
      "description": "Properties of a build argument.",
      "properties": {
        "isSecret": {
          "default": false,
          "description": "Flag to indicate whether the argument represents a secret and want to be removed from build logs.",
          "type": "boolean"
        },
        "name": {
          "description": "The name of the argument.",
          "type": "string"
        },
        "type": {
          "description": "The type of the argument.",
          "enum": [
            "DockerBuildArgument"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BuildArgumentType"
          }
        },
        "value": {
          "description": "The value of the argument.",
          "type": "string"
        }
      },
      "required": [
        "type",
        "name",
        "value"
      ],
      "type": "object"
    },
    "BuildArgumentList": {
      "description": "The list of build arguments for a build step.",
      "properties": {
        "nextLink": {
          "description": "The URI that can be used to request the next set of paged results.",
          "type": "string"
        },
        "value": {
          "description": "The collection value.",
          "items": {
            "$ref": "#/definitions/BuildArgument"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "BuildFilter": {
      "description": "Properties that are enabled for Odata querying.",
      "properties": {
        "buildId": {
          "description": "The unique identifier for the build.",
          "type": "string"
        },
        "buildTaskName": {
          "description": "The name of the build task that the build corresponds to.",
          "type": "string"
        },
        "buildType": {
          "description": "The type of build.",
          "enum": [
            "AutoBuild",
            "QuickBuild"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BuildType"
          }
        },
        "createTime": {
          "description": "The create time for a build.",
          "format": "date-time",
          "type": "string"
        },
        "finishTime": {
          "description": "The time the build finished.",
          "format": "date-time",
          "type": "string"
        },
        "isArchiveEnabled": {
          "description": "The value that indicates whether archiving is enabled or not.",
          "type": "boolean"
        },
        "outputImageManifests": {
          "description": "The list of comma-separated image manifests that were generated from the build.",
          "type": "string"
        },
        "status": {
          "description": "The current status of the build.",
          "enum": [
            "Queued",
            "Started",
            "Running",
            "Succeeded",
            "Failed",
            "Canceled",
            "Error",
            "Timeout"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BuildStatus"
          }
        }
      },
      "type": "object"
    },
    "BuildGetLogResult": {
      "description": "The result of get log link operation.",
      "properties": {
        "logLink": {
          "description": "The link to logs for a azure container registry build.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "BuildListResult": {
      "description": "Collection of builds.",
      "properties": {
        "nextLink": {
          "description": "The URI that can be used to request the next set of paged results.",
          "type": "string"
        },
        "value": {
          "description": "The collection value.",
          "items": {
            "$ref": "#/definitions/Build"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "BuildProperties": {
      "description": "The properties for a build.",
      "properties": {
        "buildId": {
          "description": "The unique identifier for the build.",
          "type": "string"
        },
        "buildTask": {
          "description": "The build task with which the build was started.",
          "type": "string"
        },
        "buildType": {
          "description": "The type of build.",
          "enum": [
            "AutoBuild",
            "QuickBuild"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BuildType"
          }
        },
        "createTime": {
          "description": "The time the build was created.",
          "format": "date-time",
          "type": "string"
        },
        "finishTime": {
          "description": "The time the build finished.",
          "format": "date-time",
          "type": "string"
        },
        "gitCommitTrigger": {
          "$ref": "#/definitions/GitCommitTrigger",
          "description": "The git commit trigger that caused the build."
        },
        "imageUpdateTrigger": {
          "$ref": "#/definitions/ImageUpdateTrigger",
          "description": "The image update trigger that caused the build."
        },
        "isArchiveEnabled": {
          "default": false,
          "description": "The value that indicates whether archiving is enabled or not.",
          "type": "boolean"
        },
        "lastUpdatedTime": {
          "description": "The last updated time for the build.",
          "format": "date-time",
          "type": "string"
        },
        "outputImages": {
          "description": "The list of all images that were generated from the build.",
          "items": {
            "$ref": "#/definitions/ImageDescriptor"
          },
          "type": "array"
        },
        "platform": {
          "$ref": "#/definitions/PlatformProperties",
          "description": "The platform properties against which the build will happen."
        },
        "provisioningState": {
          "description": "The provisioning state of a build.",
          "enum": [
            "Creating",
            "Updating",
            "Deleting",
            "Succeeded",
            "Failed",
            "Canceled"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "ProvisioningState"
          }
        },
        "startTime": {
          "description": "The time the build started.",
          "format": "date-time",
          "type": "string"
        },
        "status": {
          "description": "The current status of the build.",
          "enum": [
            "Queued",
            "Started",
            "Running",
            "Succeeded",
            "Failed",
            "Canceled",
            "Error",
            "Timeout"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BuildStatus"
          }
        }
      },
      "type": "object"
    },
    "BuildStep": {
      "allOf": [
        {
          "$ref": "#/definitions/ProxyResource"
        }
      ],
      "description": "Build step resource properties",
      "properties": {
        "properties": {
          "$ref": "#/definitions/BuildStepProperties",
          "description": "The properties of a build step."
        }
      },
      "type": "object"
    },
    "BuildStepList": {
      "description": "The collection of build items.",
      "properties": {
        "nextLink": {
          "description": "The URI that can be used to request the next set of paged results.",
          "type": "string"
        },
        "value": {
          "description": "The collection value.",
          "items": {
            "$ref": "#/definitions/BuildStep"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "BuildStepProperties": {
      "description": "Base properties for any build step.",
      "discriminator": "type",
      "properties": {
        "provisioningState": {
          "description": "The provisioning state of the build step.",
          "enum": [
            "Creating",
            "Updating",
            "Deleting",
            "Succeeded",
            "Failed",
            "Canceled"
          ],
          "readOnly": true,
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "ProvisioningState"
          }
        },
        "type": {
          "description": "The type of the step.",
          "enum": [
            "Docker"
          ],
          "readOnly": true,
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BuildStepType"
          }
        }
      },
      "type": "object"
    },
    "BuildStepPropertiesUpdateParameters": {
      "description": "The properties for updating a build step.",
      "discriminator": "type",
      "properties": {
        "type": {
          "description": "The type of the step.",
          "enum": [
            "Docker"
          ],
          "readOnly": true,
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BuildStepType"
          }
        }
      },
      "type": "object"
    },
    "BuildStepUpdateParameters": {
      "description": "The parameters for updating a build step.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/BuildStepPropertiesUpdateParameters",
          "description": "The properties for updating a build step."
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The ARM resource tags.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "BuildTask": {
      "allOf": [
        {
          "$ref": "#/definitions/Resource"
        }
      ],
      "description": "The build task that has the resource properties and all build items. The build task will have all information to schedule a build against it.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/BuildTaskProperties",
          "description": "The properties of a build task.",
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "BuildTaskBuildRequest": {
      "allOf": [
        {
          "$ref": "#/definitions/QueueBuildRequest"
        }
      ],
      "description": "The queue build parameters based on a build task.",
      "properties": {
        "buildTaskName": {
          "description": "The name of build task against which build has to be queued.",
          "type": "string"
        }
      },
      "required": [
        "type",
        "buildTaskName"
      ],
      "type": "object",
      "x-ms-discriminator-value": "BuildTask"
    },
    "BuildTaskFilter": {
      "description": "The filter that can be used for listing build tasks.",
      "properties": {
        "alias": {
          "description": "The alternative name for build task.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "BuildTaskListResult": {
      "description": "The collection of build tasks.",
      "properties": {
        "nextLink": {
          "description": "The URI that can be used to request the next set of paged results.",
          "type": "string"
        },
        "value": {
          "description": "The collection value.",
          "items": {
            "$ref": "#/definitions/BuildTask"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "BuildTaskProperties": {
      "description": "The properties of a build task.",
      "properties": {
        "alias": {
          "description": "The alternative updatable name for a build task.",
          "type": "string"
        },
        "creationDate": {
          "description": "The creation date of build task.",
          "format": "date-time",
          "readOnly": true,
          "type": "string"
        },
        "platform": {
          "$ref": "#/definitions/PlatformProperties",
          "description": "The platform properties against which the build has to happen."
        },
        "provisioningState": {
          "description": "The provisioning state of the build task.",
          "enum": [
            "Creating",
            "Updating",
            "Deleting",
            "Succeeded",
            "Failed",
            "Canceled"
          ],
          "readOnly": true,
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "ProvisioningState"
          }
        },
        "sourceRepository": {
          "$ref": "#/definitions/SourceRepositoryProperties",
          "description": "The properties that describes the source(code) for the build task."
        },
        "status": {
          "description": "The current status of build task.",
          "enum": [
            "Disabled",
            "Enabled"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BuildTaskStatus"
          }
        },
        "timeout": {
          "default": 3600,
          "description": "Build timeout in seconds.",
          "format": "int32",
          "maximum": 28800,
          "minimum": 300,
          "type": "integer"
        }
      },
      "required": [
        "alias",
        "sourceRepository",
        "platform"
      ],
      "type": "object"
    },
    "BuildTaskPropertiesUpdateParameters": {
      "description": "The properties for updating a build task.",
      "properties": {
        "alias": {
          "description": "The alternative updatable name for a build task.",
          "type": "string"
        },
        "platform": {
          "$ref": "#/definitions/PlatformProperties",
          "description": "The platform properties against which the build has to happen."
        },
        "sourceRepository": {
          "$ref": "#/definitions/SourceRepositoryUpdateParameters",
          "description": "The properties that describes the source(code) for the build task."
        },
        "status": {
          "description": "The current status of build task.",
          "enum": [
            "Disabled",
            "Enabled"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BuildTaskStatus"
          }
        },
        "timeout": {
          "description": "Build timeout in seconds.",
          "format": "int32",
          "maximum": 28800,
          "minimum": 300,
          "type": "integer"
        }
      },
      "type": "object"
    },
    "BuildTaskUpdateParameters": {
      "description": "The parameters for updating a build task.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/BuildTaskPropertiesUpdateParameters",
          "description": "The properties for updating a build task.",
          "x-ms-client-flatten": true
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The ARM resource tags.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "BuildUpdateParameters": {
      "description": "The set of build properties that can be updated.",
      "properties": {
        "isArchiveEnabled": {
          "description": "The value that indicates whether archiving is enabled or not.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "DockerBuildStep": {
      "allOf": [
        {
          "$ref": "#/definitions/BuildStepProperties"
        }
      ],
      "description": "The Docker build step.",
      "properties": {
        "baseImageDependencies": {
          "description": "List of base image dependencies for a step.",
          "items": {
            "$ref": "#/definitions/BaseImageDependency"
          },
          "readOnly": true,
          "type": "array"
        },
        "baseImageTrigger": {
          "description": "The type of the auto trigger for base image dependency updates.",
          "enum": [
            "All",
            "Runtime",
            "None"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BaseImageTriggerType"
          }
        },
        "branch": {
          "description": "The repository branch name.",
          "type": "string"
        },
        "buildArguments": {
          "description": "The custom arguments for building this build step.",
          "items": {
            "$ref": "#/definitions/BuildArgument"
          },
          "type": "array"
        },
        "contextPath": {
          "description": "The relative context path for a docker build in the source.",
          "type": "string"
        },
        "dockerFilePath": {
          "description": "The Docker file path relative to the source control root.",
          "type": "string"
        },
        "imageNames": {
          "description": "The fully qualified image names including the repository and tag.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "isPushEnabled": {
          "default": true,
          "description": "The value of this property indicates whether the image built should be pushed to the registry or not.",
          "type": "boolean"
        },
        "noCache": {
          "default": false,
          "description": "The value of this property indicates whether the image cache is enabled or not.",
          "type": "boolean"
        }
      },
      "type": "object",
      "x-ms-discriminator-value": "Docker"
    },
    "DockerBuildStepUpdateParameters": {
      "allOf": [
        {
          "$ref": "#/definitions/BuildStepPropertiesUpdateParameters"
        }
      ],
      "description": "The properties for updating a docker build step.",
      "properties": {
        "baseImageTrigger": {
          "description": "The type of the auto trigger for base image dependency updates.",
          "enum": [
            "All",
            "Runtime",
            "None"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "BaseImageTriggerType"
          }
        },
        "branch": {
          "description": "The repository branch name.",
          "type": "string"
        },
        "buildArguments": {
          "description": "The custom arguments for building this build step.",
          "items": {
            "$ref": "#/definitions/BuildArgument"
          },
          "type": "array"
        },
        "contextPath": {
          "description": "The relative context path for a docker build in the source.",
          "type": "string"
        },
        "dockerFilePath": {
          "description": "The Docker file path relative to the source control root.",
          "type": "string"
        },
        "imageNames": {
          "description": "The fully qualified image names including the repository and tag.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "isPushEnabled": {
          "description": "The value of this property indicates whether the image built should be pushed to the registry or not.",
          "type": "boolean"
        },
        "noCache": {
          "description": "The value of this property indicates whether the image cache is enabled or not.",
          "type": "boolean"
        }
      },
      "required": [
        "type"
      ],
      "type": "object",
      "x-ms-discriminator-value": "Docker"
    },
    "GitCommitTrigger": {
      "description": "The git commit trigger that caused a build.",
      "properties": {
        "branchName": {
          "description": "The branch name in the repository.",
          "type": "string"
        },
        "commitId": {
          "description": "The unique ID that identifies a commit.",
          "type": "string"
        },
        "id": {
          "description": "The unique ID of the trigger.",
          "type": "string"
        },
        "providerType": {
          "description": "The source control provider type.",
          "type": "string"
        },
        "repositoryUrl": {
          "description": "The repository URL.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ImageDescriptor": {
      "description": "Properties for a registry image.",
      "properties": {
        "digest": {
          "description": "The sha256-based digest of the image manifest.",
          "type": "string"
        },
        "registry": {
          "description": "The registry login server.",
          "type": "string"
        },
        "repository": {
          "description": "The repository name.",
          "type": "string"
        },
        "tag": {
          "description": "The tag name.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ImageUpdateTrigger": {
      "description": "The image update trigger that caused a build.",
      "properties": {
        "id": {
          "description": "The unique ID of the trigger.",
          "type": "string"
        },
        "images": {
          "description": "The list of image updates that caused the build.",
          "items": {
            "$ref": "#/definitions/ImageDescriptor"
          },
          "type": "array"
        },
        "timestamp": {
          "description": "The timestamp when the image update happened.",
          "format": "date-time",
          "type": "string"
        }
      },
      "type": "object"
    },
    "PlatformProperties": {
      "description": "The platform properties against which the build has to happen.",
      "properties": {
        "cpu": {
          "description": "The CPU configuration in terms of number of cores required for the build.",
          "format": "int32",
          "type": "integer"
        },
        "osType": {
          "description": "The operating system type required for the build.",
          "enum": [
            "Windows",
            "Linux"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "OsType"
          }
        }
      },
      "required": [
        "osType"
      ],
      "type": "object"
    },
    "ProxyResource": {
      "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags.",
      "properties": {
        "id": {
          "description": "The resource ID.",
          "readOnly": true,
          "type": "string"
        },
        "name": {
          "description": "The name of the resource.",
          "readOnly": true,
          "type": "string"
        },
        "type": {
          "description": "The type of the resource.",
          "readOnly": true,
          "type": "string"
        }
      },
      "x-ms-azure-resource": true
    },
    "QueueBuildRequest": {
      "description": "The queue build request parameters.",
      "discriminator": "type",
      "properties": {
        "type": {
          "description": "The type of the build request.",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "QuickBuildRequest": {
      "allOf": [
        {
          "$ref": "#/definitions/QueueBuildRequest"
        }
      ],
      "description": "The queue build request parameters for a quick build.",
      "properties": {
        "buildArguments": {
          "description": "The collection of build arguments to be used.",
          "items": {
            "$ref": "#/definitions/BuildArgument"
          },
          "type": "array"
        },
        "dockerFilePath": {
          "description": "The Docker file path relative to the source location.",
          "type": "string"
        },
        "imageNames": {
          "description": "The fully qualified image names including the repository and tag.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "isPushEnabled": {
          "default": true,
          "description": "The value of this property indicates whether the image built should be pushed to the registry or not.",
          "type": "boolean"
        },
        "noCache": {
          "default": false,
          "description": "The value of this property indicates whether the image cache is enabled or not.",
          "type": "boolean"
        },
        "platform": {
          "$ref": "#/definitions/PlatformProperties",
          "description": "The platform properties against which the build will happen."
        },
        "sourceLocation": {
          "description": "The URL(absolute or relative) of the source that needs to be built. For Docker build, it can be an URL to a tar or github repository as supported by Docker.\r\nIf it is relative URL, the relative path should be obtained from calling getSourceUploadUrl API.",
          "type": "string"
        },
        "timeout": {
          "default": 3600,
          "description": "Build timeout in seconds.",
          "format": "int32",
          "maximum": 28800,
          "minimum": 300,
          "type": "integer"
        }
      },
      "required": [
        "type",
        "sourceLocation",
        "platform",
        "dockerFilePath"
      ],
      "type": "object",
      "x-ms-discriminator-value": "QuickBuild"
    },
    "Resource": {
      "description": "An Azure resource.",
      "properties": {
        "id": {
          "description": "The resource ID.",
          "readOnly": true,
          "type": "string"
        },
        "location": {
          "description": "The location of the resource. This cannot be changed after the resource is created.",
          "type": "string",
          "x-ms-mutability": [
            "read",
            "create"
          ]
        },
        "name": {
          "description": "The name of the resource.",
          "readOnly": true,
          "type": "string"
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The tags of the resource.",
          "type": "object",
          "x-ms-mutability": [
            "read",
            "create",
            "update"
          ]
        },
        "type": {
          "description": "The type of the resource.",
          "readOnly": true,
          "type": "string"
        }
      },
      "required": [
        "location"
      ],
      "x-ms-azure-resource": true
    },
    "SourceControlAuthInfo": {
      "description": "The authorization properties for accessing the source code repository.",
      "properties": {
        "expiresIn": {
          "description": "Time in seconds that the token remains valid",
          "format": "int32",
          "type": "integer"
        },
        "refreshToken": {
          "description": "The refresh token used to refresh the access token.",
          "type": "string"
        },
        "scope": {
          "description": "The scope of the access token.",
          "type": "string"
        },
        "token": {
          "description": "The access token used to access the source control provider.",
          "type": "string"
        },
        "tokenType": {
          "description": "The type of Auth token.",
          "enum": [
            "PAT",
            "OAuth"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "TokenType"
          }
        }
      },
      "required": [
        "token"
      ],
      "type": "object"
    },
    "SourceRepositoryProperties": {
      "description": "The properties of the source code repository.",
      "properties": {
        "isCommitTriggerEnabled": {
          "default": false,
          "description": "The value of this property indicates whether the source control commit trigger is enabled or not.",
          "type": "boolean"
        },
        "repositoryUrl": {
          "description": "The full URL to the source code repository",
          "type": "string"
        },
        "sourceControlAuthProperties": {
          "$ref": "#/definitions/SourceControlAuthInfo",
          "description": "The authorization properties for accessing the source code repository."
        },
        "sourceControlType": {
          "description": "The type of source control service.",
          "enum": [
            "Github",
            "VisualStudioTeamService"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "SourceControlType"
          }
        }
      },
      "required": [
        "sourceControlType",
        "repositoryUrl"
      ],
      "type": "object"
    },
    "SourceRepositoryUpdateParameters": {
      "description": "The properties for updating the source code repository configuration.",
      "properties": {
        "isCommitTriggerEnabled": {
          "description": "The value of this property indicates whether the source control commit trigger is enabled or not.",
          "type": "boolean"
        },
        "sourceControlAuthProperties": {
          "$ref": "#/definitions/SourceControlAuthInfo",
          "description": "The authorization properties for accessing the source code repository."
        }
      },
      "type": "object"
    },
    "SourceUploadDefinition": {
      "description": "The properties of a response to source upload request.",
      "properties": {
        "relativePath": {
          "description": "The relative path to the source. This is used to submit the subsequent queue build request.",
          "type": "string"
        },
        "uploadUrl": {
          "description": "The URL where the client can upload the source.",
          "type": "string"
        }
      },
      "type": "object"
    }
  }
}