Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .codegen/_last_sha
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3fe38876198dc0eb5355c51cc3b52a3182d5525f
1f11321c66463d2d07908abf08bb4cf6f4f675ad
29 changes: 19 additions & 10 deletions .github/workflows/sync-label.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,27 +7,36 @@ name: Sync label

on:
pull_request:
types: [opened, reopened, synchronize, labeled, unlabeled]
types: [reopened, synchronize, labeled, unlabeled]
# The label gate runs at PR level — a PR can't enter the merge queue
# until this check passes there. Merge-group events carry no label
# context, so on them the job passes trivially; without this trigger
# a required sync-label check would stall every queue entry.
merge_group:
types: [checks_requested]

permissions:
pull-requests: read

jobs:
sync-label:
name: sync-label
runs-on: ubuntu-latest
steps:
- name: Merge queue — gate already applied at PR level
if: ${{ github.event_name == 'merge_group' }}
run: echo "merge group — sync label was enforced when the PR entered the queue."
- name: Require the `sync` label
if: ${{ github.event_name == 'pull_request' && !contains(github.event.pull_request.labels.*.name, 'sync') }}
shell: bash
env:
GH_TOKEN: ${{ github.token }}
PR_NUMBER: ${{ github.event.pull_request.number }}
run: |
echo "::error::This PR does not carry the 'sync' label. This repository is a read-only mirror — only release sync PRs merge here. If this IS a release sync PR, a maintainer must apply the 'sync' label; community contributions are re-applied in the internal repository instead (see CONTRIBUTING.md)."
exit 1
- name: Label present
if: ${{ github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'sync') }}
run: echo "sync label present — this is a release sync PR."
if [[ "$GITHUB_EVENT_NAME" == "merge_group" ]]; then
echo "merge group — sync label was enforced when the PR entered the queue."
exit 0
fi
# Event labels are snapshots; delayed runs and reruns must read current labels.
has_sync_label=$(gh api "repos/$GITHUB_REPOSITORY/pulls/$PR_NUMBER" --jq 'any(.labels[]; .name == "sync")')
if [[ "$has_sync_label" != "true" ]]; then
echo "::error::This PR does not carry the 'sync' label. This repository is a read-only mirror — only release sync PRs merge here. If this IS a release sync PR, a maintainer must apply the 'sync' label; community contributions are re-applied in the internal repository instead (see CONTRIBUTING.md)."
exit 1
fi
echo "sync label present — this is a release sync PR."
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# Version changelog

## Release v0.167.0 (2026-10-15)

### API Changes
* Add `revealRolePassword()` method for `workspaceClient.postgres()` service.
* Add `replicationConfig` field for `com.databricks.sdk.service.sharing.CreateShare`.
* Add `replicationConfig` field for `com.databricks.sdk.service.sharing.ShareInfo`.
* Add `REALTIME` enum value for `com.databricks.sdk.service.sql.CreateWarehouseRequestWarehouseType`.
* Add `REALTIME` enum value for `com.databricks.sdk.service.sql.EditWarehouseRequestWarehouseType`.
* Add `REALTIME` enum value for `com.databricks.sdk.service.sql.EndpointInfoWarehouseType`.
* Add `REALTIME` enum value for `com.databricks.sdk.service.sql.GetWarehouseResponseWarehouseType`.
* Add `REALTIME` enum value for `com.databricks.sdk.service.sql.WarehouseTypePairWarehouseType`.
* [Breaking] Remove `effectiveServerlessComputeId` field for `com.databricks.sdk.service.jobs.RunTask`.

## Release v0.166.0 (2026-10-13)

### API Changes
Expand Down
2 changes: 1 addition & 1 deletion databricks-sdk-java/lockfile.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"artifactId": "databricks-sdk-java",
"groupId": "com.databricks",
"version": "0.166.0",
"version": "0.167.0",
"lockFileVersion": 1,
"dependencies": [
{
Expand Down
2 changes: 1 addition & 1 deletion databricks-sdk-java/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<parent>
<groupId>com.databricks</groupId>
<artifactId>databricks-sdk-parent</artifactId>
<version>0.166.0</version>
<version>0.167.0</version>
</parent>
<artifactId>databricks-sdk-java</artifactId>
<name>Databricks SDK for Java</name>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ public String getValue() {
// TODO: check if reading from
// /META-INF/maven/com.databricks/databrics-sdk-java/pom.properties
// or getClass().getPackage().getImplementationVersion() is enough.
private static final String version = "0.166.0";
private static final String version = "0.167.0";

public static void withProduct(String product, String productVersion) {
UserAgent.product = product;
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,16 @@

@Generated
public class CreateIdentityVisibilityFilterRequest {
/** Required. The filter to create. */
/**
* Required. The filter to create. Set `principal_type` to `GROUP` and specify exactly one of
* `exact` or `prefix`. The server assigns the resource name; any supplied `name` is ignored.
*/
@JsonProperty("identity_visibility_filter")
private IdentityVisibilityFilter identityVisibilityFilter;

/**
* Optional. The ID to use for the filter, which becomes the final component of its resource name.
* If not specified, the server generates one.
* If not specified or empty, the server generates one. Must not contain `/`.
*/
@JsonIgnore
@QueryParam("identity_visibility_filter_id")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,13 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;

/**
* A rule that matches an identity whose external ID (from the identity provider) equals the value.
*/
/** An exact-match rule that matches a group's external ID from the identity provider. */
@Generated
public class ExactMatchRule {
/** The external ID to match exactly. */
/**
* The identity provider's external ID for the group to match. This is not the Databricks group
* ID. The value must be non-empty and is matched exactly, including case.
*/
@JsonProperty("external_id")
private String externalId;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,16 +8,21 @@
import java.util.Objects;

/**
* A rule controlling which externally provisioned identities are visible in the account. Filters
* are scoped by principal_type: an identity is only ever evaluated against filters whose
* principal_type matches its own. When the account has no filter for an identity's principal_type,
* all identities of that type are visible; once it has at least one filter for that type, an
* identity of that type is visible only if it matches at least one of those filters. So a set of
* group-only filters gates groups but leaves users and service principals fully visible.
* An account-level rule that controls which identity provider groups are discoverable in directory
* search and group pickers when automatic identity management is enabled. Filters apply across all
* workspaces in the account.
*
* <p>If no group filters are configured, all groups are visible. Otherwise, a group is visible if
* it or any of its transitive parent groups matches at least one rule. A group is also visible if
* it or any transitive parent group is already provisioned in the account. Local Databricks groups
* remain visible regardless of the filters.
*
* <p>Only group filters can be created. Filters do not change provisioning or sign-in for users and
* service principals. Filters are immutable: to change a rule, delete it and create a new one.
*/
@Generated
public class IdentityVisibilityFilter {
/** Exact match on the identity's external ID. */
/** Exact match on the group's external ID from the identity provider. */
@JsonProperty("exact")
private ExactMatchRule exact;

Expand All @@ -28,11 +33,14 @@ public class IdentityVisibilityFilter {
@JsonProperty("name")
private String name;

/** Prefix match on the identity's display name. */
/** Case-sensitive starts-with match on the group's display name. */
@JsonProperty("prefix")
private PrefixMatchRule prefix;

/** Which type of principal (user, service principal, or group) this rule applies to. */
/**
* The type of principal this rule applies to. Set to `GROUP` when creating a filter. Other
* principal types are not supported for creation.
*/
@JsonProperty("principal_type")
private PrincipalType principalType;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@

@Generated
public class ListIdentityVisibilityFiltersRequest {
/** The maximum number of filters to return. The service may return fewer than this value. */
/**
* The maximum number of filters to return. The service may return fewer than this value. If
* omitted or non-positive, defaults to 100. Values above 1000 are reduced to 1000.
*/
@JsonIgnore
@QueryParam("page_size")
private Long pageSize;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
/** Response message containing a page of identity-visibility filters in the account. */
@Generated
public class ListIdentityVisibilityFiltersResponse {
/** */
/** The filters in this page. These are filter rules, not the groups matched by the rules. */
@JsonProperty("identity_visibility_filters")
private Collection<IdentityVisibilityFilter> identityVisibilityFilters;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,16 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;

/** A rule that matches an identity whose display name starts with the value. */
/**
* A starts-with rule that matches groups whose display name begins with a specified prefix.
* Matching is case-sensitive. For example, the prefix `data-` matches `data-platform`.
*/
@Generated
public class PrefixMatchRule {
/** The display-name prefix to match. */
/**
* The display-name prefix to match. Must contain at least one non-whitespace character. Leading
* and trailing whitespace are preserved, and matching is case-sensitive.
*/
@JsonProperty("display_name_prefix")
private String displayNamePrefix;

Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading