# Google Cloud Container Builder API . projects . builds

## Instance Methods

Cancels a requested build in progress.

Starts a build with the specified configuration.

Returns information about a previously requested build.

Lists previously requested builds.

Retrieves the next page of results.

### Method Details

`cancel(projectId, id, body, x__xgafv=None)`

    Cancels a requested build in progress.

    Args:
      projectId: string, ID of the project. (required)
      id: string, ID of the build. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Request to cancel an ongoing build.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A build resource in the Container Builder API.
          #
          # At a high level, a Build describes where to find source code, how to build
          # it (for example, the builder image to run on the source), and what tag to
          # apply to the built image when it is pushed to Google Container Registry.
        "status": "A String", # Status of the build.
            # @OutputOnly
        "finishTime": "A String", # Time at which execution of the build was finished.
            # @OutputOnly
        "startTime": "A String", # Time at which execution of the build was started.
            # @OutputOnly
        "statusDetail": "A String", # Customer-readable message about the current status.
            # @OutputOnly
        "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
            # [Bucket Name
            # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
        "results": { # Results describes the artifacts created by the build pipeline. # Results of the build.
            # @OutputOnly
          "images": [ # Images that were built as a part of the build.
            { # BuiltImage describes an image built by the pipeline.
              "name": "A String", # Name used to push the container image to Google Container Registry, as
                  # presented to `docker push`.
              "digest": "A String", # Docker Registry 2.0 digest.
            },
          ],
        },
        "createTime": "A String", # Time at which the build was created.
            # @OutputOnly
        "source": { # Source describes the location of the source in a supported storage # Describes where to find the source files to build.
            # service.
          "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
              # Storage.
              # Google Cloud Storage.
            "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                # omitted, the latest generation will be used.
            "object": "A String", # Google Cloud Storage object containing source.
                #
                # This object must be a gzipped archive file (.tar.gz) containing source to
                # build.
            "bucket": "A String", # Google Cloud Storage bucket containing source (see
                # [Bucket Name
                # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
          },
        },
        "steps": [ # Describes the operations to be performed on the workspace.
          { # BuildStep describes a step to perform in the build pipeline.
            "args": [ # Command-line arguments to use when running this step's container.
              "A String",
            ],
            "name": "A String", # Name of the container image to use for creating this stage in the
                # pipeline, as presented to `docker pull`.
            "dir": "A String", # Working directory (relative to project source root) to use when running
                # this operation's container.
            "env": [ # Additional environment variables to set for this step's container.
              "A String",
            ],
          },
        ],
        "timeout": "A String", # Amount of time that this build should be allowed to run, to second
            # granularity. If this amount of time elapses, work on the build will cease
            # and the build status will be TIMEOUT.
            #
            # Default time is ten minutes.
        "projectId": "A String", # ID of the project.
            # @OutputOnly.
        "images": [ # List of images expected to be built and pushed to Google Container
            # Registry. If an image is listed here and the image is not produced by
            # one of the build steps, the build will fail. Any images present when
            # the build steps are complete will be pushed to Container Registry.
          "A String",
        ],
        "id": "A String", # Unique identifier of the build.
            # @OutputOnly
      }

`create(projectId, body, x__xgafv=None)`

    Starts a build with the specified configuration.

    The long-running Operation returned by this method will include the ID of
    the build, which can be passed to GetBuild to determine its status (e.g.,
    success or failure).

    Args:
      projectId: string, ID of the project. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # A build resource in the Container Builder API.
        #
        # At a high level, a Build describes where to find source code, how to build
        # it (for example, the builder image to run on the source), and what tag to
        # apply to the built image when it is pushed to Google Container Registry.
      "status": "A String", # Status of the build.
          # @OutputOnly
      "finishTime": "A String", # Time at which execution of the build was finished.
          # @OutputOnly
      "startTime": "A String", # Time at which execution of the build was started.
          # @OutputOnly
      "statusDetail": "A String", # Customer-readable message about the current status.
          # @OutputOnly
      "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
          # [Bucket Name
          # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
          # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
      "results": { # Results describes the artifacts created by the build pipeline. # Results of the build.
          # @OutputOnly
        "images": [ # Images that were built as a part of the build.
          { # BuiltImage describes an image built by the pipeline.
            "name": "A String", # Name used to push the container image to Google Container Registry, as
                # presented to `docker push`.
            "digest": "A String", # Docker Registry 2.0 digest.
          },
        ],
      },
      "createTime": "A String", # Time at which the build was created.
          # @OutputOnly
      "source": { # Source describes the location of the source in a supported storage # Describes where to find the source files to build.
          # service.
        "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
            # Storage.
            # Google Cloud Storage.
          "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
              # omitted, the latest generation will be used.
          "object": "A String", # Google Cloud Storage object containing source.
              #
              # This object must be a gzipped archive file (.tar.gz) containing source to
              # build.
          "bucket": "A String", # Google Cloud Storage bucket containing source (see
              # [Bucket Name
              # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
        },
      },
      "steps": [ # Describes the operations to be performed on the workspace.
        { # BuildStep describes a step to perform in the build pipeline.
          "args": [ # Command-line arguments to use when running this step's container.
            "A String",
          ],
          "name": "A String", # Name of the container image to use for creating this stage in the
              # pipeline, as presented to `docker pull`.
          "dir": "A String", # Working directory (relative to project source root) to use when running
              # this operation's container.
          "env": [ # Additional environment variables to set for this step's container.
            "A String",
          ],
        },
      ],
      "timeout": "A String", # Amount of time that this build should be allowed to run, to second
          # granularity. If this amount of time elapses, work on the build will cease
          # and the build status will be TIMEOUT.
          #
          # Default time is ten minutes.
      "projectId": "A String", # ID of the project.
          # @OutputOnly.
      "images": [ # List of images expected to be built and pushed to Google Container
          # Registry. If an image is listed here and the image is not produced by
          # one of the build steps, the build will fail. Any images present when
          # the build steps are complete will be pushed to Container Registry.
        "A String",
      ],
      "id": "A String", # Unique identifier of the build.
          # @OutputOnly
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a
          # network API call.
        "metadata": { # Service-specific metadata associated with the operation.  It typically
            # contains progress information and common metadata such as create time.
            # Some services might not provide such metadata.  Any method that returns a
            # long-running operation should document the metadata type, if any.
          "a_key": "", # Properties of the object. Contains field @ype with type URL.
        },
        "done": True or False, # If the value is `false`, it means the operation is still in progress.
            # If true, the operation is completed, and either `error` or `response` is
            # available.
        "response": { # The normal response of the operation in case of success.  If the original
            # method returns no data on success, such as `Delete`, the response is
            # `google.protobuf.Empty`.  If the original method is standard
            # `Get`/`Create`/`Update`, the response should be the resource.  For other
            # methods, the response should have the type `XxxResponse`, where `Xxx`
            # is the original method name.  For example, if the original method name
            # is `TakeSnapshot()`, the inferred response type is
            # `TakeSnapshotResponse`.
          "a_key": "", # Properties of the object. Contains field @ype with type URL.
        },
        "name": "A String", # The server-assigned name, which is only unique within the same service that
            # originally returns it. If you use the default HTTP mapping, the
            # `name` should have the format of `operations/some/unique/name`.
        "error": { # The `Status` type defines a logical error model that is suitable for different # The error result of the operation in case of failure.
            # programming environments, including REST APIs and RPC APIs. It is used by
            # [gRPC](https://github.com/grpc). The error model is designed to be:
            #
            # - Simple to use and understand for most users
            # - Flexible enough to meet unexpected needs
            #
            # # Overview
            #
            # The `Status` message contains three pieces of data: error code, error message,
            # and error details. The error code should be an enum value of
            # google.rpc.Code, but it may accept additional error codes if needed.  The
            # error message should be a developer-facing English message that helps
            # developers *understand* and *resolve* the error. If a localized user-facing
            # error message is needed, put the localized message in the error details or
            # localize it in the client. The optional error details may contain arbitrary
            # information about the error. There is a predefined set of error detail types
            # in the package `google.rpc` which can be used for common error conditions.
            #
            # # Language mapping
            #
            # The `Status` message is the logical representation of the error model, but it
            # is not necessarily the actual wire format. When the `Status` message is
            # exposed in different client libraries and different wire protocols, it can be
            # mapped differently. For example, it will likely be mapped to some exceptions
            # in Java, but more likely mapped to some error codes in C.
            #
            # # Other uses
            #
            # The error model and the `Status` message can be used in a variety of
            # environments, either with or without APIs, to provide a
            # consistent developer experience across different environments.
            #
            # Example uses of this error model include:
            #
            # - Partial errors. If a service needs to return partial errors to the client,
            #     it may embed the `Status` in the normal response to indicate the partial
            #     errors.
            #
            # - Workflow errors. A typical workflow has multiple steps. Each step may
            #     have a `Status` message for error reporting purpose.
            #
            # - Batch operations. If a client uses batch request and batch response, the
            #     `Status` message should be used directly inside batch response, one for
            #     each error sub-response.
            #
            # - Asynchronous operations. If an API call embeds asynchronous operation
            #     results in its response, the status of those operations should be
            #     represented directly using the `Status` message.
            #
            # - Logging. If some API errors are stored in logs, the message `Status` could
            #     be used directly after any stripping needed for security/privacy reasons.
          "message": "A String", # A developer-facing error message, which should be in English. Any
              # user-facing error message should be localized and sent in the
              # google.rpc.Status.details field, or localized by the client.
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
          "details": [ # A list of messages that carry the error details.  There will be a
              # common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @ype with type URL.
            },
          ],
        },
      }

`get(projectId, id, x__xgafv=None)`

    Returns information about a previously requested build.

    The Build that is returned includes its status (e.g., success or failure,
    or in-progress), and timing information.

    Args:
      projectId: string, ID of the project. (required)
      id: string, ID of the build. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A build resource in the Container Builder API.
          #
          # At a high level, a Build describes where to find source code, how to build
          # it (for example, the builder image to run on the source), and what tag to
          # apply to the built image when it is pushed to Google Container Registry.
        "status": "A String", # Status of the build.
            # @OutputOnly
        "finishTime": "A String", # Time at which execution of the build was finished.
            # @OutputOnly
        "startTime": "A String", # Time at which execution of the build was started.
            # @OutputOnly
        "statusDetail": "A String", # Customer-readable message about the current status.
            # @OutputOnly
        "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
            # [Bucket Name
            # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
            # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
        "results": { # Results describes the artifacts created by the build pipeline. # Results of the build.
            # @OutputOnly
          "images": [ # Images that were built as a part of the build.
            { # BuiltImage describes an image built by the pipeline.
              "name": "A String", # Name used to push the container image to Google Container Registry, as
                  # presented to `docker push`.
              "digest": "A String", # Docker Registry 2.0 digest.
            },
          ],
        },
        "createTime": "A String", # Time at which the build was created.
            # @OutputOnly
        "source": { # Source describes the location of the source in a supported storage # Describes where to find the source files to build.
            # service.
          "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
              # Storage.
              # Google Cloud Storage.
            "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                # omitted, the latest generation will be used.
            "object": "A String", # Google Cloud Storage object containing source.
                #
                # This object must be a gzipped archive file (.tar.gz) containing source to
                # build.
            "bucket": "A String", # Google Cloud Storage bucket containing source (see
                # [Bucket Name
                # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
          },
        },
        "steps": [ # Describes the operations to be performed on the workspace.
          { # BuildStep describes a step to perform in the build pipeline.
            "args": [ # Command-line arguments to use when running this step's container.
              "A String",
            ],
            "name": "A String", # Name of the container image to use for creating this stage in the
                # pipeline, as presented to `docker pull`.
            "dir": "A String", # Working directory (relative to project source root) to use when running
                # this operation's container.
            "env": [ # Additional environment variables to set for this step's container.
              "A String",
            ],
          },
        ],
        "timeout": "A String", # Amount of time that this build should be allowed to run, to second
            # granularity. If this amount of time elapses, work on the build will cease
            # and the build status will be TIMEOUT.
            #
            # Default time is ten minutes.
        "projectId": "A String", # ID of the project.
            # @OutputOnly.
        "images": [ # List of images expected to be built and pushed to Google Container
            # Registry. If an image is listed here and the image is not produced by
            # one of the build steps, the build will fail. Any images present when
            # the build steps are complete will be pushed to Container Registry.
          "A String",
        ],
        "id": "A String", # Unique identifier of the build.
            # @OutputOnly
      }

`list(projectId, pageSize=None, pageToken=None, x__xgafv=None)`

    Lists previously requested builds.

    Previously requested builds may still be in-progress, or may have finished
    successfully or unsuccessfully.

    Args:
      projectId: string, ID of the project. (required)
      pageSize: integer, Number of results to return in the list.
      pageToken: string, Token to provide to skip to a particular spot in the list.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response including listed builds.
        "nextPageToken": "A String", # Token to receive the next page of results.
        "builds": [ # Builds will be sorted by create_time, descending.
          { # A build resource in the Container Builder API.
              #
              # At a high level, a Build describes where to find source code, how to build
              # it (for example, the builder image to run on the source), and what tag to
              # apply to the built image when it is pushed to Google Container Registry.
            "status": "A String", # Status of the build.
                # @OutputOnly
            "finishTime": "A String", # Time at which execution of the build was finished.
                # @OutputOnly
            "startTime": "A String", # Time at which execution of the build was started.
                # @OutputOnly
            "statusDetail": "A String", # Customer-readable message about the current status.
                # @OutputOnly
            "logsBucket": "A String", # Google Cloud Storage bucket where logs should be written (see
                # [Bucket Name
                # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
                # Logs file names will be of the format `${logs_bucket}/log-${build_id}.txt`.
            "results": { # Results describes the artifacts created by the build pipeline. # Results of the build.
                # @OutputOnly
              "images": [ # Images that were built as a part of the build.
                { # BuiltImage describes an image built by the pipeline.
                  "name": "A String", # Name used to push the container image to Google Container Registry, as
                      # presented to `docker push`.
                  "digest": "A String", # Docker Registry 2.0 digest.
                },
              ],
            },
            "createTime": "A String", # Time at which the build was created.
                # @OutputOnly
            "source": { # Source describes the location of the source in a supported storage # Describes where to find the source files to build.
                # service.
              "storageSource": { # StorageSource describes the location of the source in an archive file in # If provided, get the source from this location in in Google Cloud
                  # Storage.
                  # Google Cloud Storage.
                "generation": "A String", # Google Cloud Storage generation for the object. If the generation is
                    # omitted, the latest generation will be used.
                "object": "A String", # Google Cloud Storage object containing source.
                    #
                    # This object must be a gzipped archive file (.tar.gz) containing source to
                    # build.
                "bucket": "A String", # Google Cloud Storage bucket containing source (see
                    # [Bucket Name
                    # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)).
              },
            },
            "steps": [ # Describes the operations to be performed on the workspace.
              { # BuildStep describes a step to perform in the build pipeline.
                "args": [ # Command-line arguments to use when running this step's container.
                  "A String",
                ],
                "name": "A String", # Name of the container image to use for creating this stage in the
                    # pipeline, as presented to `docker pull`.
                "dir": "A String", # Working directory (relative to project source root) to use when running
                    # this operation's container.
                "env": [ # Additional environment variables to set for this step's container.
                  "A String",
                ],
              },
            ],
            "timeout": "A String", # Amount of time that this build should be allowed to run, to second
                # granularity. If this amount of time elapses, work on the build will cease
                # and the build status will be TIMEOUT.
                #
                # Default time is ten minutes.
            "projectId": "A String", # ID of the project.
                # @OutputOnly.
            "images": [ # List of images expected to be built and pushed to Google Container
                # Registry. If an image is listed here and the image is not produced by
                # one of the build steps, the build will fail. Any images present when
                # the build steps are complete will be pushed to Container Registry.
              "A String",
            ],
            "id": "A String", # Unique identifier of the build.
                # @OutputOnly
          },
        ],
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.