diff --git a/.codegen/_openapi_sha b/.codegen/_openapi_sha index e6ee8871a..ccdaf7df1 100755 --- a/.codegen/_openapi_sha +++ b/.codegen/_openapi_sha @@ -1 +1 @@ -87b666fa172b01444d306112309b6109c096f98b \ No newline at end of file +82afd4cec76f55af0abe1139cc0c4a43aa34dd5a \ No newline at end of file diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md old mode 100644 new mode 100755 index c2c45322e..c8ff87a52 --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -17,3 +17,8 @@ * Switch the formatter and linter from black/isort/autoflake to ruff (format + lint), aligning the SDK formatter with Databricks' internal Python formatting guidelines in preparation for moving the source of truth to a separate internal repository. `make fmt` now runs `ruff format` + `ruff check --fix-only`; `make lint` runs `ruff check` and `ruff format --check` across `databricks` and `tests`. No behavioral changes to the published SDK. ### API Changes +* Add `pipeline_task_parameters` field for `databricks.sdk.service.jobs.PipelineTask`. +* Add `pipeline_task` field for `databricks.sdk.service.jobs.ResolvedValues`. +* Add `parameters` field for `databricks.sdk.service.pipelines.CreatePipeline`. +* Add `parameters` field for `databricks.sdk.service.pipelines.EditPipeline`. +* Add `parameters` field for `databricks.sdk.service.pipelines.GetPipelineResponse`. \ No newline at end of file diff --git a/databricks/sdk/service/catalog.py b/databricks/sdk/service/catalog.py index 8b0619011..60e2a294d 100755 --- a/databricks/sdk/service/catalog.py +++ b/databricks/sdk/service/catalog.py @@ -9231,7 +9231,7 @@ def from_dict(cls, d: Dict[str, Any]) -> Securable: class SecurableKind(Enum): - """Latest kind: CONNECTION_ICEBERG_REST_OAUTH_M2M = 336; Next id: 337""" + """Latest kind: CONNECTION_GOOGLE_CLOUD_LAKEHOUSE_SERVICE_ACCOUNT = 340; Next id: 341""" TABLE_DB_STORAGE = "TABLE_DB_STORAGE" TABLE_DELTA = "TABLE_DELTA" diff --git a/databricks/sdk/service/jobs.py b/databricks/sdk/service/jobs.py index 0880526d4..b0874a234 100755 --- a/databricks/sdk/service/jobs.py +++ b/databricks/sdk/service/jobs.py @@ -3992,6 +3992,10 @@ class PipelineTask: full_refresh_selection: Optional[List[str]] = None """A list of tables to update with fullRefresh.""" + pipeline_task_parameters: Optional[Dict[str, str]] = None + """Key/value-map of parameters passed to the pipeline execution. Limited to 10k characters in + total.""" + refresh_flow_selection: Optional[List[str]] = None """Flow names to selectively refresh. These are unioned with other selective refresh options (refresh_selection, full_refresh_selection) to determine the final set of flows to refresh.""" @@ -4011,6 +4015,8 @@ def as_dict(self) -> dict: body["full_refresh_selection"] = [v for v in self.full_refresh_selection] if self.pipeline_id is not None: body["pipeline_id"] = self.pipeline_id + if self.pipeline_task_parameters: + body["pipeline_task_parameters"] = self.pipeline_task_parameters if self.refresh_flow_selection: body["refresh_flow_selection"] = [v for v in self.refresh_flow_selection] if self.refresh_selection: @@ -4028,6 +4034,8 @@ def as_shallow_dict(self) -> dict: body["full_refresh_selection"] = self.full_refresh_selection if self.pipeline_id is not None: body["pipeline_id"] = self.pipeline_id + if self.pipeline_task_parameters: + body["pipeline_task_parameters"] = self.pipeline_task_parameters if self.refresh_flow_selection: body["refresh_flow_selection"] = self.refresh_flow_selection if self.refresh_selection: @@ -4043,6 +4051,7 @@ def from_dict(cls, d: Dict[str, Any]) -> PipelineTask: full_refresh=d.get("full_refresh", None), full_refresh_selection=d.get("full_refresh_selection", None), pipeline_id=d.get("pipeline_id", None), + pipeline_task_parameters=d.get("pipeline_task_parameters", None), refresh_flow_selection=d.get("refresh_flow_selection", None), refresh_selection=d.get("refresh_selection", None), reset_checkpoint_selection=d.get("reset_checkpoint_selection", None), @@ -4629,6 +4638,32 @@ def from_dict(cls, d: Dict[str, Any]) -> ResolvedParamPairValues: return cls(parameters=d.get("parameters", None)) +@dataclass +class ResolvedPipelineTaskValues: + pipeline_task_parameters: Optional[Dict[str, str]] = None + """Key/value-map of parameters passed to the pipeline execution. Limited to 10k characters in + total.""" + + def as_dict(self) -> dict: + """Serializes the ResolvedPipelineTaskValues into a dictionary suitable for use as a JSON request body.""" + body = {} + if self.pipeline_task_parameters: + body["pipeline_task_parameters"] = self.pipeline_task_parameters + return body + + def as_shallow_dict(self) -> dict: + """Serializes the ResolvedPipelineTaskValues into a shallow dictionary of its immediate attributes.""" + body = {} + if self.pipeline_task_parameters: + body["pipeline_task_parameters"] = self.pipeline_task_parameters + return body + + @classmethod + def from_dict(cls, d: Dict[str, Any]) -> ResolvedPipelineTaskValues: + """Deserializes the ResolvedPipelineTaskValues from a dictionary.""" + return cls(pipeline_task_parameters=d.get("pipeline_task_parameters", None)) + + @dataclass class ResolvedPythonWheelTaskValues: named_parameters: Optional[Dict[str, str]] = None @@ -4721,6 +4756,8 @@ class ResolvedValues: notebook_task: Optional[ResolvedNotebookTaskValues] = None + pipeline_task: Optional[ResolvedPipelineTaskValues] = None + python_wheel_task: Optional[ResolvedPythonWheelTaskValues] = None run_job_task: Optional[ResolvedRunJobTaskValues] = None @@ -4744,6 +4781,8 @@ def as_dict(self) -> dict: body["dbt_task"] = self.dbt_task.as_dict() if self.notebook_task: body["notebook_task"] = self.notebook_task.as_dict() + if self.pipeline_task: + body["pipeline_task"] = self.pipeline_task.as_dict() if self.python_wheel_task: body["python_wheel_task"] = self.python_wheel_task.as_dict() if self.run_job_task: @@ -4769,6 +4808,8 @@ def as_shallow_dict(self) -> dict: body["dbt_task"] = self.dbt_task if self.notebook_task: body["notebook_task"] = self.notebook_task + if self.pipeline_task: + body["pipeline_task"] = self.pipeline_task if self.python_wheel_task: body["python_wheel_task"] = self.python_wheel_task if self.run_job_task: @@ -4792,6 +4833,7 @@ def from_dict(cls, d: Dict[str, Any]) -> ResolvedValues: condition_task=_from_dict(d, "condition_task", ResolvedConditionTaskValues), dbt_task=_from_dict(d, "dbt_task", ResolvedDbtTaskValues), notebook_task=_from_dict(d, "notebook_task", ResolvedNotebookTaskValues), + pipeline_task=_from_dict(d, "pipeline_task", ResolvedPipelineTaskValues), python_wheel_task=_from_dict(d, "python_wheel_task", ResolvedPythonWheelTaskValues), run_job_task=_from_dict(d, "run_job_task", ResolvedRunJobTaskValues), simulation_task=_from_dict(d, "simulation_task", ResolvedParamPairValues), diff --git a/databricks/sdk/service/pipelines.py b/databricks/sdk/service/pipelines.py index 3281820bd..055a4e876 100755 --- a/databricks/sdk/service/pipelines.py +++ b/databricks/sdk/service/pipelines.py @@ -841,6 +841,10 @@ class GetPipelineResponse: name: Optional[str] = None """A human friendly identifier for the pipeline, taken from the `spec`.""" + parameters: Optional[Dict[str, str]] = None + """Key/value map of default parameters to use for pipeline execution. Maximum total size: 10k + characters (JSON format)""" + pipeline_id: Optional[str] = None """The ID of the pipeline.""" @@ -879,6 +883,8 @@ def as_dict(self) -> dict: body["latest_updates"] = [v.as_dict() for v in self.latest_updates] if self.name is not None: body["name"] = self.name + if self.parameters: + body["parameters"] = self.parameters if self.pipeline_id is not None: body["pipeline_id"] = self.pipeline_id if self.run_as: @@ -912,6 +918,8 @@ def as_shallow_dict(self) -> dict: body["latest_updates"] = self.latest_updates if self.name is not None: body["name"] = self.name + if self.parameters: + body["parameters"] = self.parameters if self.pipeline_id is not None: body["pipeline_id"] = self.pipeline_id if self.run_as: @@ -937,6 +945,7 @@ def from_dict(cls, d: Dict[str, Any]) -> GetPipelineResponse: last_modified=d.get("last_modified", None), latest_updates=_repeated_dict(d, "latest_updates", UpdateStateInfo), name=d.get("name", None), + parameters=d.get("parameters", None), pipeline_id=d.get("pipeline_id", None), run_as=_from_dict(d, "run_as", RunAs), run_as_user_name=d.get("run_as_user_name", None), @@ -5184,6 +5193,7 @@ def create( libraries: Optional[List[PipelineLibrary]] = None, name: Optional[str] = None, notifications: Optional[List[Notifications]] = None, + parameters: Optional[Dict[str, str]] = None, photon: Optional[bool] = None, restart_window: Optional[RestartWindow] = None, root_path: Optional[str] = None, @@ -5241,6 +5251,9 @@ def create( Friendly identifier for this pipeline. :param notifications: List[:class:`Notifications`] (optional) List of notification settings for this pipeline. + :param parameters: Dict[str,str] (optional) + Key/value map of default parameters to use for pipeline execution. Maximum total size: 10k + characters (JSON format) :param photon: bool (optional) Whether Photon is enabled for this pipeline. :param restart_window: :class:`RestartWindow` (optional) @@ -5312,6 +5325,8 @@ def create( body["name"] = name if notifications is not None: body["notifications"] = [v.as_dict() for v in notifications] + if parameters is not None: + body["parameters"] = parameters if photon is not None: body["photon"] = photon if restart_window is not None: @@ -5771,6 +5786,7 @@ def update( libraries: Optional[List[PipelineLibrary]] = None, name: Optional[str] = None, notifications: Optional[List[Notifications]] = None, + parameters: Optional[Dict[str, str]] = None, photon: Optional[bool] = None, restart_window: Optional[RestartWindow] = None, root_path: Optional[str] = None, @@ -5831,6 +5847,9 @@ def update( Friendly identifier for this pipeline. :param notifications: List[:class:`Notifications`] (optional) List of notification settings for this pipeline. + :param parameters: Dict[str,str] (optional) + Key/value map of default parameters to use for pipeline execution. Maximum total size: 10k + characters (JSON format) :param photon: bool (optional) Whether Photon is enabled for this pipeline. :param restart_window: :class:`RestartWindow` (optional) @@ -5902,6 +5921,8 @@ def update( body["name"] = name if notifications is not None: body["notifications"] = [v.as_dict() for v in notifications] + if parameters is not None: + body["parameters"] = parameters if photon is not None: body["photon"] = photon if restart_window is not None: diff --git a/databricks/sdk/service/supervisoragents.py b/databricks/sdk/service/supervisoragents.py index 39f081dd4..d87c6087c 100755 --- a/databricks/sdk/service/supervisoragents.py +++ b/databricks/sdk/service/supervisoragents.py @@ -620,7 +620,7 @@ class Tool: tool_type: str """Tool type. Must be one of: "genie_space", "knowledge_assistant", "uc_function", "uc_connection", "app", "volume", "dashboard", "serving_endpoint", "table", "vector_search_index", "catalog", - "schema", "supervisor_agent", "web_search". The legacy values "lakeview_dashboard" and + "schema", "supervisor_agent", "web_search", "skill". The legacy values "lakeview_dashboard" and "uc_table" are also accepted and remain equivalent to "dashboard" and "table" respectively.""" app: Optional[App] = None @@ -852,7 +852,7 @@ def create_supervisor_agent(self, supervisor_agent: SupervisorAgent) -> Supervis def create_tool(self, parent: str, tool: Tool, tool_id: str) -> Tool: """Creates a Tool under a Supervisor Agent. Specify one of "genie_space", "knowledge_assistant", "uc_function", "uc_connection", "app", "volume", "dashboard", "table", "vector_search_index", - "catalog", "schema", "supervisor_agent", "web_search" in the request body. The legacy values + "catalog", "schema", "supervisor_agent", "web_search", "skill" in the request body. The legacy values "lakeview_dashboard" and "uc_table" are also accepted and remain equivalent to "dashboard" and "table" respectively. diff --git a/docs/account/oauth2/service_principal_secrets.rst b/docs/account/oauth2/service_principal_secrets.rst old mode 100644 new mode 100755 index e95b779f0..f8e0b247f --- a/docs/account/oauth2/service_principal_secrets.rst +++ b/docs/account/oauth2/service_principal_secrets.rst @@ -15,7 +15,6 @@ [Authentication using OAuth tokens for service principals]: https://docs.databricks.com/dev-tools/authentication-oauth.html [Databricks Terraform Provider]: https://github.com/databricks/terraform-provider-databricks/blob/master/docs/index.md#authenticating-with-service-principal - .. py:method:: create(service_principal_id: str [, lifetime: Optional[str]]) -> CreateServicePrincipalSecretResponse diff --git a/docs/account/settings/network_connectivity.rst b/docs/account/settings/network_connectivity.rst index 5e1db5aed..9cc92a8d0 100755 --- a/docs/account/settings/network_connectivity.rst +++ b/docs/account/settings/network_connectivity.rst @@ -11,7 +11,6 @@ Azure Private Link. See [configure serverless secure connectivity]. [configure serverless secure connectivity]: https://learn.microsoft.com/azure/databricks/security/network/serverless-network-security - .. py:method:: create_network_connectivity_configuration(network_connectivity_config: CreateNetworkConnectivityConfiguration) -> NetworkConnectivityConfiguration diff --git a/docs/dbdataclasses/catalog.rst b/docs/dbdataclasses/catalog.rst index 48a97e428..d8baff997 100755 --- a/docs/dbdataclasses/catalog.rst +++ b/docs/dbdataclasses/catalog.rst @@ -1548,7 +1548,7 @@ These dataclasses are used in the SDK to represent API requests and responses fo .. py:class:: SecurableKind - Latest kind: CONNECTION_ICEBERG_REST_OAUTH_M2M = 336; Next id: 337 + Latest kind: CONNECTION_GOOGLE_CLOUD_LAKEHOUSE_SERVICE_ACCOUNT = 340; Next id: 341 .. py:attribute:: TABLE_DB_STORAGE :value: "TABLE_DB_STORAGE" diff --git a/docs/dbdataclasses/jobs.rst b/docs/dbdataclasses/jobs.rst index 1245ea0b6..5fc8275a9 100755 --- a/docs/dbdataclasses/jobs.rst +++ b/docs/dbdataclasses/jobs.rst @@ -666,6 +666,10 @@ These dataclasses are used in the SDK to represent API requests and responses fo :members: :undoc-members: +.. autoclass:: ResolvedPipelineTaskValues + :members: + :undoc-members: + .. autoclass:: ResolvedPythonWheelTaskValues :members: :undoc-members: diff --git a/docs/workspace/catalog/resource_quotas.rst b/docs/workspace/catalog/resource_quotas.rst old mode 100644 new mode 100755 index ae293fc11..14a4fca4a --- a/docs/workspace/catalog/resource_quotas.rst +++ b/docs/workspace/catalog/resource_quotas.rst @@ -10,7 +10,6 @@ limits. For more information on resource quotas see the [Unity Catalog documentation]. [Unity Catalog documentation]: https://docs.databricks.com/en/data-governance/unity-catalog/index.html#resource-quotas - .. py:method:: get_quota(parent_securable_type: str, parent_full_name: str, quota_name: str) -> GetQuotaResponse diff --git a/docs/workspace/compute/instance_profiles.rst b/docs/workspace/compute/instance_profiles.rst old mode 100644 new mode 100755 index 7a5192bd5..5a874108c --- a/docs/workspace/compute/instance_profiles.rst +++ b/docs/workspace/compute/instance_profiles.rst @@ -9,7 +9,6 @@ buckets] using instance profiles for more information. [Secure access to S3 buckets]: https://docs.databricks.com/administration-guide/cloud-configurations/aws/instance-profiles.html - .. py:method:: add(instance_profile_arn: str [, iam_role_arn: Optional[str], is_meta_instance_profile: Optional[bool], skip_validation: Optional[bool]]) diff --git a/docs/workspace/oauth2/service_principal_secrets_proxy.rst b/docs/workspace/oauth2/service_principal_secrets_proxy.rst old mode 100644 new mode 100755 index 929c8fa72..33c48eef8 --- a/docs/workspace/oauth2/service_principal_secrets_proxy.rst +++ b/docs/workspace/oauth2/service_principal_secrets_proxy.rst @@ -16,7 +16,6 @@ [Authentication using OAuth tokens for service principals]: https://docs.databricks.com/dev-tools/authentication-oauth.html [Databricks Terraform Provider]: https://github.com/databricks/terraform-provider-databricks/blob/master/docs/index.md#authenticating-with-service-principal - .. py:method:: create(service_principal_id: str [, lifetime: Optional[str]]) -> CreateServicePrincipalSecretResponse diff --git a/docs/workspace/pipelines/pipelines.rst b/docs/workspace/pipelines/pipelines.rst index b4c1fc8b2..70c8e007c 100755 --- a/docs/workspace/pipelines/pipelines.rst +++ b/docs/workspace/pipelines/pipelines.rst @@ -109,7 +109,7 @@ :returns: :class:`ClonePipelineResponse` - .. py:method:: create( [, allow_duplicate_names: Optional[bool], budget_policy_id: Optional[str], catalog: Optional[str], channel: Optional[str], clusters: Optional[List[PipelineCluster]], configuration: Optional[Dict[str, str]], continuous: Optional[bool], deployment: Optional[PipelineDeployment], development: Optional[bool], dry_run: Optional[bool], edition: Optional[str], environment: Optional[PipelinesEnvironment], event_log: Optional[EventLogSpec], filters: Optional[Filters], gateway_definition: Optional[IngestionGatewayPipelineDefinition], id: Optional[str], ingestion_definition: Optional[IngestionPipelineDefinition], libraries: Optional[List[PipelineLibrary]], name: Optional[str], notifications: Optional[List[Notifications]], photon: Optional[bool], restart_window: Optional[RestartWindow], root_path: Optional[str], run_as: Optional[RunAs], schema: Optional[str], serverless: Optional[bool], storage: Optional[str], tags: Optional[Dict[str, str]], target: Optional[str], trigger: Optional[PipelineTrigger], usage_policy_id: Optional[str]]) -> CreatePipelineResponse + .. py:method:: create( [, allow_duplicate_names: Optional[bool], budget_policy_id: Optional[str], catalog: Optional[str], channel: Optional[str], clusters: Optional[List[PipelineCluster]], configuration: Optional[Dict[str, str]], continuous: Optional[bool], deployment: Optional[PipelineDeployment], development: Optional[bool], dry_run: Optional[bool], edition: Optional[str], environment: Optional[PipelinesEnvironment], event_log: Optional[EventLogSpec], filters: Optional[Filters], gateway_definition: Optional[IngestionGatewayPipelineDefinition], id: Optional[str], ingestion_definition: Optional[IngestionPipelineDefinition], libraries: Optional[List[PipelineLibrary]], name: Optional[str], notifications: Optional[List[Notifications]], parameters: Optional[Dict[str, str]], photon: Optional[bool], restart_window: Optional[RestartWindow], root_path: Optional[str], run_as: Optional[RunAs], schema: Optional[str], serverless: Optional[bool], storage: Optional[str], tags: Optional[Dict[str, str]], target: Optional[str], trigger: Optional[PipelineTrigger], usage_policy_id: Optional[str]]) -> CreatePipelineResponse Usage: @@ -190,6 +190,9 @@ Friendly identifier for this pipeline. :param notifications: List[:class:`Notifications`] (optional) List of notification settings for this pipeline. + :param parameters: Dict[str,str] (optional) + Key/value map of default parameters to use for pipeline execution. Maximum total size: 10k + characters (JSON format) :param photon: bool (optional) Whether Photon is enabled for this pipeline. :param restart_window: :class:`RestartWindow` (optional) @@ -493,7 +496,7 @@ .. py:method:: stop_and_wait(pipeline_id: str, timeout: datetime.timedelta = 0:20:00) -> GetPipelineResponse - .. py:method:: update(pipeline_id: str [, allow_duplicate_names: Optional[bool], budget_policy_id: Optional[str], catalog: Optional[str], channel: Optional[str], clusters: Optional[List[PipelineCluster]], configuration: Optional[Dict[str, str]], continuous: Optional[bool], deployment: Optional[PipelineDeployment], development: Optional[bool], edition: Optional[str], environment: Optional[PipelinesEnvironment], event_log: Optional[EventLogSpec], expected_last_modified: Optional[int], filters: Optional[Filters], gateway_definition: Optional[IngestionGatewayPipelineDefinition], id: Optional[str], ingestion_definition: Optional[IngestionPipelineDefinition], libraries: Optional[List[PipelineLibrary]], name: Optional[str], notifications: Optional[List[Notifications]], photon: Optional[bool], restart_window: Optional[RestartWindow], root_path: Optional[str], run_as: Optional[RunAs], schema: Optional[str], serverless: Optional[bool], storage: Optional[str], tags: Optional[Dict[str, str]], target: Optional[str], trigger: Optional[PipelineTrigger], usage_policy_id: Optional[str]]) + .. py:method:: update(pipeline_id: str [, allow_duplicate_names: Optional[bool], budget_policy_id: Optional[str], catalog: Optional[str], channel: Optional[str], clusters: Optional[List[PipelineCluster]], configuration: Optional[Dict[str, str]], continuous: Optional[bool], deployment: Optional[PipelineDeployment], development: Optional[bool], edition: Optional[str], environment: Optional[PipelinesEnvironment], event_log: Optional[EventLogSpec], expected_last_modified: Optional[int], filters: Optional[Filters], gateway_definition: Optional[IngestionGatewayPipelineDefinition], id: Optional[str], ingestion_definition: Optional[IngestionPipelineDefinition], libraries: Optional[List[PipelineLibrary]], name: Optional[str], notifications: Optional[List[Notifications]], parameters: Optional[Dict[str, str]], photon: Optional[bool], restart_window: Optional[RestartWindow], root_path: Optional[str], run_as: Optional[RunAs], schema: Optional[str], serverless: Optional[bool], storage: Optional[str], tags: Optional[Dict[str, str]], target: Optional[str], trigger: Optional[PipelineTrigger], usage_policy_id: Optional[str]]) Usage: @@ -593,6 +596,9 @@ Friendly identifier for this pipeline. :param notifications: List[:class:`Notifications`] (optional) List of notification settings for this pipeline. + :param parameters: Dict[str,str] (optional) + Key/value map of default parameters to use for pipeline execution. Maximum total size: 10k + characters (JSON format) :param photon: bool (optional) Whether Photon is enabled for this pipeline. :param restart_window: :class:`RestartWindow` (optional) diff --git a/docs/workspace/sql/statement_execution.rst b/docs/workspace/sql/statement_execution.rst index 77f65c858..b8e12e388 100755 --- a/docs/workspace/sql/statement_execution.rst +++ b/docs/workspace/sql/statement_execution.rst @@ -87,7 +87,6 @@ [Apache Arrow Columnar]: https://arrow.apache.org/overview/ [Databricks SQL Statement Execution API tutorial]: https://docs.databricks.com/sql/api/sql-execution-tutorial.html - .. py:method:: cancel_execution(statement_id: str) diff --git a/docs/workspace/supervisoragents/supervisor_agents.rst b/docs/workspace/supervisoragents/supervisor_agents.rst index a58be386c..9e35ef725 100755 --- a/docs/workspace/supervisoragents/supervisor_agents.rst +++ b/docs/workspace/supervisoragents/supervisor_agents.rst @@ -32,7 +32,7 @@ Creates a Tool under a Supervisor Agent. Specify one of "genie_space", "knowledge_assistant", "uc_function", "uc_connection", "app", "volume", "dashboard", "table", "vector_search_index", - "catalog", "schema", "supervisor_agent", "web_search" in the request body. The legacy values + "catalog", "schema", "supervisor_agent", "web_search", "skill" in the request body. The legacy values "lakeview_dashboard" and "uc_table" are also accepted and remain equivalent to "dashboard" and "table" respectively. diff --git a/docs/workspace/tags/tag_policies.rst b/docs/workspace/tags/tag_policies.rst old mode 100644 new mode 100755 index 0c335d8ac..726c0b6ab --- a/docs/workspace/tags/tag_policies.rst +++ b/docs/workspace/tags/tag_policies.rst @@ -10,7 +10,6 @@ [Account Access Control Proxy API]: https://docs.databricks.com/api/workspace/accountaccesscontrolproxy [Tag Policy Terraform documentation]: https://registry.terraform.io/providers/databricks/databricks/latest/docs/resources/tag_policy - .. py:method:: create_tag_policy(tag_policy: TagPolicy) -> TagPolicy