Remote Build Execution API . projects . instances . workerpools

Instance Methods

create(parent, body, x__xgafv=None)

Creates a new worker pool with a specified size and configuration.

delete(name, x__xgafv=None)

Deletes the specified worker pool.

get(name, x__xgafv=None)

Returns the specified worker pool.

list(parent, x__xgafv=None, filter=None)

Lists worker pools in an instance.

patch(name, body, x__xgafv=None)

Updates an existing worker pool with a specified size and/or configuration.

Method Details

create(parent, body, x__xgafv=None)
Creates a new worker pool with a specified size and configuration.
Returns a long running operation which contains a worker pool on
completion. While the long running operation is in progress, any call to
`GetWorkerPool` returns a worker pool in state `CREATING`.

Args:
  parent: string, Resource name of the instance in which to create the new worker pool.
Format: `projects/[PROJECT_ID]/instances/[INSTANCE_ID]`. (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # The request used for `CreateWorkerPool`.
    "workerPool": { # A worker pool resource in the Remote Build Execution API. # Specifies the worker pool to create.
        # The name in the worker pool, if specified, is ignored.
      "workerCount": "A String", # The desired number of workers in the worker pool. Must be a value between
          # 0 and 1000.
      "state": "A String", # Output only. State of the worker pool.
      "workerConfig": { # Defines the configuration to be used for a creating workers in # Specifies the properties, such as machine type and disk size, used for
          # creating workers in a worker pool.
          # the worker pool.
        "machineType": "A String", # Required. Machine type of the worker, such as `n1-standard-2`.
            # See https://cloud.google.com/compute/docs/machine-types for a list of
            # supported machine types. Note that `f1-micro` and `g1-small` are not yet
            # supported.
        "labels": { # Labels associated with the workers.
            # Label keys and values can be no longer than 63 characters, can only contain
            # lowercase letters, numeric characters, underscores and dashes.
            # International letters are permitted. Keys must start with a letter but
            # values are optional.
            # This field is currently ignored in all requests.
          "a_key": "A String",
        },
        "diskType": "A String", # Required. Disk Type to use for the worker.
            # See [Storage
            # options](https://cloud.google.com/compute/docs/disks/#introduction).
            # Currently only `pd-standard` is supported.
        "diskSizeGb": "A String", # Required. Size of the disk attached to the worker, in GB.
            # See https://cloud.google.com/compute/docs/disks/
        "minCpuPlatform": "A String", # Minimum CPU platform to use when creating the worker.
            # See [CPU Platforms](https://cloud.google.com/compute/docs/cpu-platforms).
        "reserved": True or False, # Determines whether the worker is reserved (equivalent to a Compute Engine
            # on-demand VM and therefore won't be preempted).
            # See [Preemptible VMs](https://cloud.google.com/preemptible-vms/) for more
            # details.
      },
      "name": "A String", # WorkerPool resource name formatted as:
          # `projects/[PROJECT_ID]/instances/[INSTANCE_ID]/workerpools/[POOL_ID]`.
          # name should not be populated when creating a worker pool since it is
          # provided in the `poolId` field.
    },
    "parent": "A String", # Resource name of the instance in which to create the new worker pool.
        # Format: `projects/[PROJECT_ID]/instances/[INSTANCE_ID]`.
    "poolId": "A String", # ID of the created worker pool.
        # A valid pool ID must:
        # be 6-50 characters long,
        # contain only lowercase letters, digits, hyphens and underscores,
        # start with a lowercase letter, and
        # end with a lowercase letter or a digit.
  }

  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.
    "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
        # different programming environments, including REST APIs and RPC APIs. It is
        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
        # three pieces of data: error code, error message, and error details.
        #
        # You can find out more about this error model and how to work with it in the
        # [API Design Guide](https://cloud.google.com/apis/design/errors).
      "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 is a common set of
          # message types for APIs to use.
        {
          "a_key": "", # Properties of the object. Contains field @type 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 @type 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 be a resource name ending with `operations/{unique_id}`.
    "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 @type with type URL.
    },
  }
delete(name, x__xgafv=None)
Deletes the specified worker pool.
Returns a long running operation, which contains a `google.protobuf.Empty`
response on completion.
While the long running operation is in progress, any call to
`GetWorkerPool` returns a worker pool in state `DELETING`.

Args:
  name: string, Name of the worker pool to delete.
Format:
`projects/[PROJECT_ID]/instances/[INSTANCE_ID]/workerpools/[POOL_ID]`. (required)
  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.
    "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
        # different programming environments, including REST APIs and RPC APIs. It is
        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
        # three pieces of data: error code, error message, and error details.
        #
        # You can find out more about this error model and how to work with it in the
        # [API Design Guide](https://cloud.google.com/apis/design/errors).
      "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 is a common set of
          # message types for APIs to use.
        {
          "a_key": "", # Properties of the object. Contains field @type 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 @type 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 be a resource name ending with `operations/{unique_id}`.
    "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 @type with type URL.
    },
  }
get(name, x__xgafv=None)
Returns the specified worker pool.

Args:
  name: string, Name of the worker pool to retrieve.
Format:
`projects/[PROJECT_ID]/instances/[INSTANCE_ID]/workerpools/[POOL_ID]`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A worker pool resource in the Remote Build Execution API.
    "workerCount": "A String", # The desired number of workers in the worker pool. Must be a value between
        # 0 and 1000.
    "state": "A String", # Output only. State of the worker pool.
    "workerConfig": { # Defines the configuration to be used for a creating workers in # Specifies the properties, such as machine type and disk size, used for
        # creating workers in a worker pool.
        # the worker pool.
      "machineType": "A String", # Required. Machine type of the worker, such as `n1-standard-2`.
          # See https://cloud.google.com/compute/docs/machine-types for a list of
          # supported machine types. Note that `f1-micro` and `g1-small` are not yet
          # supported.
      "labels": { # Labels associated with the workers.
          # Label keys and values can be no longer than 63 characters, can only contain
          # lowercase letters, numeric characters, underscores and dashes.
          # International letters are permitted. Keys must start with a letter but
          # values are optional.
          # This field is currently ignored in all requests.
        "a_key": "A String",
      },
      "diskType": "A String", # Required. Disk Type to use for the worker.
          # See [Storage
          # options](https://cloud.google.com/compute/docs/disks/#introduction).
          # Currently only `pd-standard` is supported.
      "diskSizeGb": "A String", # Required. Size of the disk attached to the worker, in GB.
          # See https://cloud.google.com/compute/docs/disks/
      "minCpuPlatform": "A String", # Minimum CPU platform to use when creating the worker.
          # See [CPU Platforms](https://cloud.google.com/compute/docs/cpu-platforms).
      "reserved": True or False, # Determines whether the worker is reserved (equivalent to a Compute Engine
          # on-demand VM and therefore won't be preempted).
          # See [Preemptible VMs](https://cloud.google.com/preemptible-vms/) for more
          # details.
    },
    "name": "A String", # WorkerPool resource name formatted as:
        # `projects/[PROJECT_ID]/instances/[INSTANCE_ID]/workerpools/[POOL_ID]`.
        # name should not be populated when creating a worker pool since it is
        # provided in the `poolId` field.
  }
list(parent, x__xgafv=None, filter=None)
Lists worker pools in an instance.

Args:
  parent: string, Resource name of the instance.
Format: `projects/[PROJECT_ID]/instances/[INSTANCE_ID]`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format
  filter: string, Optional. A filter to constrain the pools returned. Filters have the form:

   [[AND|OR]   ]...

 is the path for a field or map key in the Pool proto message.
e.g. "configuration.disk_size_gb" or "configuration.labels.key".
 can be one of "<", "<=", ">=", ">", "=", "!=", ":".
":" is a HAS operation for strings and repeated primitive fields.
 is the value to test, case-insensitive for strings. "*" stands for
any value and can be used to test for key presence.
Parenthesis determine AND/OR precedence. In space separated restrictions,
AND is implicit, e.g. "a = b x = y" is equivalent to "a = b AND x = y".

Example filter:
configuration.labels.key1 = * AND (state = RUNNING OR state = UPDATING)

This field is currently ignored in all requests.

Returns:
  An object of the form:

    {
    "workerPools": [ # The list of worker pools in a given instance.
      { # A worker pool resource in the Remote Build Execution API.
        "workerCount": "A String", # The desired number of workers in the worker pool. Must be a value between
            # 0 and 1000.
        "state": "A String", # Output only. State of the worker pool.
        "workerConfig": { # Defines the configuration to be used for a creating workers in # Specifies the properties, such as machine type and disk size, used for
            # creating workers in a worker pool.
            # the worker pool.
          "machineType": "A String", # Required. Machine type of the worker, such as `n1-standard-2`.
              # See https://cloud.google.com/compute/docs/machine-types for a list of
              # supported machine types. Note that `f1-micro` and `g1-small` are not yet
              # supported.
          "labels": { # Labels associated with the workers.
              # Label keys and values can be no longer than 63 characters, can only contain
              # lowercase letters, numeric characters, underscores and dashes.
              # International letters are permitted. Keys must start with a letter but
              # values are optional.
              # This field is currently ignored in all requests.
            "a_key": "A String",
          },
          "diskType": "A String", # Required. Disk Type to use for the worker.
              # See [Storage
              # options](https://cloud.google.com/compute/docs/disks/#introduction).
              # Currently only `pd-standard` is supported.
          "diskSizeGb": "A String", # Required. Size of the disk attached to the worker, in GB.
              # See https://cloud.google.com/compute/docs/disks/
          "minCpuPlatform": "A String", # Minimum CPU platform to use when creating the worker.
              # See [CPU Platforms](https://cloud.google.com/compute/docs/cpu-platforms).
          "reserved": True or False, # Determines whether the worker is reserved (equivalent to a Compute Engine
              # on-demand VM and therefore won't be preempted).
              # See [Preemptible VMs](https://cloud.google.com/preemptible-vms/) for more
              # details.
        },
        "name": "A String", # WorkerPool resource name formatted as:
            # `projects/[PROJECT_ID]/instances/[INSTANCE_ID]/workerpools/[POOL_ID]`.
            # name should not be populated when creating a worker pool since it is
            # provided in the `poolId` field.
      },
    ],
  }
patch(name, body, x__xgafv=None)
Updates an existing worker pool with a specified size and/or configuration.
Returns a long running operation, which contains a worker pool on
completion. While the long running operation is in progress, any call to
`GetWorkerPool` returns a worker pool in state `UPDATING`.

Args:
  name: string, WorkerPool resource name formatted as:
`projects/[PROJECT_ID]/instances/[INSTANCE_ID]/workerpools/[POOL_ID]`.
name should not be populated when creating a worker pool since it is
provided in the `poolId` field. (required)
  body: object, The request body. (required)
    The object takes the form of:

{ # The request used for UpdateWorkerPool.
    "updateMask": "A String", # The update mask applies to worker_pool. For the `FieldMask` definition,
        # see
        # https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
        # If an empty update_mask is provided, only the non-default valued field in
        # the worker pool field will be updated. Note that in order to update a field
        # to the default value (zero, false, empty string) an explicit update_mask
        # must be provided.
    "workerPool": { # A worker pool resource in the Remote Build Execution API. # Specifies the worker pool to update.
      "workerCount": "A String", # The desired number of workers in the worker pool. Must be a value between
          # 0 and 1000.
      "state": "A String", # Output only. State of the worker pool.
      "workerConfig": { # Defines the configuration to be used for a creating workers in # Specifies the properties, such as machine type and disk size, used for
          # creating workers in a worker pool.
          # the worker pool.
        "machineType": "A String", # Required. Machine type of the worker, such as `n1-standard-2`.
            # See https://cloud.google.com/compute/docs/machine-types for a list of
            # supported machine types. Note that `f1-micro` and `g1-small` are not yet
            # supported.
        "labels": { # Labels associated with the workers.
            # Label keys and values can be no longer than 63 characters, can only contain
            # lowercase letters, numeric characters, underscores and dashes.
            # International letters are permitted. Keys must start with a letter but
            # values are optional.
            # This field is currently ignored in all requests.
          "a_key": "A String",
        },
        "diskType": "A String", # Required. Disk Type to use for the worker.
            # See [Storage
            # options](https://cloud.google.com/compute/docs/disks/#introduction).
            # Currently only `pd-standard` is supported.
        "diskSizeGb": "A String", # Required. Size of the disk attached to the worker, in GB.
            # See https://cloud.google.com/compute/docs/disks/
        "minCpuPlatform": "A String", # Minimum CPU platform to use when creating the worker.
            # See [CPU Platforms](https://cloud.google.com/compute/docs/cpu-platforms).
        "reserved": True or False, # Determines whether the worker is reserved (equivalent to a Compute Engine
            # on-demand VM and therefore won't be preempted).
            # See [Preemptible VMs](https://cloud.google.com/preemptible-vms/) for more
            # details.
      },
      "name": "A String", # WorkerPool resource name formatted as:
          # `projects/[PROJECT_ID]/instances/[INSTANCE_ID]/workerpools/[POOL_ID]`.
          # name should not be populated when creating a worker pool since it is
          # provided in the `poolId` field.
    },
  }

  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.
    "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
        # different programming environments, including REST APIs and RPC APIs. It is
        # used by [gRPC](https://github.com/grpc). Each `Status` message contains
        # three pieces of data: error code, error message, and error details.
        #
        # You can find out more about this error model and how to work with it in the
        # [API Design Guide](https://cloud.google.com/apis/design/errors).
      "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 is a common set of
          # message types for APIs to use.
        {
          "a_key": "", # Properties of the object. Contains field @type 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 @type 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 be a resource name ending with `operations/{unique_id}`.
    "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 @type with type URL.
    },
  }