Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Automated regeneration of Dataplex client #10904

Merged
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 clients/dataplex/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Install this package from [Hex](https://hex.pm) by adding

```elixir
def deps do
[{:google_api_dataplex, "~> 0.7"}]
[{:google_api_dataplex, "~> 0.8"}]
end
```

Expand Down
2,369 changes: 2,237 additions & 132 deletions clients/dataplex/lib/google_api/dataplex/v1/api/projects.ex

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion clients/dataplex/lib/google_api/dataplex/v1/metadata.ex
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ defmodule GoogleApi.Dataplex.V1 do
API client metadata for GoogleApi.Dataplex.V1.
"""

@discovery_revision "20221113"
@discovery_revision "20240304"

def discovery_revision(), do: @discovery_revision
end
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ defmodule GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1AssetDiscoverySpec do
* `excludePatterns` (*type:* `list(String.t)`, *default:* `nil`) - Optional. The list of patterns to apply for selecting data to exclude during discovery. For Cloud Storage bucket assets, these are interpreted as glob patterns used to match object names. For BigQuery dataset assets, these are interpreted as patterns to match table names.
* `includePatterns` (*type:* `list(String.t)`, *default:* `nil`) - Optional. The list of patterns to apply for selecting data to include during discovery if only a subset of the data should considered. For Cloud Storage bucket assets, these are interpreted as glob patterns used to match object names. For BigQuery dataset assets, these are interpreted as patterns to match table names.
* `jsonOptions` (*type:* `GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1AssetDiscoverySpecJsonOptions.t`, *default:* `nil`) - Optional. Configuration for Json data.
* `schedule` (*type:* `String.t`, *default:* `nil`) - Optional. Cron schedule (https://en.wikipedia.org/wiki/Cron) for running discovery periodically. Successive discovery runs must be scheduled at least 60 minutes apart. The default value is to run discovery every 60 minutes. To explicitly set a timezone to the cron tab, apply a prefix in the cron tab: "CRON_TZ=${IANA_TIME_ZONE}" or TZ=${IANA_TIME_ZONE}". The ${IANA_TIME_ZONE} may only be a valid string from IANA time zone database. For example, "CRON_TZ=America/New_York 1 * * * *", or "TZ=America/New_York 1 * * * *".
* `schedule` (*type:* `String.t`, *default:* `nil`) - Optional. Cron schedule (https://en.wikipedia.org/wiki/Cron) for running discovery periodically. Successive discovery runs must be scheduled at least 60 minutes apart. The default value is to run discovery every 60 minutes. To explicitly set a timezone to the cron tab, apply a prefix in the cron tab: "CRON_TZ=${IANA_TIME_ZONE}" or TZ=${IANA_TIME_ZONE}". The ${IANA_TIME_ZONE} may only be a valid string from IANA time zone database. For example, CRON_TZ=America/New_York 1 * * * *, or TZ=America/New_York 1 * * * *.
"""

use GoogleApi.Gax.ModelBase
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,20 @@ defmodule GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1AssetResourceSpec do
## Attributes

* `name` (*type:* `String.t`, *default:* `nil`) - Immutable. Relative name of the cloud resource that contains the data that is being managed within a lake. For example: projects/{project_number}/buckets/{bucket_id} projects/{project_number}/datasets/{dataset_id}
* `readAccessMode` (*type:* `String.t`, *default:* `nil`) - Optional. Determines how read permissions are handled for each asset and their associated tables. Only available to storage buckets assets.
* `type` (*type:* `String.t`, *default:* `nil`) - Required. Immutable. Type of resource.
"""

use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:name => String.t() | nil,
:readAccessMode => String.t() | nil,
:type => String.t() | nil
}

field(:name)
field(:readAccessMode)
field(:type)
end

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ defmodule GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1AssetResourceStatus d

## Attributes

* `managedAccessIdentity` (*type:* `String.t`, *default:* `nil`) - Output only. Service account associated with the BigQuery Connection.
* `message` (*type:* `String.t`, *default:* `nil`) - Additional information about the current state.
* `state` (*type:* `String.t`, *default:* `nil`) - The current state of the managed resource.
* `updateTime` (*type:* `DateTime.t`, *default:* `nil`) - Last update time of the status.
Expand All @@ -29,11 +30,13 @@ defmodule GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1AssetResourceStatus d
use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:managedAccessIdentity => String.t() | nil,
:message => String.t() | nil,
:state => String.t() | nil,
:updateTime => DateTime.t() | nil
}

field(:managedAccessIdentity)
field(:message)
field(:state)
field(:updateTime, as: DateTime)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Copyright 2019 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# NOTE: This file is auto generated by the elixir code generator program.
# Do not edit this file manually.

defmodule GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAccessSpec do
@moduledoc """
DataAccessSpec holds the access control configuration to be enforced on data stored within resources (eg: rows, columns in BigQuery Tables). When associated with data, the data is only accessible to principals explicitly granted access through the DataAccessSpec. Principals with access to the containing resource are not implicitly granted access.

## Attributes

* `readers` (*type:* `list(String.t)`, *default:* `nil`) - Optional. The format of strings follows the pattern followed by IAM in the bindings. user:{email}, serviceAccount:{email} group:{email}. The set of principals to be granted reader role on data stored within resources.
"""

use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:readers => list(String.t()) | nil
}

field(:readers, type: :list)
end

defimpl Poison.Decoder, for: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAccessSpec do
def decode(value, options) do
GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAccessSpec.decode(value, options)
end
end

defimpl Poison.Encoder, for: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAccessSpec do
def encode(value, options) do
GoogleApi.Gax.ModelBase.encode(value, options)
end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# Copyright 2019 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# NOTE: This file is auto generated by the elixir code generator program.
# Do not edit this file manually.

defmodule GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttribute do
@moduledoc """
Denotes one dataAttribute in a dataTaxonomy, for example, PII. DataAttribute resources can be defined in a hierarchy. A single dataAttribute resource can contain specs of multiple types PII - ResourceAccessSpec : - readers :[email protected] - DataAccessSpec : - readers :[email protected]

## Attributes

* `attributeCount` (*type:* `integer()`, *default:* `nil`) - Output only. The number of child attributes present for this attribute.
* `createTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when the DataAttribute was created.
* `dataAccessSpec` (*type:* `GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAccessSpec.t`, *default:* `nil`) - Optional. Specified when applied to data stored on the resource (eg: rows, columns in BigQuery Tables).
* `description` (*type:* `String.t`, *default:* `nil`) - Optional. Description of the DataAttribute.
* `displayName` (*type:* `String.t`, *default:* `nil`) - Optional. User friendly display name.
* `etag` (*type:* `String.t`, *default:* `nil`) - This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.
* `labels` (*type:* `map()`, *default:* `nil`) - Optional. User-defined labels for the DataAttribute.
* `name` (*type:* `String.t`, *default:* `nil`) - Output only. The relative resource name of the dataAttribute, of the form: projects/{project_number}/locations/{location_id}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}.
* `parentId` (*type:* `String.t`, *default:* `nil`) - Optional. The ID of the parent DataAttribute resource, should belong to the same data taxonomy. Circular dependency in parent chain is not valid. Maximum depth of the hierarchy allowed is 4. a -> b -> c -> d -> e, depth = 4
* `resourceAccessSpec` (*type:* `GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1ResourceAccessSpec.t`, *default:* `nil`) - Optional. Specified when applied to a resource (eg: Cloud Storage bucket, BigQuery dataset, BigQuery table).
* `uid` (*type:* `String.t`, *default:* `nil`) - Output only. System generated globally unique ID for the DataAttribute. This ID will be different if the DataAttribute is deleted and re-created with the same name.
* `updateTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when the DataAttribute was last updated.
"""

use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:attributeCount => integer() | nil,
:createTime => DateTime.t() | nil,
:dataAccessSpec =>
GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAccessSpec.t() | nil,
:description => String.t() | nil,
:displayName => String.t() | nil,
:etag => String.t() | nil,
:labels => map() | nil,
:name => String.t() | nil,
:parentId => String.t() | nil,
:resourceAccessSpec =>
GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1ResourceAccessSpec.t() | nil,
:uid => String.t() | nil,
:updateTime => DateTime.t() | nil
}

field(:attributeCount)
field(:createTime, as: DateTime)
field(:dataAccessSpec, as: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAccessSpec)
field(:description)
field(:displayName)
field(:etag)
field(:labels, type: :map)
field(:name)
field(:parentId)

field(:resourceAccessSpec,
as: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1ResourceAccessSpec
)

field(:uid)
field(:updateTime, as: DateTime)
end

defimpl Poison.Decoder, for: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttribute do
def decode(value, options) do
GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttribute.decode(value, options)
end
end

defimpl Poison.Encoder, for: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttribute do
def encode(value, options) do
GoogleApi.Gax.ModelBase.encode(value, options)
end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# Copyright 2019 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# NOTE: This file is auto generated by the elixir code generator program.
# Do not edit this file manually.

defmodule GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBinding do
@moduledoc """
DataAttributeBinding represents binding of attributes to resources. Eg: Bind 'CustomerInfo' entity with 'PII' attribute.

## Attributes

* `attributes` (*type:* `list(String.t)`, *default:* `nil`) - Optional. List of attributes to be associated with the resource, provided in the form: projects/{project}/locations/{location}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}
* `createTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when the DataAttributeBinding was created.
* `description` (*type:* `String.t`, *default:* `nil`) - Optional. Description of the DataAttributeBinding.
* `displayName` (*type:* `String.t`, *default:* `nil`) - Optional. User friendly display name.
* `etag` (*type:* `String.t`, *default:* `nil`) - This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Etags must be used when calling the DeleteDataAttributeBinding and the UpdateDataAttributeBinding method.
* `labels` (*type:* `map()`, *default:* `nil`) - Optional. User-defined labels for the DataAttributeBinding.
* `name` (*type:* `String.t`, *default:* `nil`) - Output only. The relative resource name of the Data Attribute Binding, of the form: projects/{project_number}/locations/{location}/dataAttributeBindings/{data_attribute_binding_id}
* `paths` (*type:* `list(GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBindingPath.t)`, *default:* `nil`) - Optional. The list of paths for items within the associated resource (eg. columns and partitions within a table) along with attribute bindings.
* `resource` (*type:* `String.t`, *default:* `nil`) - Optional. Immutable. The resource name of the resource that is associated to attributes. Presently, only entity resource is supported in the form: projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/entities/{entity_id} Must belong in the same project and region as the attribute binding, and there can only exist one active binding for a resource.
* `uid` (*type:* `String.t`, *default:* `nil`) - Output only. System generated globally unique ID for the DataAttributeBinding. This ID will be different if the DataAttributeBinding is deleted and re-created with the same name.
* `updateTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time when the DataAttributeBinding was last updated.
"""

use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:attributes => list(String.t()) | nil,
:createTime => DateTime.t() | nil,
:description => String.t() | nil,
:displayName => String.t() | nil,
:etag => String.t() | nil,
:labels => map() | nil,
:name => String.t() | nil,
:paths =>
list(GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBindingPath.t())
| nil,
:resource => String.t() | nil,
:uid => String.t() | nil,
:updateTime => DateTime.t() | nil
}

field(:attributes, type: :list)
field(:createTime, as: DateTime)
field(:description)
field(:displayName)
field(:etag)
field(:labels, type: :map)
field(:name)

field(:paths,
as: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBindingPath,
type: :list
)

field(:resource)
field(:uid)
field(:updateTime, as: DateTime)
end

defimpl Poison.Decoder, for: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBinding do
def decode(value, options) do
GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBinding.decode(value, options)
end
end

defimpl Poison.Encoder, for: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBinding do
def encode(value, options) do
GoogleApi.Gax.ModelBase.encode(value, options)
end
end
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Copyright 2019 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# NOTE: This file is auto generated by the elixir code generator program.
# Do not edit this file manually.

defmodule GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBindingPath do
@moduledoc """
Represents a subresource of the given resource, and associated bindings with it. Currently supported subresources are column and partition schema fields within a table.

## Attributes

* `attributes` (*type:* `list(String.t)`, *default:* `nil`) - Optional. List of attributes to be associated with the path of the resource, provided in the form: projects/{project}/locations/{location}/dataTaxonomies/{dataTaxonomy}/attributes/{data_attribute_id}
* `name` (*type:* `String.t`, *default:* `nil`) - Required. The name identifier of the path. Nested columns should be of the form: 'address.city'.
"""

use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:attributes => list(String.t()) | nil,
:name => String.t() | nil
}

field(:attributes, type: :list)
field(:name)
end

defimpl Poison.Decoder,
for: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBindingPath do
def decode(value, options) do
GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBindingPath.decode(
value,
options
)
end
end

defimpl Poison.Encoder,
for: GoogleApi.Dataplex.V1.Model.GoogleCloudDataplexV1DataAttributeBindingPath do
def encode(value, options) do
GoogleApi.Gax.ModelBase.encode(value, options)
end
end
Loading
Loading