From 5b47d5a664f07f6d057403cb844a63cd0f97ddeb Mon Sep 17 00:00:00 2001 From: "databricks-ci-ghec-2[bot]" <184307802+databricks-ci-ghec-2[bot]@users.noreply.github.com> Date: Thu, 16 Jul 2026 03:55:01 +0000 Subject: [PATCH] Update SDK to e0647ba6804a08bc727c2c58a0f4cd9774da1313 --- .codegen/_openapi_sha | 2 +- .gitattributes | 12 ++ NEXT_CHANGELOG.md | 12 ++ .../com/databricks/sdk/WorkspaceClient.java | 2 +- .../CreateDeploymentRequest.java | 5 +- .../service/bundledeployments/Deployment.java | 22 +++ .../sdk/service/catalog/ConnectionType.java | 1 + .../service/cleanrooms/CleanRoomAsset.java | 19 ++ .../cleanrooms/CleanRoomAssetAssetType.java | 1 + .../cleanrooms/CleanRoomAssetJarAnalysis.java | 171 ++++++++++++++++ .../CleanRoomJarAnalysisReview.java | 110 +++++++++++ ...rAnalysisReviewJarAnalysisReviewState.java | 12 ++ ...lysisReviewJarAnalysisReviewSubReason.java | 10 + .../service/cleanrooms/CleanRoomTaskRun.java | 183 ++++++++++++++++++ ...omTaskRunCleanRoomTaskAnalysisDetails.java | 59 ++++++ .../CleanRoomTaskRunOutputInfo.java | 59 ++++++ .../cleanrooms/CleanRoomTaskRunsAPI.java | 23 ++- .../cleanrooms/CleanRoomTaskRunsImpl.java | 18 ++ .../cleanrooms/CleanRoomTaskRunsService.java | 6 +- .../service/cleanrooms/CleanRoomTaskType.java | 11 ++ .../CreateCleanRoomAssetReviewRequest.java | 18 +- .../CreateCleanRoomAssetReviewResponse.java | 37 +++- .../cleanrooms/JarAnalysisVersionReview.java | 78 ++++++++ .../ListCleanRoomTaskRunsRequest.java | 108 +++++++++++ .../ListCleanRoomTaskRunsResponse.java | 62 ++++++ .../compute/InstancePoolAzureAttributes.java | 34 +++- .../service/disasterrecovery/StableUrl.java | 26 ++- .../sdk/service/jobs/AiRuntimeTask.java | 27 +-- .../jobs/ComputeSpecAcceleratorType.java | 4 +- .../sdk/service/jobs/DeploymentSpec.java | 14 +- .../sdk/service/ml/LifetimeWindow.java | 52 +++++ .../databricks/sdk/service/ml/TimeWindow.java | 17 +- .../pipelines/TableSpecificConfig.java | 19 ++ 33 files changed, 1192 insertions(+), 42 deletions(-) create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetJarAnalysis.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReview.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewState.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRun.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunCleanRoomTaskAnalysisDetails.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunOutputInfo.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskType.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/JarAnalysisVersionReview.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsRequest.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsResponse.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LifetimeWindow.java diff --git a/.codegen/_openapi_sha b/.codegen/_openapi_sha index 736224f73..3fa3c1d2d 100644 --- a/.codegen/_openapi_sha +++ b/.codegen/_openapi_sha @@ -1 +1 @@ -732dd0f076d8549a12a398ccbc0fcc8ed4816342 \ No newline at end of file +e0647ba6804a08bc727c2c58a0f4cd9774da1313 \ No newline at end of file diff --git a/.gitattributes b/.gitattributes index a3d4b796b..b50ee9949 100644 --- a/.gitattributes +++ b/.gitattributes @@ -800,6 +800,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoo databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetAssetType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetForeignTable.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetForeignTableLocalDetails.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetJarAnalysis.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetNotebook.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetRevisionsAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetRevisionsImpl.java linguist-generated=true @@ -819,6 +820,9 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoo databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAutoApprovalRulesImpl.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAutoApprovalRulesService.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomCollaborator.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReview.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewState.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomNotebookReview.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomNotebookReviewNotebookReviewState.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomNotebookReviewNotebookReviewSubReason.java linguist-generated=true @@ -827,9 +831,13 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoo databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomOutputCatalogOutputCatalogStatus.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomRemoteDetail.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomStatusEnum.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRun.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunCleanRoomTaskAnalysisDetails.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunOutputInfo.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsImpl.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsService.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomsAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomsImpl.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomsService.java linguist-generated=true @@ -849,6 +857,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/GetClean databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/GetCleanRoomAssetRevisionRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/GetCleanRoomAutoApprovalRuleRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/GetCleanRoomRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/JarAnalysisVersionReview.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomAssetRevisionsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomAssetRevisionsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomAssetsRequest.java linguist-generated=true @@ -857,6 +866,8 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListClea databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomAutoApprovalRulesResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomNotebookTaskRunsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomNotebookTaskRunsResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/NotebookVersionReview.java linguist-generated=true @@ -2156,6 +2167,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/KafkaSubscriptio databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LastDistinctFunction.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LastFunction.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LastNFunction.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LifetimeWindow.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LineageContext.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LinkedFeature.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/ListArtifactsRequest.java linguist-generated=true diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md index 4e4088566..db39f0642 100644 --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -15,3 +15,15 @@ ### Internal Changes ### API Changes +* Add `listCleanRoomTaskRunsHandler()` method for `workspaceClient.cleanRoomTaskRuns()` service. +* Add `initialParentPath` field for `com.databricks.sdk.service.bundledeployments.Deployment`. +* Add `jarAnalysis` field for `com.databricks.sdk.service.cleanrooms.CleanRoomAsset`. +* Add `jarAnalysisReview` field for `com.databricks.sdk.service.cleanrooms.CreateCleanRoomAssetReviewRequest`. +* Add `jarAnalysisReviewState` and `jarAnalysisReviews` fields for `com.databricks.sdk.service.cleanrooms.CreateCleanRoomAssetReviewResponse`. +* Add `capacityReservationGroup` field for `com.databricks.sdk.service.compute.InstancePoolAzureAttributes`. +* Add `effectiveWorkspaceId` field for `com.databricks.sdk.service.disasterrecovery.StableUrl`. +* Add `lifetime` field for `com.databricks.sdk.service.ml.TimeWindow`. +* Add `sourceMetadataColumn` field for `com.databricks.sdk.service.pipelines.TableSpecificConfig`. +* Add `JDBC` enum value for `com.databricks.sdk.service.catalog.ConnectionType`. +* Add `JAR_ANALYSIS` enum value for `com.databricks.sdk.service.cleanrooms.CleanRoomAssetAssetType`. +* [Breaking] Remove `codeSourcePath` field for `com.databricks.sdk.service.jobs.AiRuntimeTask`. \ No newline at end of file diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java index 9b5f2659f..5d87fdd64 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java @@ -688,7 +688,7 @@ public CleanRoomAutoApprovalRulesAPI cleanRoomAutoApprovalRules() { return cleanRoomAutoApprovalRulesAPI; } - /** Clean room task runs are the executions of notebooks in a clean room. */ + /** Clean room task runs are the executions of notebooks and JAR analyses in a clean room. */ public CleanRoomTaskRunsAPI cleanRoomTaskRuns() { return cleanRoomTaskRunsAPI; } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/CreateDeploymentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/CreateDeploymentRequest.java index 5b912d11a..aa582f638 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/CreateDeploymentRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/CreateDeploymentRequest.java @@ -11,7 +11,10 @@ @Generated public class CreateDeploymentRequest { - /** The deployment to create. */ + /** + * The deployment to create. Caller must set `initial_parent_path`; every other field is populated + * by the service. + */ @JsonProperty("deployment") private Deployment deployment; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/Deployment.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/Deployment.java index 1e4a112fe..82c96055f 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/Deployment.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/Deployment.java @@ -52,6 +52,16 @@ public class Deployment { @JsonProperty("git_info") private GitInfo gitInfo; + /** + * The workspace path of the folder where the deployment is initially created. Includes a leading + * slash and no trailing slash. On create, the deployment is registered as a typed + * BUNDLE_DEPLOYMENT tree node under this folder, which must already exist. This field is input + * only and is not returned in create, get, or list responses. The service rejects create requests + * that omit it. + */ + @JsonProperty("initial_parent_path") + private String initialParentPath; + /** The version_id of the most recent deployment version. */ @JsonProperty("last_version_id") private String lastVersionId; @@ -142,6 +152,15 @@ public GitInfo getGitInfo() { return gitInfo; } + public Deployment setInitialParentPath(String initialParentPath) { + this.initialParentPath = initialParentPath; + return this; + } + + public String getInitialParentPath() { + return initialParentPath; + } + public Deployment setLastVersionId(String lastVersionId) { this.lastVersionId = lastVersionId; return this; @@ -208,6 +227,7 @@ public boolean equals(Object o) { && Objects.equals(destroyedBy, that.destroyedBy) && Objects.equals(displayName, that.displayName) && Objects.equals(gitInfo, that.gitInfo) + && Objects.equals(initialParentPath, that.initialParentPath) && Objects.equals(lastVersionId, that.lastVersionId) && Objects.equals(name, that.name) && Objects.equals(status, that.status) @@ -226,6 +246,7 @@ public int hashCode() { destroyedBy, displayName, gitInfo, + initialParentPath, lastVersionId, name, status, @@ -244,6 +265,7 @@ public String toString() { .add("destroyedBy", destroyedBy) .add("displayName", displayName) .add("gitInfo", gitInfo) + .add("initialParentPath", initialParentPath) .add("lastVersionId", lastVersionId) .add("name", name) .add("status", status) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionType.java index 225c96c78..b92d3684b 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionType.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionType.java @@ -16,6 +16,7 @@ public enum ConnectionType { HIVE_METASTORE, HTTP, HUBSPOT, + JDBC, META_MARKETING, MYSQL, ORACLE, diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAsset.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAsset.java index 92ccceeeb..f52fc72b9 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAsset.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAsset.java @@ -39,6 +39,13 @@ public class CleanRoomAsset { @JsonProperty("foreign_table_local_details") private CleanRoomAssetForeignTableLocalDetails foreignTableLocalDetails; + /** + * Jar analysis details available to all collaborators of the clean room. Present if and only if + * **asset_type** is **JAR_ANALYSIS** + */ + @JsonProperty("jar_analysis") + private CleanRoomAssetJarAnalysis jarAnalysis; + /** * A fully qualified name that uniquely identifies the asset within the clean room. This is also * the name displayed in the clean room UI. @@ -148,6 +155,15 @@ public CleanRoomAssetForeignTableLocalDetails getForeignTableLocalDetails() { return foreignTableLocalDetails; } + public CleanRoomAsset setJarAnalysis(CleanRoomAssetJarAnalysis jarAnalysis) { + this.jarAnalysis = jarAnalysis; + return this; + } + + public CleanRoomAssetJarAnalysis getJarAnalysis() { + return jarAnalysis; + } + public CleanRoomAsset setName(String name) { this.name = name; return this; @@ -239,6 +255,7 @@ public boolean equals(Object o) { && Objects.equals(cleanRoomName, that.cleanRoomName) && Objects.equals(foreignTable, that.foreignTable) && Objects.equals(foreignTableLocalDetails, that.foreignTableLocalDetails) + && Objects.equals(jarAnalysis, that.jarAnalysis) && Objects.equals(name, that.name) && Objects.equals(notebook, that.notebook) && Objects.equals(ownerCollaboratorAlias, that.ownerCollaboratorAlias) @@ -258,6 +275,7 @@ public int hashCode() { cleanRoomName, foreignTable, foreignTableLocalDetails, + jarAnalysis, name, notebook, ownerCollaboratorAlias, @@ -277,6 +295,7 @@ public String toString() { .add("cleanRoomName", cleanRoomName) .add("foreignTable", foreignTable) .add("foreignTableLocalDetails", foreignTableLocalDetails) + .add("jarAnalysis", jarAnalysis) .add("name", name) .add("notebook", notebook) .add("ownerCollaboratorAlias", ownerCollaboratorAlias) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetAssetType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetAssetType.java index a344b76b6..dff284ab1 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetAssetType.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetAssetType.java @@ -7,6 +7,7 @@ @Generated public enum CleanRoomAssetAssetType { FOREIGN_TABLE, + JAR_ANALYSIS, NOTEBOOK_FILE, TABLE, VIEW, diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetJarAnalysis.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetJarAnalysis.java new file mode 100644 index 000000000..1011c6401 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetJarAnalysis.java @@ -0,0 +1,171 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class CleanRoomAssetJarAnalysis { + /** + * The full paths in central to the jar files that are added to the library during execution (e.g. + * /Volumes/creator/schema/volume/folder/my_jar_file.jar) Only returned for the owner + * collaborator. + */ + @JsonProperty("central_jar_file_paths") + private Collection centralJarFilePaths; + + /** Optional description of the jar analysis shown to all collaborators. */ + @JsonProperty("description") + private String description; + + /** + * The serverless environment version used to execute the JAR analysis (e.g. "4"). Defaults to + * "4-scala-preview" if not specified. + */ + @JsonProperty("environment_version") + private String environmentVersion; + + /** Server generated etag that represents the jar analysis version. */ + @JsonProperty("etag") + private String etag; + + /** + * The full name of the class containing the main method to be executed. This class must be + * contained in a JAR provided as a library The code must use `SparkContext.getOrCreate` to obtain + * a Spark context; otherwise, runs of the job fail + */ + @JsonProperty("main_class_name") + private String mainClassName; + + /** Top-level status derived from all reviews. */ + @JsonProperty("review_state") + private CleanRoomJarAnalysisReviewJarAnalysisReviewState reviewState; + + /** All existing approvals or rejections. */ + @JsonProperty("reviews") + private Collection reviews; + + /** Collaborators that can run the jar. */ + @JsonProperty("runner_collaborator_aliases") + private Collection runnerCollaboratorAliases; + + public CleanRoomAssetJarAnalysis setCentralJarFilePaths(Collection centralJarFilePaths) { + this.centralJarFilePaths = centralJarFilePaths; + return this; + } + + public Collection getCentralJarFilePaths() { + return centralJarFilePaths; + } + + public CleanRoomAssetJarAnalysis setDescription(String description) { + this.description = description; + return this; + } + + public String getDescription() { + return description; + } + + public CleanRoomAssetJarAnalysis setEnvironmentVersion(String environmentVersion) { + this.environmentVersion = environmentVersion; + return this; + } + + public String getEnvironmentVersion() { + return environmentVersion; + } + + public CleanRoomAssetJarAnalysis setEtag(String etag) { + this.etag = etag; + return this; + } + + public String getEtag() { + return etag; + } + + public CleanRoomAssetJarAnalysis setMainClassName(String mainClassName) { + this.mainClassName = mainClassName; + return this; + } + + public String getMainClassName() { + return mainClassName; + } + + public CleanRoomAssetJarAnalysis setReviewState( + CleanRoomJarAnalysisReviewJarAnalysisReviewState reviewState) { + this.reviewState = reviewState; + return this; + } + + public CleanRoomJarAnalysisReviewJarAnalysisReviewState getReviewState() { + return reviewState; + } + + public CleanRoomAssetJarAnalysis setReviews(Collection reviews) { + this.reviews = reviews; + return this; + } + + public Collection getReviews() { + return reviews; + } + + public CleanRoomAssetJarAnalysis setRunnerCollaboratorAliases( + Collection runnerCollaboratorAliases) { + this.runnerCollaboratorAliases = runnerCollaboratorAliases; + return this; + } + + public Collection getRunnerCollaboratorAliases() { + return runnerCollaboratorAliases; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CleanRoomAssetJarAnalysis that = (CleanRoomAssetJarAnalysis) o; + return Objects.equals(centralJarFilePaths, that.centralJarFilePaths) + && Objects.equals(description, that.description) + && Objects.equals(environmentVersion, that.environmentVersion) + && Objects.equals(etag, that.etag) + && Objects.equals(mainClassName, that.mainClassName) + && Objects.equals(reviewState, that.reviewState) + && Objects.equals(reviews, that.reviews) + && Objects.equals(runnerCollaboratorAliases, that.runnerCollaboratorAliases); + } + + @Override + public int hashCode() { + return Objects.hash( + centralJarFilePaths, + description, + environmentVersion, + etag, + mainClassName, + reviewState, + reviews, + runnerCollaboratorAliases); + } + + @Override + public String toString() { + return new ToStringer(CleanRoomAssetJarAnalysis.class) + .add("centralJarFilePaths", centralJarFilePaths) + .add("description", description) + .add("environmentVersion", environmentVersion) + .add("etag", etag) + .add("mainClassName", mainClassName) + .add("reviewState", reviewState) + .add("reviews", reviews) + .add("runnerCollaboratorAliases", runnerCollaboratorAliases) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReview.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReview.java new file mode 100644 index 000000000..d98bae9f0 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReview.java @@ -0,0 +1,110 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +/** + * This only applies to a JAR Analysis as a first-class asset in the Clean Room, and not to Volumes + */ +@Generated +public class CleanRoomJarAnalysisReview { + /** review comment */ + @JsonProperty("comment") + private String comment; + + /** timestamp of when the review was submitted */ + @JsonProperty("created_at_millis") + private Long createdAtMillis; + + /** review outcome */ + @JsonProperty("review_state") + private CleanRoomJarAnalysisReviewJarAnalysisReviewState reviewState; + + /** specified when the review was not explicitly made by a user */ + @JsonProperty("review_sub_reason") + private CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason reviewSubReason; + + /** collaborator alias of the reviewer */ + @JsonProperty("reviewer_collaborator_alias") + private String reviewerCollaboratorAlias; + + public CleanRoomJarAnalysisReview setComment(String comment) { + this.comment = comment; + return this; + } + + public String getComment() { + return comment; + } + + public CleanRoomJarAnalysisReview setCreatedAtMillis(Long createdAtMillis) { + this.createdAtMillis = createdAtMillis; + return this; + } + + public Long getCreatedAtMillis() { + return createdAtMillis; + } + + public CleanRoomJarAnalysisReview setReviewState( + CleanRoomJarAnalysisReviewJarAnalysisReviewState reviewState) { + this.reviewState = reviewState; + return this; + } + + public CleanRoomJarAnalysisReviewJarAnalysisReviewState getReviewState() { + return reviewState; + } + + public CleanRoomJarAnalysisReview setReviewSubReason( + CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason reviewSubReason) { + this.reviewSubReason = reviewSubReason; + return this; + } + + public CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason getReviewSubReason() { + return reviewSubReason; + } + + public CleanRoomJarAnalysisReview setReviewerCollaboratorAlias(String reviewerCollaboratorAlias) { + this.reviewerCollaboratorAlias = reviewerCollaboratorAlias; + return this; + } + + public String getReviewerCollaboratorAlias() { + return reviewerCollaboratorAlias; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CleanRoomJarAnalysisReview that = (CleanRoomJarAnalysisReview) o; + return Objects.equals(comment, that.comment) + && Objects.equals(createdAtMillis, that.createdAtMillis) + && Objects.equals(reviewState, that.reviewState) + && Objects.equals(reviewSubReason, that.reviewSubReason) + && Objects.equals(reviewerCollaboratorAlias, that.reviewerCollaboratorAlias); + } + + @Override + public int hashCode() { + return Objects.hash( + comment, createdAtMillis, reviewState, reviewSubReason, reviewerCollaboratorAlias); + } + + @Override + public String toString() { + return new ToStringer(CleanRoomJarAnalysisReview.class) + .add("comment", comment) + .add("createdAtMillis", createdAtMillis) + .add("reviewState", reviewState) + .add("reviewSubReason", reviewSubReason) + .add("reviewerCollaboratorAlias", reviewerCollaboratorAlias) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewState.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewState.java new file mode 100644 index 000000000..0928353eb --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewState.java @@ -0,0 +1,12 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum CleanRoomJarAnalysisReviewJarAnalysisReviewState { + APPROVED, + PENDING, + REJECTED, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason.java new file mode 100644 index 000000000..9c65e835d --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason.java @@ -0,0 +1,10 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum CleanRoomJarAnalysisReviewJarAnalysisReviewSubReason { + AUTO_APPROVED, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRun.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRun.java new file mode 100644 index 000000000..53153b275 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRun.java @@ -0,0 +1,183 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +/** Stores information about a single task run. */ +@Generated +public class CleanRoomTaskRun { + /** Information about the analysis run (etag, updated at) */ + @JsonProperty("analysis_details") + private CleanRoomTaskRunCleanRoomTaskAnalysisDetails analysisDetails; + + /** + * Job run info of the task in the runner's local workspace. This field is only included in the + * LIST API if the task was run within the same workspace the API is being called. If the task run + * was in a different workspace under the same metastore, only the workspace_id is included. + */ + @JsonProperty("collaborator_job_run_info") + private CollaboratorJobRunInfo collaboratorJobRunInfo; + + /** Name of the executable. */ + @JsonProperty("name") + private String name; + + /** Information about run output */ + @JsonProperty("output_info") + private CleanRoomTaskRunOutputInfo outputInfo; + + /** Duration of the task run, in milliseconds. */ + @JsonProperty("run_duration") + private Long runDuration; + + /** + * Information about shared output accessible by all collaborators. This field is only populated + * when enable_shared_output is true. + */ + @JsonProperty("shared_output_info") + private CleanRoomTaskRunOutputInfo sharedOutputInfo; + + /** When the task run started, in epoch milliseconds. */ + @JsonProperty("start_time") + private Long startTime; + + /** State of the task run. */ + @JsonProperty("task_run_state") + private com.databricks.sdk.service.jobs.CleanRoomTaskRunState taskRunState; + + /** The type of Clean Room task. */ + @JsonProperty("task_type") + private CleanRoomTaskType taskType; + + public CleanRoomTaskRun setAnalysisDetails( + CleanRoomTaskRunCleanRoomTaskAnalysisDetails analysisDetails) { + this.analysisDetails = analysisDetails; + return this; + } + + public CleanRoomTaskRunCleanRoomTaskAnalysisDetails getAnalysisDetails() { + return analysisDetails; + } + + public CleanRoomTaskRun setCollaboratorJobRunInfo(CollaboratorJobRunInfo collaboratorJobRunInfo) { + this.collaboratorJobRunInfo = collaboratorJobRunInfo; + return this; + } + + public CollaboratorJobRunInfo getCollaboratorJobRunInfo() { + return collaboratorJobRunInfo; + } + + public CleanRoomTaskRun setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public CleanRoomTaskRun setOutputInfo(CleanRoomTaskRunOutputInfo outputInfo) { + this.outputInfo = outputInfo; + return this; + } + + public CleanRoomTaskRunOutputInfo getOutputInfo() { + return outputInfo; + } + + public CleanRoomTaskRun setRunDuration(Long runDuration) { + this.runDuration = runDuration; + return this; + } + + public Long getRunDuration() { + return runDuration; + } + + public CleanRoomTaskRun setSharedOutputInfo(CleanRoomTaskRunOutputInfo sharedOutputInfo) { + this.sharedOutputInfo = sharedOutputInfo; + return this; + } + + public CleanRoomTaskRunOutputInfo getSharedOutputInfo() { + return sharedOutputInfo; + } + + public CleanRoomTaskRun setStartTime(Long startTime) { + this.startTime = startTime; + return this; + } + + public Long getStartTime() { + return startTime; + } + + public CleanRoomTaskRun setTaskRunState( + com.databricks.sdk.service.jobs.CleanRoomTaskRunState taskRunState) { + this.taskRunState = taskRunState; + return this; + } + + public com.databricks.sdk.service.jobs.CleanRoomTaskRunState getTaskRunState() { + return taskRunState; + } + + public CleanRoomTaskRun setTaskType(CleanRoomTaskType taskType) { + this.taskType = taskType; + return this; + } + + public CleanRoomTaskType getTaskType() { + return taskType; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CleanRoomTaskRun that = (CleanRoomTaskRun) o; + return Objects.equals(analysisDetails, that.analysisDetails) + && Objects.equals(collaboratorJobRunInfo, that.collaboratorJobRunInfo) + && Objects.equals(name, that.name) + && Objects.equals(outputInfo, that.outputInfo) + && Objects.equals(runDuration, that.runDuration) + && Objects.equals(sharedOutputInfo, that.sharedOutputInfo) + && Objects.equals(startTime, that.startTime) + && Objects.equals(taskRunState, that.taskRunState) + && Objects.equals(taskType, that.taskType); + } + + @Override + public int hashCode() { + return Objects.hash( + analysisDetails, + collaboratorJobRunInfo, + name, + outputInfo, + runDuration, + sharedOutputInfo, + startTime, + taskRunState, + taskType); + } + + @Override + public String toString() { + return new ToStringer(CleanRoomTaskRun.class) + .add("analysisDetails", analysisDetails) + .add("collaboratorJobRunInfo", collaboratorJobRunInfo) + .add("name", name) + .add("outputInfo", outputInfo) + .add("runDuration", runDuration) + .add("sharedOutputInfo", sharedOutputInfo) + .add("startTime", startTime) + .add("taskRunState", taskRunState) + .add("taskType", taskType) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunCleanRoomTaskAnalysisDetails.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunCleanRoomTaskAnalysisDetails.java new file mode 100644 index 000000000..e09db5300 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunCleanRoomTaskAnalysisDetails.java @@ -0,0 +1,59 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class CleanRoomTaskRunCleanRoomTaskAnalysisDetails { + /** Etag of the asset executed in this task run, used to identify the asset version. */ + @JsonProperty("etag") + private String etag; + + /** The timestamp of when the asset was last updated. */ + @JsonProperty("updated_at") + private Long updatedAt; + + public CleanRoomTaskRunCleanRoomTaskAnalysisDetails setEtag(String etag) { + this.etag = etag; + return this; + } + + public String getEtag() { + return etag; + } + + public CleanRoomTaskRunCleanRoomTaskAnalysisDetails setUpdatedAt(Long updatedAt) { + this.updatedAt = updatedAt; + return this; + } + + public Long getUpdatedAt() { + return updatedAt; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CleanRoomTaskRunCleanRoomTaskAnalysisDetails that = + (CleanRoomTaskRunCleanRoomTaskAnalysisDetails) o; + return Objects.equals(etag, that.etag) && Objects.equals(updatedAt, that.updatedAt); + } + + @Override + public int hashCode() { + return Objects.hash(etag, updatedAt); + } + + @Override + public String toString() { + return new ToStringer(CleanRoomTaskRunCleanRoomTaskAnalysisDetails.class) + .add("etag", etag) + .add("updatedAt", updatedAt) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunOutputInfo.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunOutputInfo.java new file mode 100644 index 000000000..fde780830 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunOutputInfo.java @@ -0,0 +1,59 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class CleanRoomTaskRunOutputInfo { + /** Expiration time of the output schema of the task run (if any), in epoch milliseconds. */ + @JsonProperty("output_schema_expiration_time") + private Long outputSchemaExpirationTime; + + /** Name of the output schema associated with the clean room task run. */ + @JsonProperty("output_schema_name") + private String outputSchemaName; + + public CleanRoomTaskRunOutputInfo setOutputSchemaExpirationTime(Long outputSchemaExpirationTime) { + this.outputSchemaExpirationTime = outputSchemaExpirationTime; + return this; + } + + public Long getOutputSchemaExpirationTime() { + return outputSchemaExpirationTime; + } + + public CleanRoomTaskRunOutputInfo setOutputSchemaName(String outputSchemaName) { + this.outputSchemaName = outputSchemaName; + return this; + } + + public String getOutputSchemaName() { + return outputSchemaName; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CleanRoomTaskRunOutputInfo that = (CleanRoomTaskRunOutputInfo) o; + return Objects.equals(outputSchemaExpirationTime, that.outputSchemaExpirationTime) + && Objects.equals(outputSchemaName, that.outputSchemaName); + } + + @Override + public int hashCode() { + return Objects.hash(outputSchemaExpirationTime, outputSchemaName); + } + + @Override + public String toString() { + return new ToStringer(CleanRoomTaskRunOutputInfo.class) + .add("outputSchemaExpirationTime", outputSchemaExpirationTime) + .add("outputSchemaName", outputSchemaName) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsAPI.java index e20c6b853..5c86c823f 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsAPI.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsAPI.java @@ -7,7 +7,7 @@ import com.databricks.sdk.support.Generated; import com.databricks.sdk.support.Paginator; -/** Clean room task runs are the executions of notebooks in a clean room. */ +/** Clean room task runs are the executions of notebooks and JAR analyses in a clean room. */ @Generated public class CleanRoomTaskRunsAPI { private static final Logger LOG = LoggerFactory.getLogger(CleanRoomTaskRunsAPI.class); @@ -43,6 +43,27 @@ public Iterable list(ListCleanRoomNotebookTaskRunsRequ }); } + public Iterable listCleanRoomTaskRunsHandler(String cleanRoomName) { + return listCleanRoomTaskRunsHandler( + new ListCleanRoomTaskRunsRequest().setCleanRoomName(cleanRoomName)); + } + + /** List all the historical task runs in a clean room. */ + public Iterable listCleanRoomTaskRunsHandler( + ListCleanRoomTaskRunsRequest request) { + return Paginator.newTokenPagination( + request, + impl::listCleanRoomTaskRunsHandler, + ListCleanRoomTaskRunsResponse::getRuns, + response -> { + String token = response.getNextPageToken(); + if (token == null || token.isEmpty()) { + return null; + } + return request.setPageToken(token); + }); + } + public CleanRoomTaskRunsService impl() { return impl; } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsImpl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsImpl.java index 565038a0b..6e0364036 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsImpl.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsImpl.java @@ -32,4 +32,22 @@ public ListCleanRoomNotebookTaskRunsResponse list(ListCleanRoomNotebookTaskRunsR throw new DatabricksException("IO error: " + e.getMessage(), e); } } + + @Override + public ListCleanRoomTaskRunsResponse listCleanRoomTaskRunsHandler( + ListCleanRoomTaskRunsRequest request) { + String path = String.format("/api/2.0/clean-rooms/%s/task-runs", request.getCleanRoomName()); + try { + Request req = new Request("GET", path); + + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + if (apiClient.workspaceId() != null) { + req.withHeader("X-Databricks-Workspace-Id", apiClient.workspaceId()); + } + return apiClient.execute(req, ListCleanRoomTaskRunsResponse.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsService.java index a2e3a48df..dc865a32d 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsService.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskRunsService.java @@ -4,7 +4,7 @@ import com.databricks.sdk.support.Generated; /** - * Clean room task runs are the executions of notebooks in a clean room. + * Clean room task runs are the executions of notebooks and JAR analyses in a clean room. * *

This is the high-level interface, that contains generated methods. * @@ -15,4 +15,8 @@ public interface CleanRoomTaskRunsService { /** List all the historical notebook task runs in a clean room. */ ListCleanRoomNotebookTaskRunsResponse list( ListCleanRoomNotebookTaskRunsRequest listCleanRoomNotebookTaskRunsRequest); + + /** List all the historical task runs in a clean room. */ + ListCleanRoomTaskRunsResponse listCleanRoomTaskRunsHandler( + ListCleanRoomTaskRunsRequest listCleanRoomTaskRunsRequest); } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskType.java new file mode 100644 index 000000000..ee643a3d7 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomTaskType.java @@ -0,0 +1,11 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum CleanRoomTaskType { + JAR, + NOTEBOOK, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CreateCleanRoomAssetReviewRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CreateCleanRoomAssetReviewRequest.java index 4f9a8d861..7178082ee 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CreateCleanRoomAssetReviewRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CreateCleanRoomAssetReviewRequest.java @@ -16,6 +16,10 @@ public class CreateCleanRoomAssetReviewRequest { /** Name of the clean room */ @JsonIgnore private String cleanRoomName; + /** */ + @JsonProperty("jar_analysis_review") + private JarAnalysisVersionReview jarAnalysisReview; + /** Name of the asset */ @JsonIgnore private String name; @@ -41,6 +45,16 @@ public String getCleanRoomName() { return cleanRoomName; } + public CreateCleanRoomAssetReviewRequest setJarAnalysisReview( + JarAnalysisVersionReview jarAnalysisReview) { + this.jarAnalysisReview = jarAnalysisReview; + return this; + } + + public JarAnalysisVersionReview getJarAnalysisReview() { + return jarAnalysisReview; + } + public CreateCleanRoomAssetReviewRequest setName(String name) { this.name = name; return this; @@ -66,13 +80,14 @@ public boolean equals(Object o) { CreateCleanRoomAssetReviewRequest that = (CreateCleanRoomAssetReviewRequest) o; return Objects.equals(assetType, that.assetType) && Objects.equals(cleanRoomName, that.cleanRoomName) + && Objects.equals(jarAnalysisReview, that.jarAnalysisReview) && Objects.equals(name, that.name) && Objects.equals(notebookReview, that.notebookReview); } @Override public int hashCode() { - return Objects.hash(assetType, cleanRoomName, name, notebookReview); + return Objects.hash(assetType, cleanRoomName, jarAnalysisReview, name, notebookReview); } @Override @@ -80,6 +95,7 @@ public String toString() { return new ToStringer(CreateCleanRoomAssetReviewRequest.class) .add("assetType", assetType) .add("cleanRoomName", cleanRoomName) + .add("jarAnalysisReview", jarAnalysisReview) .add("name", name) .add("notebookReview", notebookReview) .toString(); diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CreateCleanRoomAssetReviewResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CreateCleanRoomAssetReviewResponse.java index 8ab62a45c..cd3f35afe 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CreateCleanRoomAssetReviewResponse.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CreateCleanRoomAssetReviewResponse.java @@ -10,6 +10,14 @@ @Generated public class CreateCleanRoomAssetReviewResponse { + /** top-level status derived from all reviews */ + @JsonProperty("jar_analysis_review_state") + private CleanRoomJarAnalysisReviewJarAnalysisReviewState jarAnalysisReviewState; + + /** All existing jar analysis approvals or rejections */ + @JsonProperty("jar_analysis_reviews") + private Collection jarAnalysisReviews; + /** Top-level status derived from all reviews */ @JsonProperty("notebook_review_state") private CleanRoomNotebookReviewNotebookReviewState notebookReviewState; @@ -18,6 +26,26 @@ public class CreateCleanRoomAssetReviewResponse { @JsonProperty("notebook_reviews") private Collection notebookReviews; + public CreateCleanRoomAssetReviewResponse setJarAnalysisReviewState( + CleanRoomJarAnalysisReviewJarAnalysisReviewState jarAnalysisReviewState) { + this.jarAnalysisReviewState = jarAnalysisReviewState; + return this; + } + + public CleanRoomJarAnalysisReviewJarAnalysisReviewState getJarAnalysisReviewState() { + return jarAnalysisReviewState; + } + + public CreateCleanRoomAssetReviewResponse setJarAnalysisReviews( + Collection jarAnalysisReviews) { + this.jarAnalysisReviews = jarAnalysisReviews; + return this; + } + + public Collection getJarAnalysisReviews() { + return jarAnalysisReviews; + } + public CreateCleanRoomAssetReviewResponse setNotebookReviewState( CleanRoomNotebookReviewNotebookReviewState notebookReviewState) { this.notebookReviewState = notebookReviewState; @@ -43,18 +71,23 @@ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; CreateCleanRoomAssetReviewResponse that = (CreateCleanRoomAssetReviewResponse) o; - return Objects.equals(notebookReviewState, that.notebookReviewState) + return Objects.equals(jarAnalysisReviewState, that.jarAnalysisReviewState) + && Objects.equals(jarAnalysisReviews, that.jarAnalysisReviews) + && Objects.equals(notebookReviewState, that.notebookReviewState) && Objects.equals(notebookReviews, that.notebookReviews); } @Override public int hashCode() { - return Objects.hash(notebookReviewState, notebookReviews); + return Objects.hash( + jarAnalysisReviewState, jarAnalysisReviews, notebookReviewState, notebookReviews); } @Override public String toString() { return new ToStringer(CreateCleanRoomAssetReviewResponse.class) + .add("jarAnalysisReviewState", jarAnalysisReviewState) + .add("jarAnalysisReviews", jarAnalysisReviews) .add("notebookReviewState", notebookReviewState) .add("notebookReviews", notebookReviews) .toString(); diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/JarAnalysisVersionReview.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/JarAnalysisVersionReview.java new file mode 100644 index 000000000..ee42287a5 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/JarAnalysisVersionReview.java @@ -0,0 +1,78 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class JarAnalysisVersionReview { + /** Review comment */ + @JsonProperty("comment") + private String comment; + + /** + * Etag identifying the jar analysis version, with its value being a hash of an + * internally-generated UUID + */ + @JsonProperty("etag") + private String etag; + + /** Review outcome */ + @JsonProperty("review_state") + private CleanRoomJarAnalysisReviewJarAnalysisReviewState reviewState; + + public JarAnalysisVersionReview setComment(String comment) { + this.comment = comment; + return this; + } + + public String getComment() { + return comment; + } + + public JarAnalysisVersionReview setEtag(String etag) { + this.etag = etag; + return this; + } + + public String getEtag() { + return etag; + } + + public JarAnalysisVersionReview setReviewState( + CleanRoomJarAnalysisReviewJarAnalysisReviewState reviewState) { + this.reviewState = reviewState; + return this; + } + + public CleanRoomJarAnalysisReviewJarAnalysisReviewState getReviewState() { + return reviewState; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + JarAnalysisVersionReview that = (JarAnalysisVersionReview) o; + return Objects.equals(comment, that.comment) + && Objects.equals(etag, that.etag) + && Objects.equals(reviewState, that.reviewState); + } + + @Override + public int hashCode() { + return Objects.hash(comment, etag, reviewState); + } + + @Override + public String toString() { + return new ToStringer(JarAnalysisVersionReview.class) + .add("comment", comment) + .add("etag", etag) + .add("reviewState", reviewState) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsRequest.java new file mode 100644 index 000000000..eccb427f4 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsRequest.java @@ -0,0 +1,108 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class ListCleanRoomTaskRunsRequest { + /** Name of the clean room. */ + @JsonIgnore private String cleanRoomName; + + /** Executable name. */ + @JsonIgnore + @QueryParam("name") + private String name; + + /** The maximum number of task runs to return. Maximum value of 100. */ + @JsonIgnore + @QueryParam("page_size") + private Long pageSize; + + /** Opaque pagination token to go to next page based on previous query. */ + @JsonIgnore + @QueryParam("page_token") + private String pageToken; + + /** Filter by the type of Clean Room task. */ + @JsonIgnore + @QueryParam("task_type") + private CleanRoomTaskType taskType; + + public ListCleanRoomTaskRunsRequest setCleanRoomName(String cleanRoomName) { + this.cleanRoomName = cleanRoomName; + return this; + } + + public String getCleanRoomName() { + return cleanRoomName; + } + + public ListCleanRoomTaskRunsRequest setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public ListCleanRoomTaskRunsRequest setPageSize(Long pageSize) { + this.pageSize = pageSize; + return this; + } + + public Long getPageSize() { + return pageSize; + } + + public ListCleanRoomTaskRunsRequest setPageToken(String pageToken) { + this.pageToken = pageToken; + return this; + } + + public String getPageToken() { + return pageToken; + } + + public ListCleanRoomTaskRunsRequest setTaskType(CleanRoomTaskType taskType) { + this.taskType = taskType; + return this; + } + + public CleanRoomTaskType getTaskType() { + return taskType; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListCleanRoomTaskRunsRequest that = (ListCleanRoomTaskRunsRequest) o; + return Objects.equals(cleanRoomName, that.cleanRoomName) + && Objects.equals(name, that.name) + && Objects.equals(pageSize, that.pageSize) + && Objects.equals(pageToken, that.pageToken) + && Objects.equals(taskType, that.taskType); + } + + @Override + public int hashCode() { + return Objects.hash(cleanRoomName, name, pageSize, pageToken, taskType); + } + + @Override + public String toString() { + return new ToStringer(ListCleanRoomTaskRunsRequest.class) + .add("cleanRoomName", cleanRoomName) + .add("name", name) + .add("pageSize", pageSize) + .add("pageToken", pageToken) + .add("taskType", taskType) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsResponse.java new file mode 100644 index 000000000..b5c4a178e --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/ListCleanRoomTaskRunsResponse.java @@ -0,0 +1,62 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.cleanrooms; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class ListCleanRoomTaskRunsResponse { + /** + * Opaque token to retrieve the next page of results. Absent if there are no more pages. + * page_token should be set to this value for the next request (for the next page of results). + */ + @JsonProperty("next_page_token") + private String nextPageToken; + + /** Task runs in the clean room. */ + @JsonProperty("runs") + private Collection runs; + + public ListCleanRoomTaskRunsResponse setNextPageToken(String nextPageToken) { + this.nextPageToken = nextPageToken; + return this; + } + + public String getNextPageToken() { + return nextPageToken; + } + + public ListCleanRoomTaskRunsResponse setRuns(Collection runs) { + this.runs = runs; + return this; + } + + public Collection getRuns() { + return runs; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListCleanRoomTaskRunsResponse that = (ListCleanRoomTaskRunsResponse) o; + return Objects.equals(nextPageToken, that.nextPageToken) && Objects.equals(runs, that.runs); + } + + @Override + public int hashCode() { + return Objects.hash(nextPageToken, runs); + } + + @Override + public String toString() { + return new ToStringer(ListCleanRoomTaskRunsResponse.class) + .add("nextPageToken", nextPageToken) + .add("runs", runs) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/compute/InstancePoolAzureAttributes.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/compute/InstancePoolAzureAttributes.java index da52c8f92..d90c86452 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/compute/InstancePoolAzureAttributes.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/compute/InstancePoolAzureAttributes.java @@ -14,6 +14,27 @@ public class InstancePoolAzureAttributes { @JsonProperty("availability") private InstancePoolAzureAttributesAvailability availability; + /** + * The Azure capacity reservation group resource ID to use for launching VMs in this pool. When + * specified, VMs will be launched using the provided capacity reservation. + * + *

NOTE: Omitting this field will clear any existing configured capacity reservation group on + * the pool. + * + *

Capacity reservations can only be specified when the workspace uses injected vnet (i.e. + * customer defined vnet not managed by databricks). Ensure the databricks-login-prod Enterprise + * Application is granted the following four permissions: 1. + * Microsoft.Compute/capacityReservationGroups/read 2. + * Microsoft.Compute/capacityReservationGroups/deploy/action 3. + * Microsoft.Compute/capacityReservationGroups/capacityReservations/read 4. + * Microsoft.Compute/capacityReservationGroups/capacityReservations/deploy/action + * + *

Format: + * `/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}` + */ + @JsonProperty("capacity_reservation_group") + private String capacityReservationGroup; + /** * With variable pricing, you have option to set a max price, in US dollars (USD) For example, the * value 2 would be a max price of $2.00 USD per hour. If you set the max price to be -1, the VM @@ -33,6 +54,15 @@ public InstancePoolAzureAttributesAvailability getAvailability() { return availability; } + public InstancePoolAzureAttributes setCapacityReservationGroup(String capacityReservationGroup) { + this.capacityReservationGroup = capacityReservationGroup; + return this; + } + + public String getCapacityReservationGroup() { + return capacityReservationGroup; + } + public InstancePoolAzureAttributes setSpotBidMaxPrice(Double spotBidMaxPrice) { this.spotBidMaxPrice = spotBidMaxPrice; return this; @@ -48,18 +78,20 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) return false; InstancePoolAzureAttributes that = (InstancePoolAzureAttributes) o; return Objects.equals(availability, that.availability) + && Objects.equals(capacityReservationGroup, that.capacityReservationGroup) && Objects.equals(spotBidMaxPrice, that.spotBidMaxPrice); } @Override public int hashCode() { - return Objects.hash(availability, spotBidMaxPrice); + return Objects.hash(availability, capacityReservationGroup, spotBidMaxPrice); } @Override public String toString() { return new ToStringer(InstancePoolAzureAttributes.class) .add("availability", availability) + .add("capacityReservationGroup", capacityReservationGroup) .add("spotBidMaxPrice", spotBidMaxPrice) .toString(); } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/disasterrecovery/StableUrl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/disasterrecovery/StableUrl.java index 0c38f8b40..9e31355fe 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/disasterrecovery/StableUrl.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/disasterrecovery/StableUrl.java @@ -13,6 +13,16 @@ */ @Generated public class StableUrl { + /** + * The workspace this stable URL currently routes to. Set to `initial_workspace_id` at creation, + * advanced to the failover group's primary while attached (including across a failover), and + * preserved when the stable URL is detached from its failover group. Read this to see where an + * unattached stable URL points: after a failover followed by a detach it reflects the + * post-failover primary, not `initial_workspace_id`. + */ + @JsonProperty("effective_workspace_id") + private String effectiveWorkspaceId; + /** * Fully qualified resource name of the FailoverGroup this stable URL is currently linked to, in * the format `accounts/{account_id}/failover-groups/{failover_group_id}`. Empty when the stable @@ -48,6 +58,15 @@ public class StableUrl { @JsonProperty("url") private String url; + public StableUrl setEffectiveWorkspaceId(String effectiveWorkspaceId) { + this.effectiveWorkspaceId = effectiveWorkspaceId; + return this; + } + + public String getEffectiveWorkspaceId() { + return effectiveWorkspaceId; + } + public StableUrl setFailoverGroupName(String failoverGroupName) { this.failoverGroupName = failoverGroupName; return this; @@ -98,7 +117,8 @@ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; StableUrl that = (StableUrl) o; - return Objects.equals(failoverGroupName, that.failoverGroupName) + return Objects.equals(effectiveWorkspaceId, that.effectiveWorkspaceId) + && Objects.equals(failoverGroupName, that.failoverGroupName) && Objects.equals(initialWorkspaceId, that.initialWorkspaceId) && Objects.equals(name, that.name) && Objects.equals(stableWorkspaceId, that.stableWorkspaceId) @@ -107,12 +127,14 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash(failoverGroupName, initialWorkspaceId, name, stableWorkspaceId, url); + return Objects.hash( + effectiveWorkspaceId, failoverGroupName, initialWorkspaceId, name, stableWorkspaceId, url); } @Override public String toString() { return new ToStringer(StableUrl.class) + .add("effectiveWorkspaceId", effectiveWorkspaceId) .add("failoverGroupName", failoverGroupName) .add("initialWorkspaceId", initialWorkspaceId) .add("name", name) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/AiRuntimeTask.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/AiRuntimeTask.java index b7b916498..cd415dfce 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/AiRuntimeTask.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/AiRuntimeTask.java @@ -18,17 +18,6 @@ */ @Generated public class AiRuntimeTask { - /** - * Optional workspace or UC volume path of the uploaded code-source archive. The CLI packages the - * user's local code directory into an archive and populates this. Customers calling the Jobs API - * directly should upload their archive to the workspace or a UC volume first and supply the - * resulting path here. - * - *

When set, the training node exposes the value via the `$CODE_SOURCE` environment variable. - */ - @JsonProperty("code_source_path") - private String codeSourcePath; - /** * Deployment specs for this task. Exactly one deployment is currently supported (a single entry * where every node runs the same command); this is a current-Preview constraint. Role-split @@ -62,15 +51,6 @@ public class AiRuntimeTask { @JsonProperty("mlflow_run") private String mlflowRun; - public AiRuntimeTask setCodeSourcePath(String codeSourcePath) { - this.codeSourcePath = codeSourcePath; - return this; - } - - public String getCodeSourcePath() { - return codeSourcePath; - } - public AiRuntimeTask setDeployments(Collection deployments) { this.deployments = deployments; return this; @@ -112,8 +92,7 @@ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; AiRuntimeTask that = (AiRuntimeTask) o; - return Objects.equals(codeSourcePath, that.codeSourcePath) - && Objects.equals(deployments, that.deployments) + return Objects.equals(deployments, that.deployments) && Objects.equals(experiment, that.experiment) && Objects.equals(mlflowExperimentDirectory, that.mlflowExperimentDirectory) && Objects.equals(mlflowRun, that.mlflowRun); @@ -121,14 +100,12 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash( - codeSourcePath, deployments, experiment, mlflowExperimentDirectory, mlflowRun); + return Objects.hash(deployments, experiment, mlflowExperimentDirectory, mlflowRun); } @Override public String toString() { return new ToStringer(AiRuntimeTask.class) - .add("codeSourcePath", codeSourcePath) .add("deployments", deployments) .add("experiment", experiment) .add("mlflowExperimentDirectory", mlflowExperimentDirectory) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/ComputeSpecAcceleratorType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/ComputeSpecAcceleratorType.java index 8687116a5..74b82f227 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/ComputeSpecAcceleratorType.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/ComputeSpecAcceleratorType.java @@ -6,8 +6,8 @@ import com.fasterxml.jackson.annotation.JsonProperty; /** - * Customer-facing AcceleratorType: hardware accelerator type for the AiRuntime workload. Per-node - * accelerator count is encoded in the value name (e.g. `GPU_8xH100` means 8 H100s per node). + * Hardware accelerator type for the AiRuntime workload. Per-node accelerator count is encoded in + * the value name (e.g. `GPU_8xH100` means 8 H100s per node). */ @Generated public enum ComputeSpecAcceleratorType { diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/DeploymentSpec.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/DeploymentSpec.java index cd64998f7..7e68e97f6 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/DeploymentSpec.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/DeploymentSpec.java @@ -17,9 +17,17 @@ @Generated public class DeploymentSpec { /** - * Workspace path of the bash script to execute on each node in this deployment. The CLI uploads - * the user's script and populates this. Customers calling the Jobs API directly should upload - * their script to the workspace first and supply the resulting path here. + * Workspace path of the script to run on each node in this deployment. Upload the script to this + * path and supply the path here. When the task runs, the file at this path is run on each node; + * if it fails, the task fails with its exit code. + * + *

Example script contents: + * + *

# Plain Python: python train.py --epochs 10 + * + *

# Multi-GPU via accelerate: accelerate launch train.py --config config.yaml + * + *

# Distributed via torchrun: torchrun --nproc_per_node=8 train.py */ @JsonProperty("command_path") private String commandPath; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LifetimeWindow.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LifetimeWindow.java new file mode 100644 index 000000000..4c23a059e --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/LifetimeWindow.java @@ -0,0 +1,52 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.ml; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.google.protobuf.Duration; +import java.util.Objects; + +/** + * A window that spans the entire lifetime of a data source, accumulating from the source's start + * rather than over a bounded duration. All fields are optional; an empty message denotes the + * continuous, fully-accurate variant. + */ +@Generated +public class LifetimeWindow { + /** + * The slide duration for the discrete (offline) variant: the value updates only at these + * boundaries. Must be positive when set. When absent, the window is continuous (the value is as + * fresh as the pipeline delivers). + */ + @JsonProperty("slide_duration") + private Duration slideDuration; + + public LifetimeWindow setSlideDuration(Duration slideDuration) { + this.slideDuration = slideDuration; + return this; + } + + public Duration getSlideDuration() { + return slideDuration; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + LifetimeWindow that = (LifetimeWindow) o; + return Objects.equals(slideDuration, that.slideDuration); + } + + @Override + public int hashCode() { + return Objects.hash(slideDuration); + } + + @Override + public String toString() { + return new ToStringer(LifetimeWindow.class).add("slideDuration", slideDuration).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/TimeWindow.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/TimeWindow.java index b427d59e4..b1f24fc8b 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/TimeWindow.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/TimeWindow.java @@ -13,6 +13,10 @@ public class TimeWindow { @JsonProperty("continuous") private ContinuousWindow continuous; + /** A window that spans the entire lifetime of the data source. */ + @JsonProperty("lifetime") + private LifetimeWindow lifetime; + /** A long (multi-day) rolling window served via the hybrid batch + streaming path. */ @JsonProperty("long_rolling") private LongRollingWindow longRolling; @@ -38,6 +42,15 @@ public ContinuousWindow getContinuous() { return continuous; } + public TimeWindow setLifetime(LifetimeWindow lifetime) { + this.lifetime = lifetime; + return this; + } + + public LifetimeWindow getLifetime() { + return lifetime; + } + public TimeWindow setLongRolling(LongRollingWindow longRolling) { this.longRolling = longRolling; return this; @@ -80,6 +93,7 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) return false; TimeWindow that = (TimeWindow) o; return Objects.equals(continuous, that.continuous) + && Objects.equals(lifetime, that.lifetime) && Objects.equals(longRolling, that.longRolling) && Objects.equals(rolling, that.rolling) && Objects.equals(sliding, that.sliding) @@ -88,13 +102,14 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash(continuous, longRolling, rolling, sliding, tumbling); + return Objects.hash(continuous, lifetime, longRolling, rolling, sliding, tumbling); } @Override public String toString() { return new ToStringer(TimeWindow.class) .add("continuous", continuous) + .add("lifetime", lifetime) .add("longRolling", longRolling) .add("rolling", rolling) .add("sliding", sliding) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/pipelines/TableSpecificConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/pipelines/TableSpecificConfig.java index bf00a813a..ed319a36c 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/pipelines/TableSpecificConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/pipelines/TableSpecificConfig.java @@ -93,6 +93,13 @@ public class TableSpecificConfig { @JsonProperty("sequence_by") private Collection sequenceBy; + /** + * (Optional) Name of the struct column added to each ingested record to hold per row source + * metadata. + */ + @JsonProperty("source_metadata_column") + private String sourceMetadataColumn; + /** * Table properties to set on the destination table. These are key-value pairs that configure * various Delta table behaviors or any user defined properties. Example: @@ -210,6 +217,15 @@ public Collection getSequenceBy() { return sequenceBy; } + public TableSpecificConfig setSourceMetadataColumn(String sourceMetadataColumn) { + this.sourceMetadataColumn = sourceMetadataColumn; + return this; + } + + public String getSourceMetadataColumn() { + return sourceMetadataColumn; + } + public TableSpecificConfig setTableProperties(Map tableProperties) { this.tableProperties = tableProperties; return this; @@ -245,6 +261,7 @@ public boolean equals(Object o) { && Objects.equals(salesforceIncludeFormulaFields, that.salesforceIncludeFormulaFields) && Objects.equals(scdType, that.scdType) && Objects.equals(sequenceBy, that.sequenceBy) + && Objects.equals(sourceMetadataColumn, that.sourceMetadataColumn) && Objects.equals(tableProperties, that.tableProperties) && Objects.equals(workdayReportParameters, that.workdayReportParameters); } @@ -263,6 +280,7 @@ public int hashCode() { salesforceIncludeFormulaFields, scdType, sequenceBy, + sourceMetadataColumn, tableProperties, workdayReportParameters); } @@ -281,6 +299,7 @@ public String toString() { .add("salesforceIncludeFormulaFields", salesforceIncludeFormulaFields) .add("scdType", scdType) .add("sequenceBy", sequenceBy) + .add("sourceMetadataColumn", sourceMetadataColumn) .add("tableProperties", tableProperties) .add("workdayReportParameters", workdayReportParameters) .toString();