Class CreateSandboxDetails.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • warmpoolName

        public CreateSandboxDetails.Builder warmpoolName​(String warmpoolName)
        Name of a MANAGED or CUSTOM warm pool in the owning project.

        Runtime and shape are derived from the pool; explicit values must match. Deleting pools cannot be used. Snapshot restore, credential brokerage, and nested resource principals are not supported with named pools. An empty pool may cold-create using its same template, including when desired capacity is zero. Zero capacity stops idle prewarming; it does not prevent creation from an available applied template. When warmpoolName is omitted, a built-in runtime can automatically select an eligible named MANAGED pool in the same project matching its runtime and shape. Omitted runtime defaults to python-3.11 and omitted shape defaults to SMALL for automatic matching. A digest-pinned customer image can automatically select an eligible CUSTOM pool in the same project matching its canonical registry host, repository, digest and shape. Tag-based customer images are not automatically matched. Matching pools are considered in name order; the first with a valid applied template is selected without reading ready counts. Empty pools and zero desired or applied capacity still allow cold creation through the selected template. If no eligible pool is found or automatic lookup is unavailable, built-in runtimes use the existing managed runtime path, and customer images use the ordinary direct customer-image path with its existing validation. Automatic matching does not apply when source is supplied, including snapshot restore, or when credential brokerage or nested resource principals are used. Explicit names retain strict validation and do not fall back to automatic matching or another creation path. Retries preserve the original persisted pool binding or the original managed or direct customer-image route, even when matching pools change. Sandbox and SandboxSummary report an automatically selected pool in warmpoolName.

        Parameters:
        warmpoolName - the value to set
        Returns:
        this builder
      • displayName

        public CreateSandboxDetails.Builder displayName​(String displayName)
        User-provided display name for the sandbox.
        Parameters:
        displayName - the value to set
        Returns:
        this builder
      • runtime

        public CreateSandboxDetails.Builder runtime​(String runtime)
        Runtime identifier for the sandbox, either a built-in runtime such as python-3.11 or a same-region Oracle Cloud Infrastructure Registry customer image reference.
        Parameters:
        runtime - the value to set
        Returns:
        this builder
      • publishedPortAuthMode

        public CreateSandboxDetails.Builder publishedPortAuthMode​(Sandbox.PublishedPortAuthMode publishedPortAuthMode)
        Authorization for all published-port HTTP requests and WebSocket handshakes.

        OCI_IAM requires Sandbox use and project read permission on the owning project. Omission defaults to OCI_IAM for new sandboxes with published ports in enabled tenancies; elsewhere omission retains legacy behavior. Explicit OCI_IAM outside the rollout, null, unsupported values, or a mode without published ports are rejected. The effective mode is immutable and is preserved when restoring protected snapshots.

        Parameters:
        publishedPortAuthMode - the value to set
        Returns:
        this builder
      • publishPorts

        public CreateSandboxDetails.Builder publishPorts​(List<String> publishPorts)
        Published ports to expose for the sandbox.
        Parameters:
        publishPorts - the value to set
        Returns:
        this builder
      • expiresInMinutes

        public CreateSandboxDetails.Builder expiresInMinutes​(Integer expiresInMinutes)
        Number of minutes from creation until automatic sandbox expiration.

        Use -1 to disable automatic expiration.

        Parameters:
        expiresInMinutes - the value to set
        Returns:
        this builder
      • expirationDuration

        public CreateSandboxDetails.Builder expirationDuration​(String expirationDuration)
        Deprecated.

        Use expiresInMinutes instead. Existing clients may pass -1 to disable automatic expiration.

        Parameters:
        expirationDuration - the value to set
        Returns:
        this builder
      • environmentVariables

        public CreateSandboxDetails.Builder environmentVariables​(List<EnvironmentVariable> environmentVariables)
        Environment variables to inject into the sandbox runtime.
        Parameters:
        environmentVariables - the value to set
        Returns:
        this builder
      • credentialProfileLabel

        public CreateSandboxDetails.Builder credentialProfileLabel​(String credentialProfileLabel)
        The Project credential profile selected for this Sandbox.

        Omit this field to select no credential profile. The selection and its configuration snapshot are immutable for the lifetime of the Sandbox; later Project profile updates apply only to subsequently created Sandboxes after configuration propagation.

        Parameters:
        credentialProfileLabel - the value to set
        Returns:
        this builder