Skip to content

Commit a2479d7

Browse files
tanmay-dbmgyucht
andauthored
Added support for dbutils.secrets (#132)
## Changes <!-- Summary of your changes that are easy to understand --> Add support for dbutils.secrets. New open api spec has been created to support secrets/get TODO: 1. Update https://github.com/databricks/databricks-sdk-java/blob/main/.codegen/_openapi_sha once the PR with spec changes is merged and we have the sha 2. Uncomment secrets/get section in integration test once it is enabled for test infra ## Tests <!-- How is this tested? --> Unit and Integration tests --------- Co-authored-by: Miles Yucht <[email protected]>
1 parent 0c01d94 commit a2479d7

35 files changed

+1250
-71
lines changed

.codegen/_openapi_sha

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1e3533f94335f0e6c5d9262bc1fea95b3ddcb0e1
1+
b799a600ccf37b0776d99c315614f0d0f0f0ce54

.codegen/workspace.java.tmpl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,15 @@ import com.databricks.sdk.core.DatabricksConfig;
1010
defined in an outer scope (https://github.com/golang/go/issues/17454). */ -}}
1111
import com.databricks.sdk.mixin.ClustersExt;
1212
import com.databricks.sdk.mixin.DbfsExt;
13+
import com.databricks.sdk.mixin.SecretsExt;
1314
{{range .Services}}{{if not .IsAccounts}}
1415
import com.databricks.sdk.service.{{.Package.Name}}.{{.PascalName}}API;
1516
import com.databricks.sdk.service.{{.Package.Name}}.{{.PascalName}}Service;
1617
{{end}}{{end}}
1718
import com.databricks.sdk.support.Generated;
1819

1920
{{- define "api" -}}
20-
{{- $mixins := dict "ClustersAPI" "ClustersExt" "DbfsAPI" "DbfsExt" -}}
21+
{{- $mixins := dict "ClustersAPI" "ClustersExt" "DbfsAPI" "DbfsExt" "SecretsAPI" "SecretsExt" -}}
2122
{{- $genApi := concat .PascalName "API" -}}
2223
{{- getOrDefault $mixins $genApi $genApi -}}
2324
{{- end -}}

.gitattributes

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,12 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccountsSto
5252
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccountsUpdateMetastore.java linguist-generated=true
5353
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccountsUpdateMetastoreAssignment.java linguist-generated=true
5454
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccountsUpdateStorageCredential.java linguist-generated=true
55+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ArtifactAllowlistInfo.java linguist-generated=true
56+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ArtifactAllowlistsAPI.java linguist-generated=true
57+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ArtifactAllowlistsImpl.java linguist-generated=true
58+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ArtifactAllowlistsService.java linguist-generated=true
59+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ArtifactMatcher.java linguist-generated=true
60+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ArtifactType.java linguist-generated=true
5561
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AwsIamRole.java linguist-generated=true
5662
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AzureManagedIdentity.java linguist-generated=true
5763
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AzureServicePrincipal.java linguist-generated=true
@@ -104,12 +110,12 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeltaRuntim
104110
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Dependency.java linguist-generated=true
105111
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DisableRequest.java linguist-generated=true
106112
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DisableSchemaName.java linguist-generated=true
107-
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectiveAutoMaintenanceFlag.java linguist-generated=true
108-
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectiveAutoMaintenanceFlagInheritedFromType.java linguist-generated=true
109113
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectivePermissionsList.java linguist-generated=true
114+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectivePredictiveOptimizationFlag.java linguist-generated=true
115+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectivePredictiveOptimizationFlagInheritedFromType.java linguist-generated=true
110116
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectivePrivilege.java linguist-generated=true
111117
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectivePrivilegeAssignment.java linguist-generated=true
112-
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnableAutoMaintenance.java linguist-generated=true
118+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnablePredictiveOptimization.java linguist-generated=true
113119
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnableRequest.java linguist-generated=true
114120
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnableSchemaName.java linguist-generated=true
115121
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EncryptionDetails.java linguist-generated=true
@@ -133,6 +139,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/FunctionsSe
133139
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccountMetastoreAssignmentRequest.java linguist-generated=true
134140
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccountMetastoreRequest.java linguist-generated=true
135141
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccountStorageCredentialRequest.java linguist-generated=true
142+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetArtifactAllowlistRequest.java linguist-generated=true
136143
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetCatalogRequest.java linguist-generated=true
137144
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetConnectionRequest.java linguist-generated=true
138145
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetEffectiveRequest.java linguist-generated=true
@@ -169,6 +176,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListTablesR
169176
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListTablesResponse.java linguist-generated=true
170177
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListVolumesRequest.java linguist-generated=true
171178
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListVolumesResponseContent.java linguist-generated=true
179+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/MatchType.java linguist-generated=true
172180
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/MetastoreAssignment.java linguist-generated=true
173181
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/MetastoreInfo.java linguist-generated=true
174182
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/MetastoreInfoDeltaSharingScope.java linguist-generated=true
@@ -191,6 +199,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SchemasServ
191199
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurableOptionsMap.java linguist-generated=true
192200
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurablePropertiesMap.java linguist-generated=true
193201
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurableType.java linguist-generated=true
202+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SetArtifactAllowlist.java linguist-generated=true
194203
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SseEncryptionDetails.java linguist-generated=true
195204
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SseEncryptionDetailsAlgorithm.java linguist-generated=true
196205
databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/StorageCredentialInfo.java linguist-generated=true
@@ -724,6 +733,8 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DeleteModelTagRe
724733
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DeleteModelVersionRequest.java linguist-generated=true
725734
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DeleteModelVersionTagRequest.java linguist-generated=true
726735
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DeleteRun.java linguist-generated=true
736+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DeleteRuns.java linguist-generated=true
737+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DeleteRunsResponse.java linguist-generated=true
727738
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DeleteTag.java linguist-generated=true
728739
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DeleteTransitionRequestRequest.java linguist-generated=true
729740
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DeleteTransitionRequestStage.java linguist-generated=true
@@ -812,6 +823,8 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/RenameModelReque
812823
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/RenameModelResponse.java linguist-generated=true
813824
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/RestoreExperiment.java linguist-generated=true
814825
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/RestoreRun.java linguist-generated=true
826+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/RestoreRuns.java linguist-generated=true
827+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/RestoreRunsResponse.java linguist-generated=true
815828
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/Run.java linguist-generated=true
816829
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/RunData.java linguist-generated=true
817830
databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/RunInfo.java linguist-generated=true
@@ -1378,6 +1391,8 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/workspace/GetRepoPe
13781391
databricks-sdk-java/src/main/java/com/databricks/sdk/service/workspace/GetRepoPermissionLevelsResponse.java linguist-generated=true
13791392
databricks-sdk-java/src/main/java/com/databricks/sdk/service/workspace/GetRepoPermissionsRequest.java linguist-generated=true
13801393
databricks-sdk-java/src/main/java/com/databricks/sdk/service/workspace/GetRepoRequest.java linguist-generated=true
1394+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/workspace/GetSecretRequest.java linguist-generated=true
1395+
databricks-sdk-java/src/main/java/com/databricks/sdk/service/workspace/GetSecretResponse.java linguist-generated=true
13811396
databricks-sdk-java/src/main/java/com/databricks/sdk/service/workspace/GetStatusRequest.java linguist-generated=true
13821397
databricks-sdk-java/src/main/java/com/databricks/sdk/service/workspace/GetWorkspaceObjectPermissionLevelsRequest.java linguist-generated=true
13831398
databricks-sdk-java/src/main/java/com/databricks/sdk/service/workspace/GetWorkspaceObjectPermissionLevelsResponse.java linguist-generated=true

databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java

Lines changed: 23 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package com.databricks.sdk.mixin;
2+
3+
import com.databricks.sdk.core.ApiClient;
4+
import com.databricks.sdk.service.workspace.*;
5+
import java.util.Base64;
6+
7+
/** Remote equivalent of secrets util. */
8+
public class SecretsExt extends SecretsAPI {
9+
10+
public SecretsExt(ApiClient apiClient) {
11+
super(apiClient);
12+
}
13+
14+
public SecretsExt(SecretsService mock) {
15+
super(mock);
16+
}
17+
18+
/** Gets the bytes representation of a secret value for the specified scope and key. */
19+
public byte[] getBytes(String scope, String key) {
20+
GetSecretResponse response = this.getSecret(scope, key);
21+
return Base64.getDecoder().decode(response.getValue());
22+
}
23+
24+
/** Gets the string representation of a secret value for the specified secrets scope and key. */
25+
public String get(String scope, String key) {
26+
byte[] val = this.getBytes(scope, key);
27+
return new String(val);
28+
}
29+
}

databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ArtifactAllowlistInfo.java

Lines changed: 89 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ArtifactAllowlistsAPI.java

Lines changed: 62 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)