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 StorageTransfer client #10877

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
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,7 @@ defmodule GoogleApi.StorageTransfer.V1.Api.TransferOperations do

* `connection` (*type:* `GoogleApi.StorageTransfer.V1.Connection.t`) - Connection to server
* `name` (*type:* `String.t`) - Required. The name of the type being listed; must be `transferOperations`.
* `filter` (*type:* `String.t`) - Required. A list of query parameters specified as JSON text in the form of: `{"projectId":"my_project_id", "jobNames":["jobid1","jobid2",...], "operationNames":["opid1","opid2",...], "transferStatuses":["status1","status2",...]}` Since `jobNames`, `operationNames`, and `transferStatuses` support multiple values, they must be specified with array notation. `projectId` is required. `jobNames`, `operationNames`, and `transferStatuses` are optional. The valid values for `transferStatuses` are case-insensitive: IN_PROGRESS, PAUSED, SUCCESS, FAILED, and ABORTED.
* `filter` (*type:* `String.t`) - Required. A list of query parameters specified as JSON text in the form of: `{"projectId":"my_project_id", "jobNames":["jobid1","jobid2",...], "jobNamePattern": "job_name_pattern", "operationNames":["opid1","opid2",...], "operationNamePattern": "operation_name_pattern", "minCreationTime": "min_creation_time", "maxCreationTime": "max_creation_time", "transferStatuses":["status1","status2",...]}` Since `jobNames`, `operationNames`, and `transferStatuses` support multiple values, they must be specified with array notation. `projectId` is the only argument that is required. If specified, `jobNamePattern` and `operationNamePattern` must match the full job or operation name respectively. '*' is a wildcard matching 0 or more characters. `minCreationTime` and `maxCreationTime` should be timestamps encoded as a string in the [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. The valid values for `transferStatuses` are case-insensitive: IN_PROGRESS, PAUSED, SUCCESS, FAILED, and ABORTED.
* `optional_params` (*type:* `keyword()`) - Optional parameters
* `:"$.xgafv"` (*type:* `String.t`) - V1 error format.
* `:access_token` (*type:* `String.t`) - OAuth access token.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ defmodule GoogleApi.StorageTransfer.V1 do
API client metadata for GoogleApi.StorageTransfer.V1.
"""

@discovery_revision "20220921"
@discovery_revision "20240302"

def discovery_revision(), do: @discovery_revision
end
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ defmodule GoogleApi.StorageTransfer.V1.Model.AwsS3Data do

* `awsAccessKey` (*type:* `GoogleApi.StorageTransfer.V1.Model.AwsAccessKey.t`, *default:* `nil`) - Input only. AWS access key used to sign the API requests to the AWS S3 bucket. Permissions on the bucket must be granted to the access ID of the AWS access key. For information on our data retention policy for user credentials, see [User credentials](/storage-transfer/docs/data-retention#user-credentials).
* `bucketName` (*type:* `String.t`, *default:* `nil`) - Required. S3 Bucket name (see [Creating a bucket](https://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).
* `cloudfrontDomain` (*type:* `String.t`, *default:* `nil`) - Optional. The CloudFront distribution domain name pointing to this bucket, to use when fetching. See [Transfer from S3 via CloudFront](https://cloud.google.com/storage-transfer/docs/s3-cloudfront) for more information. Format: `https://{id}.cloudfront.net` or any valid custom domain. Must begin with `https://`.
* `credentialsSecret` (*type:* `String.t`, *default:* `nil`) - Optional. The Resource name of a secret in Secret Manager. AWS credentials must be stored in Secret Manager in JSON format: { "access_key_id": "ACCESS_KEY_ID", "secret_access_key": "SECRET_ACCESS_KEY" } GoogleServiceAccount must be granted `roles/secretmanager.secretAccessor` for the resource. See [Configure access to a source: Amazon S3] (https://cloud.google.com/storage-transfer/docs/source-amazon-s3#secret_manager) for more information. If `credentials_secret` is specified, do not specify role_arn or aws_access_key. Format: `projects/{project_number}/secrets/{secret_name}`
* `path` (*type:* `String.t`, *default:* `nil`) - Root path to transfer objects. Must be an empty string or full path name that ends with a '/'. This field is treated as an object prefix. As such, it should generally not begin with a '/'.
* `roleArn` (*type:* `String.t`, *default:* `nil`) - The Amazon Resource Name (ARN) of the role to support temporary credentials via `AssumeRoleWithWebIdentity`. For more information about ARNs, see [IAM ARNs](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns). When a role ARN is provided, Transfer Service fetches temporary credentials for the session using a `AssumeRoleWithWebIdentity` call for the provided role using the GoogleServiceAccount for this project.
"""
Expand All @@ -32,12 +34,16 @@ defmodule GoogleApi.StorageTransfer.V1.Model.AwsS3Data do
@type t :: %__MODULE__{
:awsAccessKey => GoogleApi.StorageTransfer.V1.Model.AwsAccessKey.t() | nil,
:bucketName => String.t() | nil,
:cloudfrontDomain => String.t() | nil,
:credentialsSecret => String.t() | nil,
:path => String.t() | nil,
:roleArn => String.t() | nil
}

field(:awsAccessKey, as: GoogleApi.StorageTransfer.V1.Model.AwsAccessKey)
field(:bucketName)
field(:cloudfrontDomain)
field(:credentialsSecret)
field(:path)
field(:roleArn)
end
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ defmodule GoogleApi.StorageTransfer.V1.Model.AzureBlobStorageData do

* `azureCredentials` (*type:* `GoogleApi.StorageTransfer.V1.Model.AzureCredentials.t`, *default:* `nil`) - Required. Input only. Credentials used to authenticate API requests to Azure. For information on our data retention policy for user credentials, see [User credentials](/storage-transfer/docs/data-retention#user-credentials).
* `container` (*type:* `String.t`, *default:* `nil`) - Required. The container to transfer from the Azure Storage account.
* `credentialsSecret` (*type:* `String.t`, *default:* `nil`) - Optional. The Resource name of a secret in Secret Manager. The Azure SAS token must be stored in Secret Manager in JSON format: { "sas_token" : "SAS_TOKEN" } GoogleServiceAccount must be granted `roles/secretmanager.secretAccessor` for the resource. See [Configure access to a source: Microsoft Azure Blob Storage] (https://cloud.google.com/storage-transfer/docs/source-microsoft-azure#secret_manager) for more information. If `credentials_secret` is specified, do not specify azure_credentials. Format: `projects/{project_number}/secrets/{secret_name}`
* `path` (*type:* `String.t`, *default:* `nil`) - Root path to transfer objects. Must be an empty string or full path name that ends with a '/'. This field is treated as an object prefix. As such, it should generally not begin with a '/'.
* `storageAccount` (*type:* `String.t`, *default:* `nil`) - Required. The name of the Azure Storage account.
"""
Expand All @@ -32,12 +33,14 @@ defmodule GoogleApi.StorageTransfer.V1.Model.AzureBlobStorageData do
@type t :: %__MODULE__{
:azureCredentials => GoogleApi.StorageTransfer.V1.Model.AzureCredentials.t() | nil,
:container => String.t() | nil,
:credentialsSecret => String.t() | nil,
:path => String.t() | nil,
:storageAccount => String.t() | nil
}

field(:azureCredentials, as: GoogleApi.StorageTransfer.V1.Model.AzureCredentials)
field(:container)
field(:credentialsSecret)
field(:path)
field(:storageAccount)
end
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# 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.StorageTransfer.V1.Model.EventStream do
@moduledoc """
Specifies the Event-driven transfer options. Event-driven transfers listen to an event stream to transfer updated files.

## Attributes

* `eventStreamExpirationTime` (*type:* `DateTime.t`, *default:* `nil`) - Specifies the data and time at which Storage Transfer Service stops listening for events from this stream. After this time, any transfers in progress will complete, but no new transfers are initiated.
* `eventStreamStartTime` (*type:* `DateTime.t`, *default:* `nil`) - Specifies the date and time that Storage Transfer Service starts listening for events from this stream. If no start time is specified or start time is in the past, Storage Transfer Service starts listening immediately.
* `name` (*type:* `String.t`, *default:* `nil`) - Required. Specifies a unique name of the resource such as AWS SQS ARN in the form 'arn:aws:sqs:region:account_id:queue_name', or Pub/Sub subscription resource name in the form 'projects/{project}/subscriptions/{sub}'.
"""

use GoogleApi.Gax.ModelBase

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

field(:eventStreamExpirationTime, as: DateTime)
field(:eventStreamStartTime, as: DateTime)
field(:name)
end

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

defimpl Poison.Encoder, for: GoogleApi.StorageTransfer.V1.Model.EventStream do
def encode(value, options) do
GoogleApi.Gax.ModelBase.encode(value, options)
end
end
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,20 @@ defmodule GoogleApi.StorageTransfer.V1.Model.GcsData do
## Attributes

* `bucketName` (*type:* `String.t`, *default:* `nil`) - Required. Cloud Storage bucket name. Must meet [Bucket Name Requirements](/storage/docs/naming#requirements).
* `managedFolderTransferEnabled` (*type:* `boolean()`, *default:* `nil`) - Preview. Enables the transfer of managed folders between Cloud Storage buckets. Set this option on the gcs_data_source. If set to true: - Managed folders in the source bucket are transferred to the destination bucket. - Managed folders in the destination bucket are overwritten. Other OVERWRITE options are not supported. See [Transfer Cloud Storage managed folders](/storage-transfer/docs/managed-folders).
* `path` (*type:* `String.t`, *default:* `nil`) - Root path to transfer objects. Must be an empty string or full path name that ends with a '/'. This field is treated as an object prefix. As such, it should generally not begin with a '/'. The root path value must meet [Object Name Requirements](/storage/docs/naming#objectnames).
"""

use GoogleApi.Gax.ModelBase

@type t :: %__MODULE__{
:bucketName => String.t() | nil,
:managedFolderTransferEnabled => boolean() | nil,
:path => String.t() | nil
}

field(:bucketName)
field(:managedFolderTransferEnabled)
field(:path)
end

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.StorageTransfer.V1.Model.HdfsData do
@moduledoc """
An HdfsData resource specifies a path within an HDFS entity (e.g. a cluster). All cluster-specific settings, such as namenodes and ports, are configured on the transfer agents servicing requests, so HdfsData only contains the root path to the data in our transfer.

## Attributes

* `path` (*type:* `String.t`, *default:* `nil`) - Root path to transfer files.
"""

use GoogleApi.Gax.ModelBase

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

field(:path)
end

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

defimpl Poison.Encoder, for: GoogleApi.StorageTransfer.V1.Model.HdfsData do
def encode(value, options) do
GoogleApi.Gax.ModelBase.encode(value, options)
end
end
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ defmodule GoogleApi.StorageTransfer.V1.Model.MetadataOptions do
* `storageClass` (*type:* `String.t`, *default:* `nil`) - Specifies the storage class to set on objects being transferred to Google Cloud Storage buckets. If unspecified, the default behavior is the same as STORAGE_CLASS_DESTINATION_BUCKET_DEFAULT.
* `symlink` (*type:* `String.t`, *default:* `nil`) - Specifies how symlinks should be handled by the transfer. By default, symlinks are not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
* `temporaryHold` (*type:* `String.t`, *default:* `nil`) - Specifies how each object's temporary hold status should be preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as TEMPORARY_HOLD_PRESERVE.
* `timeCreated` (*type:* `String.t`, *default:* `nil`) - Specifies how each object's `timeCreated` metadata is preserved for transfers between Google Cloud Storage buckets. If unspecified, the default behavior is the same as TIME_CREATED_SKIP.
* `timeCreated` (*type:* `String.t`, *default:* `nil`) - Specifies how each object's `timeCreated` metadata is preserved for transfers. If unspecified, the default behavior is the same as TIME_CREATED_SKIP.
* `uid` (*type:* `String.t`, *default:* `nil`) - Specifies how each file's POSIX user ID (UID) attribute should be handled by the transfer. By default, UID is not preserved. Only applicable to transfers involving POSIX file systems, and ignored for other transfers.
"""

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ defmodule GoogleApi.StorageTransfer.V1.Model.Operation do
* `error` (*type:* `GoogleApi.StorageTransfer.V1.Model.Status.t`, *default:* `nil`) - The error result of the operation in case of failure or cancellation.
* `metadata` (*type:* `map()`, *default:* `nil`) - Represents the transfer operation object. To request a TransferOperation object, use transferOperations.get.
* `name` (*type:* `String.t`, *default:* `nil`) - The server-assigned unique name. The format of `name` is `transferOperations/some/unique/name`.
* `response` (*type:* `map()`, *default:* `nil`) - The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
* `response` (*type:* `map()`, *default:* `nil`) - The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
"""

use GoogleApi.Gax.ModelBase
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ defmodule GoogleApi.StorageTransfer.V1.Model.TransferJob do
* `creationTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time that the transfer job was created.
* `deletionTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time that the transfer job was deleted.
* `description` (*type:* `String.t`, *default:* `nil`) - A description provided by the user for the job. Its max length is 1024 bytes when Unicode-encoded.
* `eventStream` (*type:* `GoogleApi.StorageTransfer.V1.Model.EventStream.t`, *default:* `nil`) - Specifies the event stream for the transfer job for event-driven transfers. When EventStream is specified, the Schedule fields are ignored.
* `lastModificationTime` (*type:* `DateTime.t`, *default:* `nil`) - Output only. The time that the transfer job was last modified.
* `latestOperationName` (*type:* `String.t`, *default:* `nil`) - The name of the most recently started TransferOperation of this JobConfig. Present if a TransferOperation has been created for this JobConfig.
* `loggingConfig` (*type:* `GoogleApi.StorageTransfer.V1.Model.LoggingConfig.t`, *default:* `nil`) - Logging configuration.
Expand All @@ -41,6 +42,7 @@ defmodule GoogleApi.StorageTransfer.V1.Model.TransferJob do
:creationTime => DateTime.t() | nil,
:deletionTime => DateTime.t() | nil,
:description => String.t() | nil,
:eventStream => GoogleApi.StorageTransfer.V1.Model.EventStream.t() | nil,
:lastModificationTime => DateTime.t() | nil,
:latestOperationName => String.t() | nil,
:loggingConfig => GoogleApi.StorageTransfer.V1.Model.LoggingConfig.t() | nil,
Expand All @@ -55,6 +57,7 @@ defmodule GoogleApi.StorageTransfer.V1.Model.TransferJob do
field(:creationTime, as: DateTime)
field(:deletionTime, as: DateTime)
field(:description)
field(:eventStream, as: GoogleApi.StorageTransfer.V1.Model.EventStream)
field(:lastModificationTime, as: DateTime)
field(:latestOperationName)
field(:loggingConfig, as: GoogleApi.StorageTransfer.V1.Model.LoggingConfig)
Expand Down
Loading
Loading