google-cloud-dataform-v1 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +4 -4
  3. data/README.md +5 -5
  4. data/lib/google/cloud/dataform/v1/bindings_override.rb +0 -57
  5. data/lib/google/cloud/dataform/v1/dataform/client.rb +2069 -48
  6. data/lib/google/cloud/dataform/v1/dataform/operations.rb +843 -0
  7. data/lib/google/cloud/dataform/v1/dataform/paths.rb +59 -0
  8. data/lib/google/cloud/dataform/v1/dataform/rest/client.rb +1952 -65
  9. data/lib/google/cloud/dataform/v1/dataform/rest/operations.rb +927 -0
  10. data/lib/google/cloud/dataform/v1/dataform/rest/service_stub.rb +1719 -481
  11. data/lib/google/cloud/dataform/v1/dataform/rest.rb +1 -0
  12. data/lib/google/cloud/dataform/v1/dataform.rb +1 -0
  13. data/lib/google/cloud/dataform/v1/dataform_pb.rb +42 -1
  14. data/lib/google/cloud/dataform/v1/dataform_services_pb.rb +54 -0
  15. data/lib/google/cloud/dataform/v1/version.rb +1 -1
  16. data/lib/google/longrunning/bindings_override.rb +71 -0
  17. data/lib/google/longrunning/operations/client.rb +954 -0
  18. data/lib/google/longrunning/operations/credentials.rb +40 -0
  19. data/lib/google/longrunning/operations/operations.rb +839 -0
  20. data/lib/google/longrunning/operations/rest/client.rb +777 -0
  21. data/lib/google/longrunning/operations/rest/operations.rb +923 -0
  22. data/lib/google/longrunning/operations/rest/service_stub.rb +322 -0
  23. data/lib/google/longrunning/operations/rest.rb +57 -0
  24. data/lib/google/longrunning/operations.rb +59 -0
  25. data/lib/google/longrunning/rest.rb +34 -0
  26. data/lib/google/longrunning.rb +41 -0
  27. data/lib/google-cloud-dataform-v1.rb +1 -0
  28. data/proto_docs/google/api/client.rb +149 -29
  29. data/proto_docs/google/cloud/dataform/v1/dataform.rb +787 -9
  30. data/proto_docs/google/longrunning/operations.rb +191 -0
  31. metadata +17 -3
@@ -35,6 +35,19 @@ module Google
35
35
  # @!attribute [rw] name
36
36
  # @return [::String]
37
37
  # Identifier. The repository's name.
38
+ # @!attribute [rw] containing_folder
39
+ # @return [::String]
40
+ # Optional. The name of the containing folder of the repository.
41
+ # The field is immutable and it can be modified via a MoveRepository
42
+ # operation.
43
+ # Format: `projects/*/locations/*/folders/*`. or
44
+ # `projects/*/locations/*/teamFolders/*`.
45
+ # @!attribute [r] team_folder_name
46
+ # @return [::String]
47
+ # Output only. The resource name of the TeamFolder that this Repository is
48
+ # associated with. This should take the format:
49
+ # projects/\\{project}/locations/\\{location}/teamFolders/\\{teamFolder}. If this
50
+ # is not set, the Repository is not associated with a TeamFolder.
38
51
  # @!attribute [r] create_time
39
52
  # @return [::Google::Protobuf::Timestamp]
40
53
  # Output only. The timestamp of when the repository was created.
@@ -92,7 +105,13 @@ module Google
92
105
  # Required. The Git remote's URL.
93
106
  # @!attribute [rw] default_branch
94
107
  # @return [::String]
95
- # Required. The Git remote's default branch name.
108
+ # Optional. The Git remote's default branch name.
109
+ # If not set, `main` will be used.
110
+ # @!attribute [r] effective_default_branch
111
+ # @return [::String]
112
+ # Output only. The Git remote's effective default branch name.
113
+ # This is the default branch name of the Git remote if it is set,
114
+ # otherwise it is `main`.
96
115
  # @!attribute [rw] authentication_token_secret_version
97
116
  # @return [::String]
98
117
  # Optional. The name of the Secret Manager secret version to use as an
@@ -101,6 +120,11 @@ module Google
101
120
  # @!attribute [rw] ssh_authentication_config
102
121
  # @return [::Google::Cloud::Dataform::V1::Repository::GitRemoteSettings::SshAuthenticationConfig]
103
122
  # Optional. Authentication fields for remote uris using SSH protocol.
123
+ # @!attribute [rw] git_repository_link
124
+ # @return [::String]
125
+ # Optional. Resource name for the `GitRepositoryLink` used for machine
126
+ # credentials. Must be in the format
127
+ # `projects/*/locations/*/connections/*/gitRepositoryLinks/*`
104
128
  # @!attribute [r] token_status
105
129
  # @deprecated This field is deprecated and may be removed in the next major version update.
106
130
  # @return [::Google::Cloud::Dataform::V1::Repository::GitRemoteSettings::TokenStatus]
@@ -168,6 +192,16 @@ module Google
168
192
  end
169
193
  end
170
194
 
195
+ # Metadata used to identify if a resource is user scoped.
196
+ # @!attribute [r] user_scoped
197
+ # @return [::Boolean]
198
+ # Output only. If true, this resource is user-scoped, meaning it is either a
199
+ # workspace or sourced from a workspace.
200
+ class PrivateResourceMetadata
201
+ include ::Google::Protobuf::MessageExts
202
+ extend ::Google::Protobuf::MessageExts::ClassMethods
203
+ end
204
+
171
205
  # `ListRepositories` request message.
172
206
  # @!attribute [rw] parent
173
207
  # @return [::String]
@@ -215,6 +249,21 @@ module Google
215
249
  extend ::Google::Protobuf::MessageExts::ClassMethods
216
250
  end
217
251
 
252
+ # `MoveRepository` request message.
253
+ # @!attribute [rw] name
254
+ # @return [::String]
255
+ # Required. The full resource name of the repository to move.
256
+ # @!attribute [rw] destination_containing_folder
257
+ # @return [::String]
258
+ # Optional. The name of the Folder, TeamFolder, or root location to move the
259
+ # repository to. Can be in the format of: "" to move into the root User
260
+ # folder, `projects/*/locations/*/folders/*`,
261
+ # `projects/*/locations/*/teamFolders/*`
262
+ class MoveRepositoryRequest
263
+ include ::Google::Protobuf::MessageExts
264
+ extend ::Google::Protobuf::MessageExts::ClassMethods
265
+ end
266
+
218
267
  # `GetRepository` request message.
219
268
  # @!attribute [rw] name
220
269
  # @return [::String]
@@ -260,9 +309,13 @@ module Google
260
309
  # Required. The repository's name.
261
310
  # @!attribute [rw] force
262
311
  # @return [::Boolean]
263
- # Optional. If set to true, any child resources of this repository will also
264
- # be deleted. (Otherwise, the request will only succeed if the repository has
265
- # no child resources.)
312
+ # Optional. If set to true, child resources of this repository (compilation
313
+ # results and workflow invocations) will also be deleted. Otherwise, the
314
+ # request will only succeed if the repository has no child resources.
315
+ #
316
+ # **Note:** *This flag doesn't support deletion of workspaces, release
317
+ # configs or workflow configs. If any of such resources exists in the
318
+ # repository, the request will fail.*.
266
319
  class DeleteRepositoryRequest
267
320
  include ::Google::Protobuf::MessageExts
268
321
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -503,6 +556,9 @@ module Google
503
556
 
504
557
  # The token was used successfully to authenticate against the Git remote.
505
558
  VALID = 3
559
+
560
+ # The token is not accessible due to permission issues.
561
+ PERMISSION_DENIED = 4
506
562
  end
507
563
  end
508
564
 
@@ -540,6 +596,14 @@ module Google
540
596
  # Output only. All the metadata information that is used internally to serve
541
597
  # the resource. For example: timestamps, flags, status fields, etc. The
542
598
  # format of this field is a JSON string.
599
+ # @!attribute [rw] disable_moves
600
+ # @return [::Boolean]
601
+ # Optional. If set to true, workspaces will not be moved if its linked
602
+ # Repository is moved. Instead, it will be deleted.
603
+ # @!attribute [r] private_resource_metadata
604
+ # @return [::Google::Cloud::Dataform::V1::PrivateResourceMetadata]
605
+ # Output only. Metadata indicating whether this resource is user-scoped. For
606
+ # `Workspace` resources, the `user_scoped` field is always `true`.
543
607
  class Workspace
544
608
  include ::Google::Protobuf::MessageExts
545
609
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -847,6 +911,12 @@ module Google
847
911
  # When paginating, all other parameters provided to
848
912
  # `QueryDirectoryContents`, with the exception of `page_size`, must match the
849
913
  # call that provided the page token.
914
+ # @!attribute [rw] view
915
+ # @return [::Google::Cloud::Dataform::V1::DirectoryContentsView]
916
+ # Optional. Specifies the metadata to return for each directory entry.
917
+ # If unspecified, the default is `DIRECTORY_CONTENTS_VIEW_BASIC`.
918
+ # Currently the `DIRECTORY_CONTENTS_VIEW_METADATA` view is not supported by
919
+ # CMEK-protected workspaces.
850
920
  class QueryDirectoryContentsRequest
851
921
  include ::Google::Protobuf::MessageExts
852
922
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -868,19 +938,37 @@ module Google
868
938
  # Represents a single entry in a directory.
869
939
  # @!attribute [rw] file
870
940
  # @return [::String]
871
- # A file in the directory.
941
+ # A file in the directory. The path is returned including the full
942
+ # folder structure from the root.
872
943
  #
873
944
  # Note: The following fields are mutually exclusive: `file`, `directory`. If a field in that set is populated, all other fields in the set will automatically be cleared.
874
945
  # @!attribute [rw] directory
875
946
  # @return [::String]
876
- # A child directory in the directory.
947
+ # A child directory in the directory. The path is returned including
948
+ # the full folder structure from the root.
877
949
  #
878
950
  # Note: The following fields are mutually exclusive: `directory`, `file`. If a field in that set is populated, all other fields in the set will automatically be cleared.
951
+ # @!attribute [rw] metadata
952
+ # @return [::Google::Cloud::Dataform::V1::FilesystemEntryMetadata]
953
+ # Entry with metadata.
879
954
  class DirectoryEntry
880
955
  include ::Google::Protobuf::MessageExts
881
956
  extend ::Google::Protobuf::MessageExts::ClassMethods
882
957
  end
883
958
 
959
+ # Represents metadata for a single entry in a filesystem.
960
+ # @!attribute [r] size_bytes
961
+ # @return [::Integer]
962
+ # Output only. Provides the size of the entry in bytes. For directories, this
963
+ # will be 0.
964
+ # @!attribute [r] update_time
965
+ # @return [::Google::Protobuf::Timestamp]
966
+ # Output only. Represents the time of the last modification of the entry.
967
+ class FilesystemEntryMetadata
968
+ include ::Google::Protobuf::MessageExts
969
+ extend ::Google::Protobuf::MessageExts::ClassMethods
970
+ end
971
+
884
972
  # Configuration containing file search request parameters.
885
973
  # @!attribute [rw] workspace
886
974
  # @return [::String]
@@ -1332,6 +1420,11 @@ module Google
1332
1420
  # Output only. All the metadata information that is used internally to serve
1333
1421
  # the resource. For example: timestamps, flags, status fields, etc. The
1334
1422
  # format of this field is a JSON string.
1423
+ # @!attribute [r] private_resource_metadata
1424
+ # @return [::Google::Cloud::Dataform::V1::PrivateResourceMetadata]
1425
+ # Output only. Metadata indicating whether this resource is user-scoped.
1426
+ # `CompilationResult` resource is `user_scoped` only if it is sourced
1427
+ # from a workspace.
1335
1428
  class CompilationResult
1336
1429
  include ::Google::Protobuf::MessageExts
1337
1430
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1647,6 +1740,24 @@ module Google
1647
1740
  # options clause of a create table/view statement. See
1648
1741
  # https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language
1649
1742
  # for more information on which options are supported.
1743
+ # @!attribute [rw] connection
1744
+ # @return [::String]
1745
+ # Optional. The connection specifying the credentials to be used to read
1746
+ # and write to external storage, such as Cloud Storage. The connection can
1747
+ # have the form `{project}.{location}.{connection_id}` or
1748
+ # `projects/{project}/locations/{location}/connections/{connection_id}`,
1749
+ # or be set to DEFAULT.
1750
+ # @!attribute [rw] table_format
1751
+ # @return [::Google::Cloud::Dataform::V1::CompilationResultAction::Relation::TableFormat]
1752
+ # Optional. The table format for the BigQuery table.
1753
+ # @!attribute [rw] file_format
1754
+ # @return [::Google::Cloud::Dataform::V1::CompilationResultAction::Relation::FileFormat]
1755
+ # Optional. The file format for the BigQuery table.
1756
+ # @!attribute [rw] storage_uri
1757
+ # @return [::String]
1758
+ # Optional. The fully qualified location prefix of the external folder
1759
+ # where table data is stored. The URI should be in the format
1760
+ # `gs://bucket/path_to_table/`.
1650
1761
  class Relation
1651
1762
  include ::Google::Protobuf::MessageExts
1652
1763
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1709,6 +1820,24 @@ module Google
1709
1820
  # The relation is a materialized view.
1710
1821
  MATERIALIZED_VIEW = 4
1711
1822
  end
1823
+
1824
+ # Supported table formats for BigQuery tables.
1825
+ module TableFormat
1826
+ # Default value.
1827
+ TABLE_FORMAT_UNSPECIFIED = 0
1828
+
1829
+ # Apache Iceberg format.
1830
+ ICEBERG = 1
1831
+ end
1832
+
1833
+ # Supported file formats for BigQuery tables.
1834
+ module FileFormat
1835
+ # Default value.
1836
+ FILE_FORMAT_UNSPECIFIED = 0
1837
+
1838
+ # Apache Parquet format.
1839
+ PARQUET = 1
1840
+ end
1712
1841
  end
1713
1842
 
1714
1843
  # Represents a list of arbitrary database operations.
@@ -2026,9 +2155,30 @@ module Google
2026
2155
  # @!attribute [rw] service_account
2027
2156
  # @return [::String]
2028
2157
  # Optional. The service account to run workflow invocations under.
2158
+ # @!attribute [rw] query_priority
2159
+ # @return [::Google::Cloud::Dataform::V1::InvocationConfig::QueryPriority]
2160
+ # Optional. Specifies the priority for query execution in BigQuery.
2161
+ # More information can be found at
2162
+ # https://cloud.google.com/bigquery/docs/running-queries#queries.
2029
2163
  class InvocationConfig
2030
2164
  include ::Google::Protobuf::MessageExts
2031
2165
  extend ::Google::Protobuf::MessageExts::ClassMethods
2166
+
2167
+ # Types of priority for query execution in BigQuery.
2168
+ module QueryPriority
2169
+ # Default value. This value is unused.
2170
+ QUERY_PRIORITY_UNSPECIFIED = 0
2171
+
2172
+ # Query will be executed in BigQuery with interactive priority.
2173
+ # More information can be found at
2174
+ # https://cloud.google.com/bigquery/docs/running-queries#queries.
2175
+ INTERACTIVE = 1
2176
+
2177
+ # Query will be executed in BigQuery with batch priority.
2178
+ # More information can be found at
2179
+ # https://cloud.google.com/bigquery/docs/running-queries#batchqueries.
2180
+ BATCH = 2
2181
+ end
2032
2182
  end
2033
2183
 
2034
2184
  # `ListWorkflowConfigs` request message.
@@ -2157,6 +2307,11 @@ module Google
2157
2307
  # Output only. All the metadata information that is used internally to serve
2158
2308
  # the resource. For example: timestamps, flags, status fields, etc. The
2159
2309
  # format of this field is a JSON string.
2310
+ # @!attribute [r] private_resource_metadata
2311
+ # @return [::Google::Cloud::Dataform::V1::PrivateResourceMetadata]
2312
+ # Output only. Metadata indicating whether this resource is user-scoped.
2313
+ # `WorkflowInvocation` resource is `user_scoped` only if it is sourced
2314
+ # from a compilation result and the compilation result is user-scoped.
2160
2315
  class WorkflowInvocation
2161
2316
  include ::Google::Protobuf::MessageExts
2162
2317
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2343,9 +2498,10 @@ module Google
2343
2498
  # Output only. The code contents of a Notebook to be run.
2344
2499
  # @!attribute [r] job_id
2345
2500
  # @return [::String]
2346
- # Output only. The ID of the Vertex job that executed the notebook in
2347
- # contents and also the ID used for the outputs created in Google Cloud
2348
- # Storage buckets. Only set once the job has started to run.
2501
+ # Output only. The ID of the Gemini Enterprise Agent Platform job that
2502
+ # executed the notebook in contents and also the ID used for the outputs
2503
+ # created in Google Cloud Storage buckets. Only set once the job has
2504
+ # started to run.
2349
2505
  class NotebookAction
2350
2506
  include ::Google::Protobuf::MessageExts
2351
2507
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2521,6 +2677,11 @@ module Google
2521
2677
  # @return [::String]
2522
2678
  # Optional. The default KMS key that is used if no encryption key is provided
2523
2679
  # when a repository is created.
2680
+ # @!attribute [r] internal_metadata
2681
+ # @return [::String]
2682
+ # Output only. All the metadata information that is used internally to serve
2683
+ # the resource. For example: timestamps, flags, status fields, etc. The
2684
+ # format of this field is a JSON string.
2524
2685
  class Config
2525
2686
  include ::Google::Protobuf::MessageExts
2526
2687
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -2546,6 +2707,623 @@ module Google
2546
2707
  include ::Google::Protobuf::MessageExts
2547
2708
  extend ::Google::Protobuf::MessageExts::ClassMethods
2548
2709
  end
2710
+
2711
+ # Represents a Dataform Folder. This is a resource that is used to organize
2712
+ # Files and other Folders and provide hierarchical access controls.
2713
+ # @!attribute [rw] name
2714
+ # @return [::String]
2715
+ # Identifier. The Folder's name.
2716
+ # @!attribute [rw] display_name
2717
+ # @return [::String]
2718
+ # Required. The Folder's user-friendly name.
2719
+ # @!attribute [rw] containing_folder
2720
+ # @return [::String]
2721
+ # Optional. The containing Folder resource name. This should take
2722
+ # the format: projects/\\{project}/locations/\\{location}/folders/\\{folder},
2723
+ # projects/\\{project}/locations/\\{location}/teamFolders/\\{teamFolder}, or just
2724
+ # "" if this is a root Folder. This field can only be updated through
2725
+ # MoveFolder.
2726
+ # @!attribute [r] team_folder_name
2727
+ # @return [::String]
2728
+ # Output only. The resource name of the TeamFolder that this Folder is
2729
+ # associated with. This should take the format:
2730
+ # projects/\\{project}/locations/\\{location}/teamFolders/\\{teamFolder}. If this
2731
+ # is not set, the Folder is not associated with a TeamFolder and is a
2732
+ # UserFolder.
2733
+ # @!attribute [r] create_time
2734
+ # @return [::Google::Protobuf::Timestamp]
2735
+ # Output only. The timestamp of when the Folder was created.
2736
+ # @!attribute [r] update_time
2737
+ # @return [::Google::Protobuf::Timestamp]
2738
+ # Output only. The timestamp of when the Folder was last updated.
2739
+ # @!attribute [r] internal_metadata
2740
+ # @return [::String]
2741
+ # Output only. All the metadata information that is used internally to serve
2742
+ # the resource. For example: timestamps, flags, status fields, etc. The
2743
+ # format of this field is a JSON string.
2744
+ # @!attribute [r] creator_iam_principal
2745
+ # @return [::String]
2746
+ # Output only. The IAM principal identifier of the creator of the Folder.
2747
+ class Folder
2748
+ include ::Google::Protobuf::MessageExts
2749
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2750
+ end
2751
+
2752
+ # `CreateFolder` request message.
2753
+ # @!attribute [rw] parent
2754
+ # @return [::String]
2755
+ # Required. The location in which to create the Folder. Must be in the format
2756
+ # `projects/*/locations/*`.
2757
+ # @!attribute [rw] folder
2758
+ # @return [::Google::Cloud::Dataform::V1::Folder]
2759
+ # Required. The Folder to create.
2760
+ class CreateFolderRequest
2761
+ include ::Google::Protobuf::MessageExts
2762
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2763
+ end
2764
+
2765
+ # `MoveFolder` request message.
2766
+ # @!attribute [rw] name
2767
+ # @return [::String]
2768
+ # Required. The full resource name of the Folder to move.
2769
+ # @!attribute [rw] destination_containing_folder
2770
+ # @return [::String]
2771
+ # Optional. The name of the Folder, TeamFolder, or root location to move the
2772
+ # Folder to. Can be in the format of: "" to move into the root User folder,
2773
+ # `projects/*/locations/*/folders/*`, `projects/*/locations/*/teamFolders/*`
2774
+ class MoveFolderRequest
2775
+ include ::Google::Protobuf::MessageExts
2776
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2777
+ end
2778
+
2779
+ # `GetFolder` request message.
2780
+ # @!attribute [rw] name
2781
+ # @return [::String]
2782
+ # Required. The Folder's name.
2783
+ class GetFolderRequest
2784
+ include ::Google::Protobuf::MessageExts
2785
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2786
+ end
2787
+
2788
+ # `UpdateFolder` request message.
2789
+ # @!attribute [rw] update_mask
2790
+ # @return [::Google::Protobuf::FieldMask]
2791
+ # Optional. Specifies the fields to be updated in the Folder. If left unset,
2792
+ # all fields that can be updated, will be updated. A few fields cannot be
2793
+ # updated and will be ignored if specified in the update_mask (e.g.
2794
+ # parent_name, team_folder_name).
2795
+ # @!attribute [rw] folder
2796
+ # @return [::Google::Cloud::Dataform::V1::Folder]
2797
+ # Required. The updated Folder.
2798
+ class UpdateFolderRequest
2799
+ include ::Google::Protobuf::MessageExts
2800
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2801
+ end
2802
+
2803
+ # `DeleteFolder` request message.
2804
+ # @!attribute [rw] name
2805
+ # @return [::String]
2806
+ # Required. The Folder's name.
2807
+ class DeleteFolderRequest
2808
+ include ::Google::Protobuf::MessageExts
2809
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2810
+ end
2811
+
2812
+ # `DeleteFolderTree` request message.
2813
+ # @!attribute [rw] name
2814
+ # @return [::String]
2815
+ # Required. The Folder's name.
2816
+ # Format: projects/\\{project}/locations/\\{location}/folders/\\{folder}
2817
+ # @!attribute [rw] force
2818
+ # @return [::Boolean]
2819
+ # Optional. If `false` (default): The operation will fail if any
2820
+ # Repository within the folder hierarchy has associated Release Configs or
2821
+ # Workflow Configs.
2822
+ #
2823
+ # If `true`: The operation will attempt to delete everything, including any
2824
+ # Release Configs and Workflow Configs linked to Repositories within the
2825
+ # folder hierarchy. This permanently removes schedules and resources.
2826
+ class DeleteFolderTreeRequest
2827
+ include ::Google::Protobuf::MessageExts
2828
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2829
+ end
2830
+
2831
+ # `DeleteTeamFolderTree` request message.
2832
+ # @!attribute [rw] name
2833
+ # @return [::String]
2834
+ # Required. The TeamFolder's name.
2835
+ # Format: projects/\\{project}/locations/\\{location}/teamFolders/\\{team_folder}
2836
+ # @!attribute [rw] force
2837
+ # @return [::Boolean]
2838
+ # Optional. If `false` (default): The operation will fail if any
2839
+ # Repository within the folder hierarchy has associated Release Configs or
2840
+ # Workflow Configs.
2841
+ #
2842
+ # If `true`: The operation will attempt to delete everything, including any
2843
+ # Release Configs and Workflow Configs linked to Repositories within the
2844
+ # folder hierarchy. This permanently removes schedules and resources.
2845
+ class DeleteTeamFolderTreeRequest
2846
+ include ::Google::Protobuf::MessageExts
2847
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2848
+ end
2849
+
2850
+ # Contains metadata about the progress of the DeleteFolderTree Long-running
2851
+ # operations.
2852
+ # @!attribute [r] create_time
2853
+ # @return [::Google::Protobuf::Timestamp]
2854
+ # Output only. The time the operation was created.
2855
+ # @!attribute [r] end_time
2856
+ # @return [::Google::Protobuf::Timestamp]
2857
+ # Output only. The time the operation finished running.
2858
+ # @!attribute [r] target
2859
+ # @return [::String]
2860
+ # Output only. Resource name of the target of the operation.
2861
+ # Format: projects/\\{project}/locations/\\{location}/folders/\\{folder} or
2862
+ # projects/\\{project}/locations/\\{location}/teamFolders/\\{team_folder}
2863
+ # @!attribute [r] state
2864
+ # @return [::Google::Cloud::Dataform::V1::DeleteFolderTreeMetadata::State]
2865
+ # Output only. The state of the operation.
2866
+ # @!attribute [r] percent_complete
2867
+ # @return [::Integer]
2868
+ # Output only. Percent complete of the operation [0, 100].
2869
+ class DeleteFolderTreeMetadata
2870
+ include ::Google::Protobuf::MessageExts
2871
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2872
+
2873
+ # Different states of the DeleteFolderTree operation.
2874
+ module State
2875
+ # The state is unspecified.
2876
+ STATE_UNSPECIFIED = 0
2877
+
2878
+ # The operation was initialized and recorded by the server, but not yet
2879
+ # started.
2880
+ INITIALIZED = 1
2881
+
2882
+ # The operation is in progress.
2883
+ IN_PROGRESS = 2
2884
+
2885
+ # The operation has completed successfully.
2886
+ SUCCEEDED = 3
2887
+
2888
+ # The operation has failed.
2889
+ FAILED = 4
2890
+ end
2891
+ end
2892
+
2893
+ # `QueryFolderContents` request message.
2894
+ # @!attribute [rw] folder
2895
+ # @return [::String]
2896
+ # Required. Resource name of the Folder to list contents for.
2897
+ # Format: projects/*/locations/*/folders/*
2898
+ # @!attribute [rw] page_size
2899
+ # @return [::Integer]
2900
+ # Optional. Maximum number of paths to return. The server may return fewer
2901
+ # items than requested. If unspecified, the server will pick an appropriate
2902
+ # default.
2903
+ # @!attribute [rw] page_token
2904
+ # @return [::String]
2905
+ # Optional. Page token received from a previous `QueryFolderContents` call.
2906
+ # Provide this to retrieve the subsequent page.
2907
+ #
2908
+ # When paginating, all other parameters provided to
2909
+ # `QueryFolderContents`, with the exception of `page_size`, must match the
2910
+ # call that provided the page token.
2911
+ # @!attribute [rw] order_by
2912
+ # @return [::String]
2913
+ # Optional. Field to additionally sort results by.
2914
+ # Will order Folders before Repositories, and then by `order_by` in ascending
2915
+ # order. Supported keywords: display_name (default), create_time,
2916
+ # last_modified_time.
2917
+ # Examples:
2918
+ #
2919
+ # * `orderBy="display_name"`
2920
+ # * `orderBy="display_name desc"`
2921
+ # @!attribute [rw] filter
2922
+ # @return [::String]
2923
+ # Optional. Optional filtering for the returned list. Filtering is currently
2924
+ # only supported on the `display_name` field.
2925
+ #
2926
+ # Example:
2927
+ #
2928
+ # * `filter="display_name="MyFolder""`
2929
+ class QueryFolderContentsRequest
2930
+ include ::Google::Protobuf::MessageExts
2931
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2932
+ end
2933
+
2934
+ # `QueryFolderContents` response message.
2935
+ # @!attribute [rw] entries
2936
+ # @return [::Array<::Google::Cloud::Dataform::V1::QueryFolderContentsResponse::FolderContentsEntry>]
2937
+ # List of entries in the folder.
2938
+ # @!attribute [rw] next_page_token
2939
+ # @return [::String]
2940
+ # A token, which can be sent as `page_token` to retrieve the next page.
2941
+ # If this field is omitted, there are no subsequent pages.
2942
+ class QueryFolderContentsResponse
2943
+ include ::Google::Protobuf::MessageExts
2944
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2945
+
2946
+ # Represents a single content entry.
2947
+ # @!attribute [rw] folder
2948
+ # @return [::Google::Cloud::Dataform::V1::Folder]
2949
+ # A subfolder.
2950
+ #
2951
+ # Note: The following fields are mutually exclusive: `folder`, `repository`. If a field in that set is populated, all other fields in the set will automatically be cleared.
2952
+ # @!attribute [rw] repository
2953
+ # @return [::Google::Cloud::Dataform::V1::Repository]
2954
+ # A repository.
2955
+ #
2956
+ # Note: The following fields are mutually exclusive: `repository`, `folder`. If a field in that set is populated, all other fields in the set will automatically be cleared.
2957
+ class FolderContentsEntry
2958
+ include ::Google::Protobuf::MessageExts
2959
+ extend ::Google::Protobuf::MessageExts::ClassMethods
2960
+ end
2961
+ end
2962
+
2963
+ # `QueryUserRootContents` request message.
2964
+ # @!attribute [rw] location
2965
+ # @return [::String]
2966
+ # Required. Location of the user root folder to list contents for.
2967
+ # Format: projects/*/locations/*
2968
+ # @!attribute [rw] page_size
2969
+ # @return [::Integer]
2970
+ # Optional. Maximum number of paths to return. The server may return fewer
2971
+ # items than requested. If unspecified, the server will pick an appropriate
2972
+ # default.
2973
+ # @!attribute [rw] page_token
2974
+ # @return [::String]
2975
+ # Optional. Page token received from a previous `QueryUserRootContents` call.
2976
+ # Provide this to retrieve the subsequent page.
2977
+ #
2978
+ # When paginating, all other parameters provided to
2979
+ # `QueryUserRootFolderContents`, with the exception of `page_size`, must
2980
+ # match the call that provided the page token.
2981
+ # @!attribute [rw] order_by
2982
+ # @return [::String]
2983
+ # Optional. Field to additionally sort results by.
2984
+ # Will order Folders before Repositories, and then by `order_by` in ascending
2985
+ # order. Supported keywords: display_name (default), created_at,
2986
+ # last_modified_at. Examples:
2987
+ #
2988
+ # * `orderBy="display_name"`
2989
+ # * `orderBy="display_name desc"`
2990
+ # @!attribute [rw] filter
2991
+ # @return [::String]
2992
+ # Optional. Optional filtering for the returned list. Filtering is currently
2993
+ # only supported on the `display_name` field.
2994
+ #
2995
+ # Example:
2996
+ #
2997
+ # * `filter="display_name="MyFolder""`
2998
+ class QueryUserRootContentsRequest
2999
+ include ::Google::Protobuf::MessageExts
3000
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3001
+ end
3002
+
3003
+ # `QueryUserRootContents` response message.
3004
+ # @!attribute [rw] entries
3005
+ # @return [::Array<::Google::Cloud::Dataform::V1::QueryUserRootContentsResponse::RootContentsEntry>]
3006
+ # List of entries in the folder.
3007
+ # @!attribute [rw] next_page_token
3008
+ # @return [::String]
3009
+ # A token, which can be sent as `page_token` to retrieve the next page.
3010
+ # If this field is omitted, there are no subsequent pages.
3011
+ class QueryUserRootContentsResponse
3012
+ include ::Google::Protobuf::MessageExts
3013
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3014
+
3015
+ # Represents a single content entry.
3016
+ # @!attribute [rw] folder
3017
+ # @return [::Google::Cloud::Dataform::V1::Folder]
3018
+ # A subfolder.
3019
+ #
3020
+ # Note: The following fields are mutually exclusive: `folder`, `repository`. If a field in that set is populated, all other fields in the set will automatically be cleared.
3021
+ # @!attribute [rw] repository
3022
+ # @return [::Google::Cloud::Dataform::V1::Repository]
3023
+ # A repository.
3024
+ #
3025
+ # Note: The following fields are mutually exclusive: `repository`, `folder`. If a field in that set is populated, all other fields in the set will automatically be cleared.
3026
+ class RootContentsEntry
3027
+ include ::Google::Protobuf::MessageExts
3028
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3029
+ end
3030
+ end
3031
+
3032
+ # Represents a Dataform TeamFolder. This is a resource that sits at the project
3033
+ # level and is used to organize Repositories and Folders with hierarchical
3034
+ # access controls. They provide a team context and stricter access controls.
3035
+ # @!attribute [rw] name
3036
+ # @return [::String]
3037
+ # Identifier. The TeamFolder's name.
3038
+ # @!attribute [rw] display_name
3039
+ # @return [::String]
3040
+ # Required. The TeamFolder's user-friendly name.
3041
+ # @!attribute [r] create_time
3042
+ # @return [::Google::Protobuf::Timestamp]
3043
+ # Output only. The timestamp of when the TeamFolder was created.
3044
+ # @!attribute [r] update_time
3045
+ # @return [::Google::Protobuf::Timestamp]
3046
+ # Output only. The timestamp of when the TeamFolder was last updated.
3047
+ # @!attribute [r] internal_metadata
3048
+ # @return [::String]
3049
+ # Output only. All the metadata information that is used internally to serve
3050
+ # the resource. For example: timestamps, flags, status fields, etc. The
3051
+ # format of this field is a JSON string.
3052
+ # @!attribute [r] creator_iam_principal
3053
+ # @return [::String]
3054
+ # Output only. The IAM principal identifier of the creator of the TeamFolder.
3055
+ class TeamFolder
3056
+ include ::Google::Protobuf::MessageExts
3057
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3058
+ end
3059
+
3060
+ # `CreateTeamFolder` request message.
3061
+ # @!attribute [rw] parent
3062
+ # @return [::String]
3063
+ # Required. The location in which to create the TeamFolder. Must be in the
3064
+ # format `projects/*/locations/*`.
3065
+ # @!attribute [rw] team_folder
3066
+ # @return [::Google::Cloud::Dataform::V1::TeamFolder]
3067
+ # Required. The TeamFolder to create.
3068
+ class CreateTeamFolderRequest
3069
+ include ::Google::Protobuf::MessageExts
3070
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3071
+ end
3072
+
3073
+ # `GetTeamFolder` request message.
3074
+ # @!attribute [rw] name
3075
+ # @return [::String]
3076
+ # Required. The TeamFolder's name.
3077
+ class GetTeamFolderRequest
3078
+ include ::Google::Protobuf::MessageExts
3079
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3080
+ end
3081
+
3082
+ # `UpdateTeamFolder` request message.
3083
+ # @!attribute [rw] update_mask
3084
+ # @return [::Google::Protobuf::FieldMask]
3085
+ # Optional. Specifies the fields to be updated in the Folder. If left unset,
3086
+ # all fields will be updated.
3087
+ # @!attribute [rw] team_folder
3088
+ # @return [::Google::Cloud::Dataform::V1::TeamFolder]
3089
+ # Required. The updated TeamFolder.
3090
+ class UpdateTeamFolderRequest
3091
+ include ::Google::Protobuf::MessageExts
3092
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3093
+ end
3094
+
3095
+ # `DeleteTeamFolder` request message.
3096
+ # @!attribute [rw] name
3097
+ # @return [::String]
3098
+ # Required. The TeamFolder's name.
3099
+ class DeleteTeamFolderRequest
3100
+ include ::Google::Protobuf::MessageExts
3101
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3102
+ end
3103
+
3104
+ # `QueryTeamFolderContents` request message.
3105
+ # @!attribute [rw] team_folder
3106
+ # @return [::String]
3107
+ # Required. Resource name of the TeamFolder to list contents for.
3108
+ # Format: `projects/*/locations/*/teamFolders/*`.
3109
+ # @!attribute [rw] page_size
3110
+ # @return [::Integer]
3111
+ # Optional. Maximum number of paths to return. The server may return fewer
3112
+ # items than requested. If unspecified, the server will pick an appropriate
3113
+ # default.
3114
+ # @!attribute [rw] page_token
3115
+ # @return [::String]
3116
+ # Optional. Page token received from a previous `QueryTeamFolderContents`
3117
+ # call. Provide this to retrieve the subsequent page.
3118
+ #
3119
+ # When paginating, all other parameters provided to
3120
+ # `QueryTeamFolderContents`, with the exception of `page_size`, must match
3121
+ # the call that provided the page token.
3122
+ # @!attribute [rw] order_by
3123
+ # @return [::String]
3124
+ # Optional. Field to additionally sort results by.
3125
+ # Will order Folders before Repositories, and then by `order_by` in ascending
3126
+ # order. Supported keywords: `display_name` (default), `create_time`,
3127
+ # last_modified_time.
3128
+ # Examples:
3129
+ #
3130
+ # * `orderBy="display_name"`
3131
+ # * `orderBy="display_name desc"`
3132
+ # @!attribute [rw] filter
3133
+ # @return [::String]
3134
+ # Optional. Optional filtering for the returned list. Filtering is currently
3135
+ # only supported on the `display_name` field.
3136
+ #
3137
+ # Example:
3138
+ #
3139
+ # * `filter="display_name="MyFolder""`
3140
+ class QueryTeamFolderContentsRequest
3141
+ include ::Google::Protobuf::MessageExts
3142
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3143
+ end
3144
+
3145
+ # `QueryTeamFolderContents` response message.
3146
+ # @!attribute [rw] entries
3147
+ # @return [::Array<::Google::Cloud::Dataform::V1::QueryTeamFolderContentsResponse::TeamFolderContentsEntry>]
3148
+ # List of entries in the TeamFolder.
3149
+ # @!attribute [rw] next_page_token
3150
+ # @return [::String]
3151
+ # A token, which can be sent as `page_token` to retrieve the next page.
3152
+ # If this field is omitted, there are no subsequent pages.
3153
+ class QueryTeamFolderContentsResponse
3154
+ include ::Google::Protobuf::MessageExts
3155
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3156
+
3157
+ # Represents a single content entry.
3158
+ # @!attribute [rw] folder
3159
+ # @return [::Google::Cloud::Dataform::V1::Folder]
3160
+ # A subfolder.
3161
+ #
3162
+ # Note: The following fields are mutually exclusive: `folder`, `repository`. If a field in that set is populated, all other fields in the set will automatically be cleared.
3163
+ # @!attribute [rw] repository
3164
+ # @return [::Google::Cloud::Dataform::V1::Repository]
3165
+ # A repository.
3166
+ #
3167
+ # Note: The following fields are mutually exclusive: `repository`, `folder`. If a field in that set is populated, all other fields in the set will automatically be cleared.
3168
+ class TeamFolderContentsEntry
3169
+ include ::Google::Protobuf::MessageExts
3170
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3171
+ end
3172
+ end
3173
+
3174
+ # `SearchTeamFolders` request message.
3175
+ # @!attribute [rw] location
3176
+ # @return [::String]
3177
+ # Required. Location in which to query TeamFolders.
3178
+ # Format: `projects/*/locations/*`.
3179
+ # @!attribute [rw] page_size
3180
+ # @return [::Integer]
3181
+ # Optional. Maximum number of `TeamFolders` to return. The server may return
3182
+ # fewer items than requested. If unspecified, the server will pick a default
3183
+ # of `page_size` = 50.
3184
+ # @!attribute [rw] page_token
3185
+ # @return [::String]
3186
+ # Optional. Page token received from a previous `SearchTeamFolders` call.
3187
+ # Provide this to retrieve the subsequent page.
3188
+ #
3189
+ # When paginating, all other parameters provided to
3190
+ # `SearchTeamFolders`, with the exception of `page_size`, must
3191
+ # match the call that provided the page token.
3192
+ # @!attribute [rw] order_by
3193
+ # @return [::String]
3194
+ # Optional. Field to additionally sort results by.
3195
+ # Supported keywords: `display_name` (default), `create_time`,
3196
+ # `last_modified_time`. Examples:
3197
+ #
3198
+ # * `orderBy="display_name"`
3199
+ # * `orderBy="display_name desc"`
3200
+ # @!attribute [rw] filter
3201
+ # @return [::String]
3202
+ # Optional. Optional filtering for the returned list. Filtering is currently
3203
+ # only supported on the `display_name` field.
3204
+ #
3205
+ # Example:
3206
+ #
3207
+ # * `filter="display_name="MyFolder""`
3208
+ class SearchTeamFoldersRequest
3209
+ include ::Google::Protobuf::MessageExts
3210
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3211
+ end
3212
+
3213
+ # `SearchTeamFolders` response message.
3214
+ # @!attribute [rw] results
3215
+ # @return [::Array<::Google::Cloud::Dataform::V1::SearchTeamFoldersResponse::TeamFolderSearchResult>]
3216
+ # List of TeamFolders that match the search query.
3217
+ # @!attribute [rw] next_page_token
3218
+ # @return [::String]
3219
+ # A token, which can be sent as `page_token` to retrieve the next page.
3220
+ # If this field is omitted, there are no subsequent pages.
3221
+ class SearchTeamFoldersResponse
3222
+ include ::Google::Protobuf::MessageExts
3223
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3224
+
3225
+ # Represents a single content entry.
3226
+ # @!attribute [rw] team_folder
3227
+ # @return [::Google::Cloud::Dataform::V1::TeamFolder]
3228
+ # A TeamFolder resource that is in the project / location.
3229
+ class TeamFolderSearchResult
3230
+ include ::Google::Protobuf::MessageExts
3231
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3232
+ end
3233
+ end
3234
+
3235
+ # Contains metadata about the progress of the MoveFolder Long-running
3236
+ # operations.
3237
+ # @!attribute [r] create_time
3238
+ # @return [::Google::Protobuf::Timestamp]
3239
+ # Output only. The time the operation was created.
3240
+ # @!attribute [r] end_time
3241
+ # @return [::Google::Protobuf::Timestamp]
3242
+ # Output only. The time the operation finished running.
3243
+ # @!attribute [r] target
3244
+ # @return [::String]
3245
+ # Output only. Server-defined resource path for the target of the operation.
3246
+ # @!attribute [rw] state
3247
+ # @return [::Google::Cloud::Dataform::V1::MoveFolderMetadata::State]
3248
+ # The state of the move.
3249
+ # @!attribute [rw] percent_complete
3250
+ # @return [::Integer]
3251
+ # Percent complete of the move [0, 100].
3252
+ class MoveFolderMetadata
3253
+ include ::Google::Protobuf::MessageExts
3254
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3255
+
3256
+ # Different states of the move.
3257
+ module State
3258
+ # The state is unspecified.
3259
+ STATE_UNSPECIFIED = 0
3260
+
3261
+ # The move was initialized and recorded by the server, but not yet started.
3262
+ INITIALIZED = 1
3263
+
3264
+ # The move is in progress.
3265
+ IN_PROGRESS = 2
3266
+
3267
+ # The move has completed successfully.
3268
+ SUCCESS = 3
3269
+
3270
+ # The move has failed.
3271
+ FAILED = 4
3272
+ end
3273
+ end
3274
+
3275
+ # Contains metadata about the progress of the MoveRepository Long-running
3276
+ # operations.
3277
+ # @!attribute [r] create_time
3278
+ # @return [::Google::Protobuf::Timestamp]
3279
+ # Output only. The time the operation was created.
3280
+ # @!attribute [r] end_time
3281
+ # @return [::Google::Protobuf::Timestamp]
3282
+ # Output only. The time the operation finished running.
3283
+ # @!attribute [r] target
3284
+ # @return [::String]
3285
+ # Output only. Server-defined resource path for the target of the operation.
3286
+ # @!attribute [rw] state
3287
+ # @return [::Google::Cloud::Dataform::V1::MoveRepositoryMetadata::State]
3288
+ # The state of the move.
3289
+ # @!attribute [rw] percent_complete
3290
+ # @return [::Integer]
3291
+ # Percent complete of the move [0, 100].
3292
+ class MoveRepositoryMetadata
3293
+ include ::Google::Protobuf::MessageExts
3294
+ extend ::Google::Protobuf::MessageExts::ClassMethods
3295
+
3296
+ # Different states of the move.
3297
+ module State
3298
+ # The state is unspecified.
3299
+ STATE_UNSPECIFIED = 0
3300
+
3301
+ # The move was initialized and recorded by the server, but not yet started.
3302
+ INITIALIZED = 1
3303
+
3304
+ # The move is in progress.
3305
+ IN_PROGRESS = 2
3306
+
3307
+ # The move has completed successfully.
3308
+ SUCCESS = 3
3309
+
3310
+ # The move has failed.
3311
+ FAILED = 4
3312
+ end
3313
+ end
3314
+
3315
+ # Represents the level of detail to return for directory contents.
3316
+ module DirectoryContentsView
3317
+ # The default unset value. Defaults to DIRECTORY_CONTENTS_VIEW_BASIC.
3318
+ DIRECTORY_CONTENTS_VIEW_UNSPECIFIED = 0
3319
+
3320
+ # Includes only the file or directory name. This is the default behavior.
3321
+ DIRECTORY_CONTENTS_VIEW_BASIC = 1
3322
+
3323
+ # Includes all metadata for each file or directory. Currently not supported
3324
+ # by CMEK-protected workspaces.
3325
+ DIRECTORY_CONTENTS_VIEW_METADATA = 2
3326
+ end
2549
3327
  end
2550
3328
  end
2551
3329
  end