Interface Runnable.ContainerOrBuilder

All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
All Known Implementing Classes:
Runnable.Container, Runnable.Container.Builder
Enclosing class:
Runnable

public static interface Runnable.ContainerOrBuilder extends com.google.protobuf.MessageOrBuilder
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    If set to true, external network access to and from container will be blocked, containers that are with block_external_network as true can still communicate with each other, network cannot be specified in the `container.options` field.
    getCommands(int index)
    Required for some container images.
    com.google.protobuf.ByteString
    getCommandsBytes(int index)
    Required for some container images.
    int
    Required for some container images.
    Required for some container images.
    boolean
    Optional.
    Required for some container images.
    com.google.protobuf.ByteString
    Required for some container images.
    Required.
    com.google.protobuf.ByteString
    Required.
    Required for some container images.
    com.google.protobuf.ByteString
    Required for some container images.
    Required if the container image is from a private Docker registry.
    com.google.protobuf.ByteString
    Required if the container image is from a private Docker registry.
    Required if the container image is from a private Docker registry.
    com.google.protobuf.ByteString
    Required if the container image is from a private Docker registry.
    getVolumes(int index)
    Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match `--volume` option for the `docker run` command—for example, `/foo:/bar` or `/foo:/bar:ro`.
    com.google.protobuf.ByteString
    getVolumesBytes(int index)
    Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match `--volume` option for the `docker run` command—for example, `/foo:/bar` or `/foo:/bar:ro`.
    int
    Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match `--volume` option for the `docker run` command—for example, `/foo:/bar` or `/foo:/bar:ro`.
    Volumes to mount (bind mount) from the host machine files or directories into the container, formatted to match `--volume` option for the `docker run` command—for example, `/foo:/bar` or `/foo:/bar:ro`.

    Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

    isInitialized

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • Method Details

    • getImageUri

      String getImageUri()
       Required. The URI to pull the container image from.
       
      string image_uri = 1;
      Returns:
      The imageUri.
    • getImageUriBytes

      com.google.protobuf.ByteString getImageUriBytes()
       Required. The URI to pull the container image from.
       
      string image_uri = 1;
      Returns:
      The bytes for imageUri.
    • getCommandsList

      List<String> getCommandsList()
       Required for some container images. Overrides the `CMD` specified in the
       container. If there is an `ENTRYPOINT` (either in the container image or
       with the `entrypoint` field below) then these commands are appended as
       arguments to the `ENTRYPOINT`.
       
      repeated string commands = 2;
      Returns:
      A list containing the commands.
    • getCommandsCount

      int getCommandsCount()
       Required for some container images. Overrides the `CMD` specified in the
       container. If there is an `ENTRYPOINT` (either in the container image or
       with the `entrypoint` field below) then these commands are appended as
       arguments to the `ENTRYPOINT`.
       
      repeated string commands = 2;
      Returns:
      The count of commands.
    • getCommands

      String getCommands(int index)
       Required for some container images. Overrides the `CMD` specified in the
       container. If there is an `ENTRYPOINT` (either in the container image or
       with the `entrypoint` field below) then these commands are appended as
       arguments to the `ENTRYPOINT`.
       
      repeated string commands = 2;
      Parameters:
      index - The index of the element to return.
      Returns:
      The commands at the given index.
    • getCommandsBytes

      com.google.protobuf.ByteString getCommandsBytes(int index)
       Required for some container images. Overrides the `CMD` specified in the
       container. If there is an `ENTRYPOINT` (either in the container image or
       with the `entrypoint` field below) then these commands are appended as
       arguments to the `ENTRYPOINT`.
       
      repeated string commands = 2;
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the commands at the given index.
    • getEntrypoint

      String getEntrypoint()
       Required for some container images. Overrides the `ENTRYPOINT` specified
       in the container.
       
      string entrypoint = 3;
      Returns:
      The entrypoint.
    • getEntrypointBytes

      com.google.protobuf.ByteString getEntrypointBytes()
       Required for some container images. Overrides the `ENTRYPOINT` specified
       in the container.
       
      string entrypoint = 3;
      Returns:
      The bytes for entrypoint.
    • getVolumesList

      List<String> getVolumesList()
       Volumes to mount (bind mount) from the host machine files or directories
       into the container, formatted to match `--volume` option for the
       `docker run` command&mdash;for example, `/foo:/bar` or `/foo:/bar:ro`.
      
       If the `TaskSpec.Volumes` field is specified but this field is not, Batch
       will mount each volume from the host machine to the container with the
       same mount path by default. In this case, the default mount option for
       containers will be read-only (`ro`) for existing persistent disks and
       read-write (`rw`) for other volume types, regardless of the original
       mount options specified in `TaskSpec.Volumes`. If you need different
       mount settings, you can explicitly configure them in this field.
       
      repeated string volumes = 7;
      Returns:
      A list containing the volumes.
    • getVolumesCount

      int getVolumesCount()
       Volumes to mount (bind mount) from the host machine files or directories
       into the container, formatted to match `--volume` option for the
       `docker run` command&mdash;for example, `/foo:/bar` or `/foo:/bar:ro`.
      
       If the `TaskSpec.Volumes` field is specified but this field is not, Batch
       will mount each volume from the host machine to the container with the
       same mount path by default. In this case, the default mount option for
       containers will be read-only (`ro`) for existing persistent disks and
       read-write (`rw`) for other volume types, regardless of the original
       mount options specified in `TaskSpec.Volumes`. If you need different
       mount settings, you can explicitly configure them in this field.
       
      repeated string volumes = 7;
      Returns:
      The count of volumes.
    • getVolumes

      String getVolumes(int index)
       Volumes to mount (bind mount) from the host machine files or directories
       into the container, formatted to match `--volume` option for the
       `docker run` command&mdash;for example, `/foo:/bar` or `/foo:/bar:ro`.
      
       If the `TaskSpec.Volumes` field is specified but this field is not, Batch
       will mount each volume from the host machine to the container with the
       same mount path by default. In this case, the default mount option for
       containers will be read-only (`ro`) for existing persistent disks and
       read-write (`rw`) for other volume types, regardless of the original
       mount options specified in `TaskSpec.Volumes`. If you need different
       mount settings, you can explicitly configure them in this field.
       
      repeated string volumes = 7;
      Parameters:
      index - The index of the element to return.
      Returns:
      The volumes at the given index.
    • getVolumesBytes

      com.google.protobuf.ByteString getVolumesBytes(int index)
       Volumes to mount (bind mount) from the host machine files or directories
       into the container, formatted to match `--volume` option for the
       `docker run` command&mdash;for example, `/foo:/bar` or `/foo:/bar:ro`.
      
       If the `TaskSpec.Volumes` field is specified but this field is not, Batch
       will mount each volume from the host machine to the container with the
       same mount path by default. In this case, the default mount option for
       containers will be read-only (`ro`) for existing persistent disks and
       read-write (`rw`) for other volume types, regardless of the original
       mount options specified in `TaskSpec.Volumes`. If you need different
       mount settings, you can explicitly configure them in this field.
       
      repeated string volumes = 7;
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the volumes at the given index.
    • getOptions

      String getOptions()
       Required for some container images. Arbitrary additional options to
       include in the `docker run` command when running this container&mdash;for
       example, `--network host`. For the `--volume` option, use the `volumes`
       field for the container.
       
      string options = 8;
      Returns:
      The options.
    • getOptionsBytes

      com.google.protobuf.ByteString getOptionsBytes()
       Required for some container images. Arbitrary additional options to
       include in the `docker run` command when running this container&mdash;for
       example, `--network host`. For the `--volume` option, use the `volumes`
       field for the container.
       
      string options = 8;
      Returns:
      The bytes for options.
    • getBlockExternalNetwork

      boolean getBlockExternalNetwork()
       If set to true, external network access to and from container will be
       blocked, containers that are with block_external_network as true can
       still communicate with each other, network cannot be specified in the
       `container.options` field.
       
      bool block_external_network = 9;
      Returns:
      The blockExternalNetwork.
    • getUsername

      String getUsername()
       Required if the container image is from a private Docker registry. The
       username to login to the Docker registry that contains the image.
      
       You can either specify the username directly by using plain text or
       specify an encrypted username by using a Secret Manager secret:
       `projects/*/secrets/*/versions/*`. However, using a secret is
       recommended for enhanced security.
      
       Caution: If you specify the username using plain text, you risk the
       username being exposed to any users who can view the job or its logs.
       To avoid this risk, specify a secret that contains the username instead.
      
       Learn more about [Secret
       Manager](https://cloud.google.com/secret-manager/docs/) and [using
       Secret Manager with
       Batch](https://cloud.google.com/batch/docs/create-run-job-secret-manager).
       
      string username = 10;
      Returns:
      The username.
    • getUsernameBytes

      com.google.protobuf.ByteString getUsernameBytes()
       Required if the container image is from a private Docker registry. The
       username to login to the Docker registry that contains the image.
      
       You can either specify the username directly by using plain text or
       specify an encrypted username by using a Secret Manager secret:
       `projects/*/secrets/*/versions/*`. However, using a secret is
       recommended for enhanced security.
      
       Caution: If you specify the username using plain text, you risk the
       username being exposed to any users who can view the job or its logs.
       To avoid this risk, specify a secret that contains the username instead.
      
       Learn more about [Secret
       Manager](https://cloud.google.com/secret-manager/docs/) and [using
       Secret Manager with
       Batch](https://cloud.google.com/batch/docs/create-run-job-secret-manager).
       
      string username = 10;
      Returns:
      The bytes for username.
    • getPassword

      String getPassword()
       Required if the container image is from a private Docker registry. The
       password to login to the Docker registry that contains the image.
      
       For security, it is strongly recommended to specify an
       encrypted password by using a Secret Manager secret:
       `projects/*/secrets/*/versions/*`.
      
       Warning: If you specify the password using plain text, you risk the
       password being exposed to any users who can view the job or its logs.
       To avoid this risk, specify a secret that contains the password instead.
      
       Learn more about [Secret
       Manager](https://cloud.google.com/secret-manager/docs/) and [using
       Secret Manager with
       Batch](https://cloud.google.com/batch/docs/create-run-job-secret-manager).
       
      string password = 11;
      Returns:
      The password.
    • getPasswordBytes

      com.google.protobuf.ByteString getPasswordBytes()
       Required if the container image is from a private Docker registry. The
       password to login to the Docker registry that contains the image.
      
       For security, it is strongly recommended to specify an
       encrypted password by using a Secret Manager secret:
       `projects/*/secrets/*/versions/*`.
      
       Warning: If you specify the password using plain text, you risk the
       password being exposed to any users who can view the job or its logs.
       To avoid this risk, specify a secret that contains the password instead.
      
       Learn more about [Secret
       Manager](https://cloud.google.com/secret-manager/docs/) and [using
       Secret Manager with
       Batch](https://cloud.google.com/batch/docs/create-run-job-secret-manager).
       
      string password = 11;
      Returns:
      The bytes for password.
    • getEnableImageStreaming

      boolean getEnableImageStreaming()
       Optional. If set to true, this container runnable uses Image streaming.
      
       Use Image streaming to allow the runnable to initialize without
       waiting for the entire container image to download, which can
       significantly reduce startup time for large container images.
      
       When `enableImageStreaming` is set to true, the container
       runtime is [containerd](https://containerd.io/) instead of Docker.
       Additionally, this container runnable only supports the following
       `container` subfields: `imageUri`,
       `commands[]`, `entrypoint`, and
       `volumes[]`; any other `container` subfields are ignored.
      
       For more information about the requirements and limitations for using
       Image streaming with Batch, see the [`image-streaming`
       sample on
       GitHub](https://github.com/GoogleCloudPlatform/batch-samples/tree/main/api-samples/image-streaming).
       
      bool enable_image_streaming = 12 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The enableImageStreaming.