# frozen_string_literal: true # Copyright 2022 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 # # https://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. # Auto-generated by gapic-generator-ruby. DO NOT EDIT! module Google module Cloud module Dataform module V1beta1 # Represents a Dataform Git repository. # @!attribute [r] name # @return [::String] # Output only. The repository's name. # @!attribute [rw] git_remote_settings # @return [::Google::Cloud::Dataform::V1beta1::Repository::GitRemoteSettings] # Optional. If set, configures this repository to be linked to a Git remote. class Repository include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Controls Git remote configuration for a repository. # @!attribute [rw] url # @return [::String] # Required. The Git remote's URL. # @!attribute [rw] default_branch # @return [::String] # Required. The Git remote's default branch name. # @!attribute [rw] authentication_token_secret_version # @return [::String] # Required. The name of the Secret Manager secret version to use as an # authentication token for Git operations. Must be in the format # `projects/*/secrets/*/versions/*`. # @!attribute [r] token_status # @return [::Google::Cloud::Dataform::V1beta1::Repository::GitRemoteSettings::TokenStatus] # Output only. Indicates the status of the Git access token. class GitRemoteSettings include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Indicates the status of a Git authentication token. module TokenStatus # Default value. This value is unused. TOKEN_STATUS_UNSPECIFIED = 0 # The token could not be found in Secret Manager (or the Dataform # Service Account did not have permission to access it). NOT_FOUND = 1 # The token could not be used to authenticate against the Git remote. INVALID = 2 # The token was used successfully to authenticate against the Git remote. VALID = 3 end end end # `ListRepositories` request message. # @!attribute [rw] parent # @return [::String] # Required. The location in which to list repositories. Must be in the format # `projects/*/locations/*`. # @!attribute [rw] page_size # @return [::Integer] # Optional. Maximum number of repositories to return. The server may return fewer # items than requested. If unspecified, the server will pick an appropriate # default. # @!attribute [rw] page_token # @return [::String] # Optional. Page token received from a previous `ListRepositories` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to `ListRepositories` # must match the call that provided the page token. # @!attribute [rw] order_by # @return [::String] # Optional. This field only supports ordering by `name`. If unspecified, the server # will choose the ordering. If specified, the default order is ascending for # the `name` field. # @!attribute [rw] filter # @return [::String] # Optional. Filter for the returned list. class ListRepositoriesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `ListRepositories` response message. # @!attribute [rw] repositories # @return [::Array<::Google::Cloud::Dataform::V1beta1::Repository>] # List of repositories. # @!attribute [rw] next_page_token # @return [::String] # A token which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Locations which could not be reached. class ListRepositoriesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `GetRepository` request message. # @!attribute [rw] name # @return [::String] # Required. The repository's name. class GetRepositoryRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `CreateRepository` request message. # @!attribute [rw] parent # @return [::String] # Required. The location in which to create the repository. Must be in the format # `projects/*/locations/*`. # @!attribute [rw] repository # @return [::Google::Cloud::Dataform::V1beta1::Repository] # Required. The repository to create. # @!attribute [rw] repository_id # @return [::String] # Required. The ID to use for the repository, which will become the final component of # the repository's resource name. class CreateRepositoryRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `UpdateRepository` request message. # @!attribute [rw] update_mask # @return [::Google::Protobuf::FieldMask] # Optional. Specifies the fields to be updated in the repository. If left unset, # all fields will be updated. # @!attribute [rw] repository # @return [::Google::Cloud::Dataform::V1beta1::Repository] # Required. The repository to update. class UpdateRepositoryRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `DeleteRepository` request message. # @!attribute [rw] name # @return [::String] # Required. The repository's name. # @!attribute [rw] force # @return [::Boolean] # If set to true, any child resources of this repository will also be # deleted. (Otherwise, the request will only succeed if the repository has no # child resources.) class DeleteRepositoryRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `FetchRemoteBranches` request message. # @!attribute [rw] name # @return [::String] # Required. The repository's name. class FetchRemoteBranchesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `FetchRemoteBranches` response message. # @!attribute [rw] branches # @return [::Array<::String>] # The remote repository's branch names. class FetchRemoteBranchesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents a Dataform Git workspace. # @!attribute [r] name # @return [::String] # Output only. The workspace's name. class Workspace include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `ListWorkspaces` request message. # @!attribute [rw] parent # @return [::String] # Required. The repository in which to list workspaces. Must be in the # format `projects/*/locations/*/repositories/*`. # @!attribute [rw] page_size # @return [::Integer] # Optional. Maximum number of workspaces to return. The server may return fewer # items than requested. If unspecified, the server will pick an appropriate # default. # @!attribute [rw] page_token # @return [::String] # Optional. Page token received from a previous `ListWorkspaces` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to `ListWorkspaces` # must match the call that provided the page token. # @!attribute [rw] order_by # @return [::String] # Optional. This field only supports ordering by `name`. If unspecified, the server # will choose the ordering. If specified, the default order is ascending for # the `name` field. # @!attribute [rw] filter # @return [::String] # Optional. Filter for the returned list. class ListWorkspacesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `ListWorkspaces` response message. # @!attribute [rw] workspaces # @return [::Array<::Google::Cloud::Dataform::V1beta1::Workspace>] # List of workspaces. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Locations which could not be reached. class ListWorkspacesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `GetWorkspace` request message. # @!attribute [rw] name # @return [::String] # Required. The workspace's name. class GetWorkspaceRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `CreateWorkspace` request message. # @!attribute [rw] parent # @return [::String] # Required. The repository in which to create the workspace. Must be in the format # `projects/*/locations/*/repositories/*`. # @!attribute [rw] workspace # @return [::Google::Cloud::Dataform::V1beta1::Workspace] # Required. The workspace to create. # @!attribute [rw] workspace_id # @return [::String] # Required. The ID to use for the workspace, which will become the final component of # the workspace's resource name. class CreateWorkspaceRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `DeleteWorkspace` request message. # @!attribute [rw] name # @return [::String] # Required. The workspace resource's name. class DeleteWorkspaceRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents the author of a Git commit. # @!attribute [rw] name # @return [::String] # Required. The commit author's name. # @!attribute [rw] email_address # @return [::String] # Required. The commit author's email address. class CommitAuthor include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `PullGitCommits` request message. # @!attribute [rw] name # @return [::String] # Required. The workspace's name. # @!attribute [rw] remote_branch # @return [::String] # Optional. The name of the branch in the Git remote from which to pull commits. # If left unset, the repository's default branch name will be used. # @!attribute [rw] author # @return [::Google::Cloud::Dataform::V1beta1::CommitAuthor] # Required. The author of any merge commit which may be created as a result of merging # fetched Git commits into this workspace. class PullGitCommitsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `PushGitCommits` request message. # @!attribute [rw] name # @return [::String] # Required. The workspace's name. # @!attribute [rw] remote_branch # @return [::String] # Optional. The name of the branch in the Git remote to which commits should be pushed. # If left unset, the repository's default branch name will be used. class PushGitCommitsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `FetchFileGitStatuses` request message. # @!attribute [rw] name # @return [::String] # Required. The workspace's name. class FetchFileGitStatusesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `FetchFileGitStatuses` response message. # @!attribute [rw] uncommitted_file_changes # @return [::Array<::Google::Cloud::Dataform::V1beta1::FetchFileGitStatusesResponse::UncommittedFileChange>] # A list of all files which have uncommitted Git changes. There will only be # a single entry for any given file. class FetchFileGitStatusesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Represents the Git state of a file with uncommitted changes. # @!attribute [rw] path # @return [::String] # The file's full path including filename, relative to the workspace root. # @!attribute [rw] state # @return [::Google::Cloud::Dataform::V1beta1::FetchFileGitStatusesResponse::UncommittedFileChange::State] # Indicates the status of the file. class UncommittedFileChange include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Indicates the status of an uncommitted file change. module State # Default value. This value is unused. STATE_UNSPECIFIED = 0 # The file has been newly added. ADDED = 1 # The file has been deleted. DELETED = 2 # The file has been modified. MODIFIED = 3 # The file contains merge conflicts. HAS_CONFLICTS = 4 end end end # `FetchGitAheadBehind` request message. # @!attribute [rw] name # @return [::String] # Required. The workspace's name. # @!attribute [rw] remote_branch # @return [::String] # Optional. The name of the branch in the Git remote against which this workspace # should be compared. If left unset, the repository's default branch name # will be used. class FetchGitAheadBehindRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `FetchGitAheadBehind` response message. # @!attribute [rw] commits_ahead # @return [::Integer] # The number of commits in the remote branch that are not in the workspace. # @!attribute [rw] commits_behind # @return [::Integer] # The number of commits in the workspace that are not in the remote branch. class FetchGitAheadBehindResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `CommitWorkspaceChanges` request message. # @!attribute [rw] name # @return [::String] # Required. The workspace's name. # @!attribute [rw] author # @return [::Google::Cloud::Dataform::V1beta1::CommitAuthor] # Required. The commit's author. # @!attribute [rw] commit_message # @return [::String] # Optional. The commit's message. # @!attribute [rw] paths # @return [::Array<::String>] # Optional. Full file paths to commit including filename, rooted at workspace root. If # left empty, all files will be committed. class CommitWorkspaceChangesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `ResetWorkspaceChanges` request message. # @!attribute [rw] name # @return [::String] # Required. The workspace's name. # @!attribute [rw] paths # @return [::Array<::String>] # Optional. Full file paths to reset back to their committed state including filename, # rooted at workspace root. If left empty, all files will be reset. # @!attribute [rw] clean # @return [::Boolean] # Optional. If set to true, untracked files will be deleted. class ResetWorkspaceChangesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `FetchFileDiff` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. # @!attribute [rw] path # @return [::String] # Required. The file's full path including filename, relative to the workspace root. class FetchFileDiffRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `FetchFileDiff` response message. # @!attribute [rw] formatted_diff # @return [::String] # The raw formatted Git diff for the file. class FetchFileDiffResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `QueryDirectoryContents` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. # @!attribute [rw] path # @return [::String] # Optional. The directory's full path including directory name, relative to the # workspace root. If left unset, the workspace root is used. # @!attribute [rw] page_size # @return [::Integer] # Optional. Maximum number of paths to return. The server may return fewer # items than requested. If unspecified, the server will pick an appropriate # default. # @!attribute [rw] page_token # @return [::String] # Optional. Page token received from a previous `QueryDirectoryContents` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to # `QueryDirectoryContents` must match the call that provided the page # token. class QueryDirectoryContentsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `QueryDirectoryContents` response message. # @!attribute [rw] directory_entries # @return [::Array<::Google::Cloud::Dataform::V1beta1::QueryDirectoryContentsResponse::DirectoryEntry>] # List of entries in the directory. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. class QueryDirectoryContentsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Represents a single entry in a workspace directory. # @!attribute [rw] file # @return [::String] # A file in the directory. # @!attribute [rw] directory # @return [::String] # A child directory in the directory. class DirectoryEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # `MakeDirectory` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. # @!attribute [rw] path # @return [::String] # Required. The directory's full path including directory name, relative to the # workspace root. class MakeDirectoryRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `MakeDirectory` response message. class MakeDirectoryResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `RemoveDirectory` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. # @!attribute [rw] path # @return [::String] # Required. The directory's full path including directory name, relative to the # workspace root. class RemoveDirectoryRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `MoveDirectory` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. # @!attribute [rw] path # @return [::String] # Required. The directory's full path including directory name, relative to the # workspace root. # @!attribute [rw] new_path # @return [::String] # Required. The new path for the directory including directory name, rooted at # workspace root. class MoveDirectoryRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `MoveDirectory` response message. class MoveDirectoryResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `ReadFile` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. # @!attribute [rw] path # @return [::String] # Required. The file's full path including filename, relative to the workspace root. class ReadFileRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `ReadFile` response message. # @!attribute [rw] file_contents # @return [::String] # The file's contents. class ReadFileResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `RemoveFile` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. # @!attribute [rw] path # @return [::String] # Required. The file's full path including filename, relative to the workspace root. class RemoveFileRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `MoveFile` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. # @!attribute [rw] path # @return [::String] # Required. The file's full path including filename, relative to the workspace root. # @!attribute [rw] new_path # @return [::String] # Required. The file's new path including filename, relative to the workspace root. class MoveFileRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `MoveFile` response message. class MoveFileResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `WriteFile` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. # @!attribute [rw] path # @return [::String] # Required. The file. # @!attribute [rw] contents # @return [::String] # Required. The file's contents. class WriteFileRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `WriteFile` response message. class WriteFileResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `InstallNpmPackages` request message. # @!attribute [rw] workspace # @return [::String] # Required. The workspace's name. class InstallNpmPackagesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `InstallNpmPackages` response message. class InstallNpmPackagesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents the result of compiling a Dataform project. # @!attribute [r] name # @return [::String] # Output only. The compilation result's name. # @!attribute [rw] git_commitish # @return [::String] # Immutable. Git commit/tag/branch name at which the repository should be compiled. # Must exist in the remote repository. # Examples: # - a commit SHA: `12ade345` # - a tag: `tag1` # - a branch name: `branch1` # @!attribute [rw] workspace # @return [::String] # Immutable. The name of the workspace to compile. Must be in the format # `projects/*/locations/*/repositories/*/workspaces/*`. # @!attribute [rw] code_compilation_config # @return [::Google::Cloud::Dataform::V1beta1::CompilationResult::CodeCompilationConfig] # Immutable. If set, fields of `code_compilation_overrides` override the default # compilation settings that are specified in dataform.json. # @!attribute [r] dataform_core_version # @return [::String] # Output only. The version of `@dataform/core` that was used for compilation. # @!attribute [r] compilation_errors # @return [::Array<::Google::Cloud::Dataform::V1beta1::CompilationResult::CompilationError>] # Output only. Errors encountered during project compilation. class CompilationResult include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Configures various aspects of Dataform code compilation. # @!attribute [rw] default_database # @return [::String] # Optional. The default database (Google Cloud project ID). # @!attribute [rw] default_schema # @return [::String] # Optional. The default schema (BigQuery dataset ID). # @!attribute [rw] default_location # @return [::String] # Optional. The default BigQuery location to use. Defaults to "US". # See the BigQuery docs for a full list of locations: # https://cloud.google.com/bigquery/docs/locations. # @!attribute [rw] assertion_schema # @return [::String] # Optional. The default schema (BigQuery dataset ID) for assertions. # @!attribute [rw] vars # @return [::Google::Protobuf::Map{::String => ::String}] # Optional. User-defined variables that are made available to project code during # compilation. # @!attribute [rw] database_suffix # @return [::String] # Optional. The suffix that should be appended to all database (Google Cloud project # ID) names. # @!attribute [rw] schema_suffix # @return [::String] # Optional. The suffix that should be appended to all schema (BigQuery dataset ID) # names. # @!attribute [rw] table_prefix # @return [::String] # Optional. The prefix that should be prepended to all table names. class CodeCompilationConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class VarsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # An error encountered when attempting to compile a Dataform project. # @!attribute [r] message # @return [::String] # Output only. The error's top level message. # @!attribute [r] stack # @return [::String] # Output only. The error's full stack trace. # @!attribute [r] path # @return [::String] # Output only. The path of the file where this error occurred, if available, relative to # the project root. # @!attribute [r] action_target # @return [::Google::Cloud::Dataform::V1beta1::Target] # Output only. The identifier of the action where this error occurred, if available. class CompilationError include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # `ListCompilationResults` request message. # @!attribute [rw] parent # @return [::String] # Required. The repository in which to list compilation results. Must be in the # format `projects/*/locations/*/repositories/*`. # @!attribute [rw] page_size # @return [::Integer] # Optional. Maximum number of compilation results to return. The server may return # fewer items than requested. If unspecified, the server will pick an # appropriate default. # @!attribute [rw] page_token # @return [::String] # Optional. Page token received from a previous `ListCompilationResults` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to `ListCompilationResults` # must match the call that provided the page token. class ListCompilationResultsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `ListCompilationResults` response message. # @!attribute [rw] compilation_results # @return [::Array<::Google::Cloud::Dataform::V1beta1::CompilationResult>] # List of compilation results. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Locations which could not be reached. class ListCompilationResultsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `GetCompilationResult` request message. # @!attribute [rw] name # @return [::String] # Required. The compilation result's name. class GetCompilationResultRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `CreateCompilationResult` request message. # @!attribute [rw] parent # @return [::String] # Required. The repository in which to create the compilation result. Must be in the # format `projects/*/locations/*/repositories/*`. # @!attribute [rw] compilation_result # @return [::Google::Cloud::Dataform::V1beta1::CompilationResult] # Required. The compilation result to create. class CreateCompilationResultRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents an action identifier. If the action writes output, the output # will be written to the referenced database object. # @!attribute [rw] database # @return [::String] # The action's database (Google Cloud project ID) . # @!attribute [rw] schema # @return [::String] # The action's schema (BigQuery dataset ID), within `database`. # @!attribute [rw] name # @return [::String] # The action's name, within `database` and `schema`. class Target include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Describes a relation and its columns. # @!attribute [rw] description # @return [::String] # A text description of the relation. # @!attribute [rw] columns # @return [::Array<::Google::Cloud::Dataform::V1beta1::RelationDescriptor::ColumnDescriptor>] # A list of descriptions of columns within the relation. # @!attribute [rw] bigquery_labels # @return [::Google::Protobuf::Map{::String => ::String}] # A set of BigQuery labels that should be applied to the relation. class RelationDescriptor include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Describes a column. # @!attribute [rw] path # @return [::Array<::String>] # The identifier for the column. Each entry in `path` represents one level # of nesting. # @!attribute [rw] description # @return [::String] # A textual description of the column. # @!attribute [rw] bigquery_policy_tags # @return [::Array<::String>] # A list of BigQuery policy tags that will be applied to the column. class ColumnDescriptor include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class BigqueryLabelsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # Represents a single Dataform action in a compilation result. # @!attribute [rw] target # @return [::Google::Cloud::Dataform::V1beta1::Target] # This action's identifier. Unique within the compilation result. # @!attribute [rw] canonical_target # @return [::Google::Cloud::Dataform::V1beta1::Target] # The action's identifier if the project had been compiled without any # overrides configured. Unique within the compilation result. # @!attribute [rw] file_path # @return [::String] # The full path including filename in which this action is located, relative # to the workspace root. # @!attribute [rw] relation # @return [::Google::Cloud::Dataform::V1beta1::CompilationResultAction::Relation] # The database relation created/updated by this action. # @!attribute [rw] operations # @return [::Google::Cloud::Dataform::V1beta1::CompilationResultAction::Operations] # The database operations executed by this action. # @!attribute [rw] assertion # @return [::Google::Cloud::Dataform::V1beta1::CompilationResultAction::Assertion] # The assertion executed by this action. # @!attribute [rw] declaration # @return [::Google::Cloud::Dataform::V1beta1::CompilationResultAction::Declaration] # The declaration declared by this action. class CompilationResultAction include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Represents a database relation. # @!attribute [rw] dependency_targets # @return [::Array<::Google::Cloud::Dataform::V1beta1::Target>] # A list of actions that this action depends on. # @!attribute [rw] disabled # @return [::Boolean] # Whether this action is disabled (i.e. should not be run). # @!attribute [rw] tags # @return [::Array<::String>] # Arbitrary, user-defined tags on this action. # @!attribute [rw] relation_descriptor # @return [::Google::Cloud::Dataform::V1beta1::RelationDescriptor] # Descriptor for the relation and its columns. # @!attribute [rw] relation_type # @return [::Google::Cloud::Dataform::V1beta1::CompilationResultAction::Relation::RelationType] # The type of this relation. # @!attribute [rw] select_query # @return [::String] # The SELECT query which returns rows which this relation should contain. # @!attribute [rw] pre_operations # @return [::Array<::String>] # SQL statements to be executed before creating the relation. # @!attribute [rw] post_operations # @return [::Array<::String>] # SQL statements to be executed after creating the relation. # @!attribute [rw] incremental_table_config # @return [::Google::Cloud::Dataform::V1beta1::CompilationResultAction::Relation::IncrementalTableConfig] # Configures `INCREMENTAL_TABLE` settings for this relation. Only set if # `relation_type` is `INCREMENTAL_TABLE`. # @!attribute [rw] partition_expression # @return [::String] # The SQL expression used to partition the relation. # @!attribute [rw] cluster_expressions # @return [::Array<::String>] # A list of columns or SQL expressions used to cluster the table. # @!attribute [rw] partition_expiration_days # @return [::Integer] # Sets the partition expiration in days. # @!attribute [rw] require_partition_filter # @return [::Boolean] # Specifies whether queries on this table must include a predicate filter # that filters on the partitioning column. # @!attribute [rw] additional_options # @return [::Google::Protobuf::Map{::String => ::String}] # Additional options that will be provided as key/value pairs into the # options clause of a create table/view statement. See # https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language # for more information on which options are supported. class Relation include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Contains settings for relations of type `INCREMENTAL_TABLE`. # @!attribute [rw] incremental_select_query # @return [::String] # The SELECT query which returns rows which should be inserted into the # relation if it already exists and is not being refreshed. # @!attribute [rw] refresh_disabled # @return [::Boolean] # Whether this table should be protected from being refreshed. # @!attribute [rw] unique_key_parts # @return [::Array<::String>] # A set of columns or SQL expressions used to define row uniqueness. # If any duplicates are discovered (as defined by `unique_key_parts`), # only the newly selected rows (as defined by `incremental_select_query`) # will be included in the relation. # @!attribute [rw] update_partition_filter # @return [::String] # A SQL expression conditional used to limit the set of existing rows # considered for a merge operation (see `unique_key_parts` for more # information). # @!attribute [rw] incremental_pre_operations # @return [::Array<::String>] # SQL statements to be executed before inserting new rows into the # relation. # @!attribute [rw] incremental_post_operations # @return [::Array<::String>] # SQL statements to be executed after inserting new rows into the # relation. class IncrementalTableConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class AdditionalOptionsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Indicates the type of this relation. module RelationType # Default value. This value is unused. RELATION_TYPE_UNSPECIFIED = 0 # The relation is a table. TABLE = 1 # The relation is a view. VIEW = 2 # The relation is an incrementalized table. INCREMENTAL_TABLE = 3 # The relation is a materialized view. MATERIALIZED_VIEW = 4 end end # Represents a list of arbitrary database operations. # @!attribute [rw] dependency_targets # @return [::Array<::Google::Cloud::Dataform::V1beta1::Target>] # A list of actions that this action depends on. # @!attribute [rw] disabled # @return [::Boolean] # Whether this action is disabled (i.e. should not be run). # @!attribute [rw] tags # @return [::Array<::String>] # Arbitrary, user-defined tags on this action. # @!attribute [rw] relation_descriptor # @return [::Google::Cloud::Dataform::V1beta1::RelationDescriptor] # Descriptor for any output relation and its columns. Only set if # `has_output` is true. # @!attribute [rw] queries # @return [::Array<::String>] # A list of arbitrary SQL statements that will be executed without # alteration. # @!attribute [rw] has_output # @return [::Boolean] # Whether these operations produce an output relation. class Operations include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents an assertion upon a SQL query which is required return zero # rows. # @!attribute [rw] dependency_targets # @return [::Array<::Google::Cloud::Dataform::V1beta1::Target>] # A list of actions that this action depends on. # @!attribute [rw] parent_action # @return [::Google::Cloud::Dataform::V1beta1::Target] # The parent action of this assertion. Only set if this assertion was # automatically generated. # @!attribute [rw] disabled # @return [::Boolean] # Whether this action is disabled (i.e. should not be run). # @!attribute [rw] tags # @return [::Array<::String>] # Arbitrary, user-defined tags on this action. # @!attribute [rw] select_query # @return [::String] # The SELECT query which must return zero rows in order for this assertion # to succeed. # @!attribute [rw] relation_descriptor # @return [::Google::Cloud::Dataform::V1beta1::RelationDescriptor] # Descriptor for the assertion's automatically-generated view and its # columns. class Assertion include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents a relation which is not managed by Dataform but which may be # referenced by Dataform actions. # @!attribute [rw] relation_descriptor # @return [::Google::Cloud::Dataform::V1beta1::RelationDescriptor] # Descriptor for the relation and its columns. Used as documentation only, # i.e. values here will result in no changes to the relation's metadata. class Declaration include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # `QueryCompilationResultActions` request message. # @!attribute [rw] name # @return [::String] # Required. The compilation result's name. # @!attribute [rw] page_size # @return [::Integer] # Optional. Maximum number of compilation results to return. The server may return # fewer items than requested. If unspecified, the server will pick an # appropriate default. # @!attribute [rw] page_token # @return [::String] # Optional. Page token received from a previous `QueryCompilationResultActions` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to # `QueryCompilationResultActions` must match the call that provided the page # token. # @!attribute [rw] filter # @return [::String] # Optional. Optional filter for the returned list. Filtering is only currently # supported on the `file_path` field. class QueryCompilationResultActionsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `QueryCompilationResultActions` response message. # @!attribute [rw] compilation_result_actions # @return [::Array<::Google::Cloud::Dataform::V1beta1::CompilationResultAction>] # List of compilation result actions. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. class QueryCompilationResultActionsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents a single invocation of a compilation result. # @!attribute [r] name # @return [::String] # Output only. The workflow invocation's name. # @!attribute [rw] compilation_result # @return [::String] # Immutable. The name of the compilation result to compile. Must be in the format # `projects/*/locations/*/repositories/*/compilationResults/*`. # @!attribute [rw] invocation_config # @return [::Google::Cloud::Dataform::V1beta1::WorkflowInvocation::InvocationConfig] # Immutable. If left unset, a default InvocationConfig will be used. # @!attribute [r] state # @return [::Google::Cloud::Dataform::V1beta1::WorkflowInvocation::State] # Output only. This workflow invocation's current state. # @!attribute [r] invocation_timing # @return [::Google::Type::Interval] # Output only. This workflow invocation's timing details. class WorkflowInvocation include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Includes various configuration options for this workflow invocation. # If both `included_targets` and `included_tags` are unset, all actions # will be included. # @!attribute [rw] included_targets # @return [::Array<::Google::Cloud::Dataform::V1beta1::Target>] # Immutable. The set of action identifiers to include. # @!attribute [rw] included_tags # @return [::Array<::String>] # Immutable. The set of tags to include. # @!attribute [rw] transitive_dependencies_included # @return [::Boolean] # Immutable. When set to true, transitive dependencies of included actions will be # executed. # @!attribute [rw] transitive_dependents_included # @return [::Boolean] # Immutable. When set to true, transitive dependents of included actions will be # executed. # @!attribute [rw] fully_refresh_incremental_tables_enabled # @return [::Boolean] # Immutable. When set to true, any incremental tables will be fully refreshed. class InvocationConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents the current state of a workflow invocation. module State # Default value. This value is unused. STATE_UNSPECIFIED = 0 # The workflow invocation is currently running. RUNNING = 1 # The workflow invocation succeeded. A terminal state. SUCCEEDED = 2 # The workflow invocation was cancelled. A terminal state. CANCELLED = 3 # The workflow invocation failed. A terminal state. FAILED = 4 # The workflow invocation is being cancelled, but some actions are still # running. CANCELING = 5 end end # `ListWorkflowInvocations` request message. # @!attribute [rw] parent # @return [::String] # Required. The parent resource of the WorkflowInvocation type. Must be in the # format `projects/*/locations/*/repositories/*`. # @!attribute [rw] page_size # @return [::Integer] # Optional. Maximum number of workflow invocations to return. The server may return # fewer items than requested. If unspecified, the server will pick an # appropriate default. # @!attribute [rw] page_token # @return [::String] # Optional. Page token received from a previous `ListWorkflowInvocations` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to `ListWorkflowInvocations` # must match the call that provided the page token. class ListWorkflowInvocationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `ListWorkflowInvocations` response message. # @!attribute [rw] workflow_invocations # @return [::Array<::Google::Cloud::Dataform::V1beta1::WorkflowInvocation>] # List of workflow invocations. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Locations which could not be reached. class ListWorkflowInvocationsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `GetWorkflowInvocation` request message. # @!attribute [rw] name # @return [::String] # Required. The workflow invocation resource's name. class GetWorkflowInvocationRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `CreateWorkflowInvocation` request message. # @!attribute [rw] parent # @return [::String] # Required. The repository in which to create the workflow invocation. Must be in the # format `projects/*/locations/*/repositories/*`. # @!attribute [rw] workflow_invocation # @return [::Google::Cloud::Dataform::V1beta1::WorkflowInvocation] # Required. The workflow invocation resource to create. class CreateWorkflowInvocationRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `DeleteWorkflowInvocation` request message. # @!attribute [rw] name # @return [::String] # Required. The workflow invocation resource's name. class DeleteWorkflowInvocationRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `CancelWorkflowInvocation` request message. # @!attribute [rw] name # @return [::String] # Required. The workflow invocation resource's name. class CancelWorkflowInvocationRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents a single action in a workflow invocation. # @!attribute [r] target # @return [::Google::Cloud::Dataform::V1beta1::Target] # Output only. This action's identifier. Unique within the workflow invocation. # @!attribute [r] canonical_target # @return [::Google::Cloud::Dataform::V1beta1::Target] # Output only. The action's identifier if the project had been compiled without any # overrides configured. Unique within the compilation result. # @!attribute [r] state # @return [::Google::Cloud::Dataform::V1beta1::WorkflowInvocationAction::State] # Output only. This action's current state. # @!attribute [r] failure_reason # @return [::String] # Output only. If and only if action's state is FAILED a failure reason is set. # @!attribute [r] invocation_timing # @return [::Google::Type::Interval] # Output only. This action's timing details. # `start_time` will be set if the action is in [RUNNING, SUCCEEDED, # CANCELLED, FAILED] state. # `end_time` will be set if the action is in [SUCCEEDED, CANCELLED, FAILED] # state. # @!attribute [r] bigquery_action # @return [::Google::Cloud::Dataform::V1beta1::WorkflowInvocationAction::BigQueryAction] # Output only. The workflow action's bigquery action details. class WorkflowInvocationAction include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Represents a workflow action that will run against BigQuery. # @!attribute [r] sql_script # @return [::String] # Output only. The generated BigQuery SQL script that will be executed. class BigQueryAction include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents the current state of an workflow invocation action. module State # The action has not yet been considered for invocation. PENDING = 0 # The action is currently running. RUNNING = 1 # Execution of the action was skipped because upstream dependencies did not # all complete successfully. A terminal state. SKIPPED = 2 # Execution of the action was disabled as per the configuration of the # corresponding compilation result action. A terminal state. DISABLED = 3 # The action succeeded. A terminal state. SUCCEEDED = 4 # The action was cancelled. A terminal state. CANCELLED = 5 # The action failed. A terminal state. FAILED = 6 end end # `QueryWorkflowInvocationActions` request message. # @!attribute [rw] name # @return [::String] # Required. The workflow invocation's name. # @!attribute [rw] page_size # @return [::Integer] # Optional. Maximum number of workflow invocations to return. The server may return # fewer items than requested. If unspecified, the server will pick an # appropriate default. # @!attribute [rw] page_token # @return [::String] # Optional. Page token received from a previous `QueryWorkflowInvocationActions` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to # `QueryWorkflowInvocationActions` must match the call that provided the page # token. class QueryWorkflowInvocationActionsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # `QueryWorkflowInvocationActions` response message. # @!attribute [rw] workflow_invocation_actions # @return [::Array<::Google::Cloud::Dataform::V1beta1::WorkflowInvocationAction>] # List of workflow invocation actions. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. class QueryWorkflowInvocationActionsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end end end end