UNPKG

googleapis

Version:
1,523 lines (1,522 loc) 221 kB
import { OAuth2Client, JWT, Compute, UserRefreshClient, BaseExternalAccountClient, GaxiosResponseWithHTTP2, GoogleConfigurable, MethodOptions, StreamMethodOptions, GlobalOptions, GoogleAuth, BodyResponseCallback, APIRequestContext } from 'googleapis-common'; import { Readable } from 'stream'; export declare namespace workloadmanager_v1 { export interface Options extends GlobalOptions { version: 'v1'; } interface StandardParameters { /** * Auth client or API Key for the request */ auth?: string | OAuth2Client | JWT | Compute | UserRefreshClient | BaseExternalAccountClient | GoogleAuth; /** * V1 error format. */ '$.xgafv'?: string; /** * OAuth access token. */ access_token?: string; /** * Data format for response. */ alt?: string; /** * JSONP */ callback?: string; /** * Selector specifying which fields to include in a partial response. */ fields?: string; /** * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */ quotaUser?: string; /** * Legacy upload protocol for media (e.g. "media", "multipart"). */ uploadType?: string; /** * Upload protocol for media (e.g. "raw", "multipart"). */ upload_protocol?: string; } /** * Workload Manager API * * Workload Manager is a service that provides tooling for enterprise workloads to automate the deployment and validation of your workloads against best practices and recommendations. * * @example * ```js * const {google} = require('googleapis'); * const workloadmanager = google.workloadmanager('v1'); * ``` */ export class Workloadmanager { context: APIRequestContext; projects: Resource$Projects; constructor(options: GlobalOptions, google?: GoogleConfigurable); } /** * Active Directory details. */ export interface Schema$ActiveDirectory { /** * Optional. DNS IP address. */ dnsAddress?: string | null; /** * Optional. Human readable form of a domain such as `example.com`. */ domain?: string | null; /** * Optional. Domain username. */ domainUsername?: string | null; /** * Required. Secret Manager secret. */ secretManagerSecret?: string | null; /** * Required. Active Directory type. */ type?: string | null; } /** * The Actuation object represents the bootstrap state and output results of deployed infrastructure and software. */ export interface Schema$Actuation { /** * Output only. Actuation output. */ actuationOutput?: Schema$ActuationOutput; /** * Output only. Deployment output. */ deploymentOutput?: Schema$DeploymentOutput[]; /** * Output only. End time stamp. */ endTime?: string | null; /** * The name of the actuation resource. The format is projects/{project\}/locations/{location\}/deployments/{deployment\}/actuations/{actuation\}. */ name?: string | null; /** * Output only. Start time stamp. */ startTime?: string | null; /** * Output only. Actuation state. */ state?: string | null; } /** * Message for output of actuation. */ export interface Schema$ActuationOutput { /** * A link to the Cloud Storage file that stores build logs. */ actuateLogs?: string | null; /** * Output only. Error message returned from Ansible. */ ansibleError?: string | null; /** * Output only. Failed task name returned from Ansible. */ ansibleFailedTask?: string[] | null; /** * Reference to the Blueprint Controller deployment and revision resource. */ blueprintId?: string | null; /** * Cloud Build instance UUID associated with this revision, without any suffix or prefix */ cloudbuildId?: string | null; /** * Output only. Code describing any errors that may have occurred. If not specified, there is no error in actuation. */ errorCode?: string | null; /** * A link to the actuation Cloud Build log. */ errorLogs?: string | null; /** * Output only. Whether the error message is user facing. If true, the error message will be shown in the UI. */ hasUserFacingErrorMsg?: boolean | null; /** * Output only. Error message returned from Terraform. */ terraformError?: string | null; /** * Reference to the Terraform template used. */ terraformTemplate?: string | null; } /** * An AgentCommand specifies a one-time executable program for the agent to run. */ export interface Schema$AgentCommand { /** * The name of the agent one-time executable that will be invoked. */ command?: string | null; /** * A map of key/value pairs that can be used to specify additional one-time executable settings. */ parameters?: { [key: string]: string; } | null; } /** * Agent status. */ export interface Schema$AgentStates { /** * Optional. The available version of the agent in artifact registry. */ availableVersion?: string | null; /** * Optional. HANA monitoring metrics of the agent. */ hanaMonitoring?: Schema$ServiceStates; /** * Optional. The installed version of the agent on the host. */ installedVersion?: string | null; /** * Optional. Whether the agent is fully enabled. If false, the agent is has some issues. */ isFullyEnabled?: boolean | null; /** * Optional. The Process metrics of the agent. */ processMetrics?: Schema$ServiceStates; /** * Optional. The System discovery metrics of the agent. */ systemDiscovery?: Schema$ServiceStates; } /** * The schema of agent status data. */ export interface Schema$AgentStatus { /** * Output only. The name of the agent. */ agentName?: string | null; /** * Output only. The available version of the agent in artifact registry. */ availableVersion?: string | null; /** * Output only. Whether the agent has full access to Cloud APIs. */ cloudApiAccessFullScopesGranted?: string | null; /** * Output only. The error message for the agent configuration if invalid. */ configurationErrorMessage?: string | null; /** * Output only. The path to the agent configuration file. */ configurationFilePath?: string | null; /** * Output only. Whether the agent configuration is valid. */ configurationValid?: string | null; /** * Output only. The installed version of the agent on the host. */ installedVersion?: string | null; /** * Output only. The URI of the instance. Format: projects//zones//instances/ */ instanceUri?: string | null; /** * Output only. The kernel version of the system. */ kernelVersion?: Schema$SapDiscoveryResourceInstancePropertiesKernelVersion; /** * Output only. Optional references to public documentation. */ references?: Schema$AgentStatusReference[]; /** * Output only. The services (process metrics, host metrics, etc.). */ services?: Schema$AgentStatusServiceStatus[]; /** * Output only. Whether the agent service is enabled in systemd. */ systemdServiceEnabled?: string | null; /** * Output only. Whether the agent service is running in systemd. */ systemdServiceRunning?: string | null; } /** * The configuration value. */ export interface Schema$AgentStatusConfigValue { /** * Output only. Whether the configuration value is the default value or overridden. */ isDefault?: boolean | null; /** * Output only. The name of the configuration value. */ name?: string | null; /** * Output only. The value of the configuration value. */ value?: string | null; } /** * The IAM permission status. */ export interface Schema$AgentStatusIAMPermission { /** * Output only. Whether the permission is granted. */ granted?: string | null; /** * Output only. The name of the permission. */ name?: string | null; } /** * The reference to public documentation. */ export interface Schema$AgentStatusReference { /** * Output only. The name of the reference. */ name?: string | null; /** * Output only. The URL of the reference. */ url?: string | null; } /** * The status of a service (process metrics, host metrics, etc.). */ export interface Schema$AgentStatusServiceStatus { /** * Output only. The configuration values for the service. */ configValues?: Schema$AgentStatusConfigValue[]; /** * Output only. The error message for the service if it is not fully functional. */ errorMessage?: string | null; /** * Output only. Whether the service is fully functional (all checks passed). */ fullyFunctional?: string | null; /** * Output only. The permissions required for the service. */ iamPermissions?: Schema$AgentStatusIAMPermission[]; /** * Output only. The name of the service. */ name?: string | null; /** * Output only. The state of the service (enabled or disabled in the configuration). */ state?: string | null; /** * Output only. The message to display when the service state is unspecified. */ unspecifiedStateMessage?: string | null; } /** * Message for SAP instance details. */ export interface Schema$AppDetails { /** * Optional. Instance ID for app. */ appInstanceId?: string | null; /** * Application service account. Let customers bring their own service account for the application. */ appServiceAccount?: string | null; /** * Optional. Customized VM names. */ appVmNames?: string[] | null; /** * Required. Image for the ASCS server. */ ascsImage?: string | null; /** * Optional. Instance ID for ASCS. */ ascsInstanceId?: string | null; /** * Required. ASCS machine type. */ ascsMachineType?: string | null; /** * ASCS service account. Let customers bring their own service account for ASCS. */ ascsServiceAccount?: string | null; /** * Optional. ASCS VM name. */ ascsVm?: string | null; /** * Optional. Instance ID for ERS. */ ersInstanceId?: string | null; /** * Optional. ERS VM name. */ ersVm?: string | null; /** * Required. Image for the app server and ASCS server. */ image?: string | null; /** * Required. Machine type. */ machineType?: string | null; /** * Required. Secret Manager secret. */ secretManagerSecret?: string | null; /** * Optional. Storage location. */ sharedStorage?: string | null; /** * Required. The SAP SID is a three-digit server-specific unique identification code. */ sid?: string | null; /** * Required. VMs multiplier. */ vmsMultiplier?: number | null; } /** * Backup properties. */ export interface Schema$BackupProperties { /** * Output only. The state of the latest backup. */ latestBackupStatus?: string | null; /** * The time when the latest backup was performed. */ latestBackupTime?: string | null; } /** * BigQuery destination for evaluation results. */ export interface Schema$BigQueryDestination { /** * Optional. Determines if a new results table will be created when an Execution is created. */ createNewResultsTable?: boolean | null; /** * Optional. Destination dataset to save evaluation results. */ destinationDataset?: string | null; } /** * The request message for Operations.CancelOperation. */ export interface Schema$CancelOperationRequest { } /** * The resource on GCP */ export interface Schema$CloudResource { /** * Output only. All instance properties. */ instanceProperties?: Schema$InstanceProperties; /** * Output only. */ kind?: string | null; /** * Output only. resource name Example: compute.googleapis.com/projects/wlm-obs-dev/zones/us-central1-a/instances/sap-pri */ name?: string | null; } /** * Command specifies the type of command to execute. */ export interface Schema$Command { /** * AgentCommand specifies a one-time executable program for the agent to run. */ agentCommand?: Schema$AgentCommand; /** * ShellCommand is invoked via the agent's command line executor. */ shellCommand?: Schema$ShellCommand; } /** * HealthCondition contains the detailed health check of each component. */ export interface Schema$ComponentHealth { /** * The component of a workload. */ component?: string | null; /** * The detailed health checks of the component. */ componentHealthChecks?: Schema$HealthCheck[]; /** * Output only. The type of the component health. */ componentHealthType?: string | null; /** * Output only. The health state of the component. */ state?: string | null; /** * Sub component health. */ subComponentsHealth?: Schema$ComponentHealth[]; } /** * Database details. */ export interface Schema$Database { /** * Required. Disk type. */ diskType?: string | null; /** * Optional. Only useful for Linux High Availability setup. */ floatingIpAddress?: string | null; /** * Required. Machine type. */ machineType?: string | null; /** * Optional. The name of a secondary-sole-tenant node/node group. */ secondarySoleTenantNode?: string | null; /** * Optional. The type of a secondary-sole-tenant node/node group. E.g., compute.googleapis.com/node-name. */ secondarySoleTenantNodeType?: string | null; /** * Required. Secret Manager secret. */ secretManagerSecret?: string | null; /** * Required. Whether simultaneous multithreading is enabled or not. */ smt?: boolean | null; /** * Optional. The name of a primary sole-tenant node/node group. */ soleTenantNode?: string | null; /** * Optional. The type of a primary sole-tenant node/node group. E.g., compute.googleapis.com/node-name. */ soleTenantNodeType?: string | null; /** * Required. Whether to have TempDB on local SSD. */ tempdbOnSsd?: boolean | null; /** * Required. SHARED or SOLE_TENANT. */ tenancyModel?: string | null; } /** * Message for SAP instance details. */ export interface Schema$DatabaseDetails { /** * Database service account. Let customers bring their own SA for the database. */ databaseServiceAccount?: string | null; /** * Required. Disk type. */ diskType?: string | null; /** * Required. Image for the database server. */ image?: string | null; /** * Optional. Instance ID. */ instanceId?: string | null; /** * Required. Machine type. */ machineType?: string | null; /** * Optional. Primary DB VM name. */ primaryDbVm?: string | null; /** * Optional. Secondary DB VM name. */ secondaryDbVm?: string | null; /** * Required. Secret Manager secret. */ secretManagerSecret?: string | null; /** * Required. The SID is a three-digit server-specific unique identification code. */ sid?: string | null; } /** * Database Properties. */ export interface Schema$DatabaseProperties { /** * Output only. Backup properties. */ backupProperties?: Schema$BackupProperties; /** * Output only. Type of the database. `HANA`, `DB2`, etc. */ databaseType?: string | null; } /** * The Deployment object represents user intent for deploying a specific type of workload. */ export interface Schema$Deployment { /** * Output only. Create time stamp. */ createTime?: string | null; /** * Description of the deployment. */ description?: string | null; /** * The name of the deployment resource. The format is 'projects/{project_id\}/locations/{location_id\}/deployments/{deployment_id\}'. */ name?: string | null; /** * SAP system workload input. */ sapSystemS4Config?: Schema$SapSystemS4Config; /** * User-specified Service Account (SA) credentials to be used for Cloud Build. Format: `projects/{projectID\}/serviceAccounts/{serviceAccount\}` The default Cloud Build SA will be used initially if this field is not set during deployment creation. */ serviceAccount?: string | null; /** * MS SQL workload input. */ sqlServerWorkload?: Schema$SqlServerWorkload; /** * Output only. Current state of the deployment. */ state?: string | null; /** * Optional. terraform_variables represents all the Terraform variables for the deployment workload. The key is the name of the Terraform variable, and the value is the TerraformVariable. For example: { "project_id": { "input_value": { "string_value": "my-project-id" \} \}, "zone": { "input_value": { "string_value": "us-central1-a" \} \} \} */ terraformVariables?: { [key: string]: Schema$TerraformVariable; } | null; /** * Output only. Update time stamp. */ updateTime?: string | null; /** * Optional. The user-specified Cloud Build worker pool resource in which the Cloud Build job will execute. Format: `projects/{project\}/locations/{location\}/workerPools/{workerPoolId\}`. If this field is unspecified, the default Cloud Build worker pool will be used. */ workerPool?: string | null; /** * Optional. Workload type of the deployment. */ workloadType?: string | null; } /** * Message for output of deployment resource. */ export interface Schema$DeploymentOutput { /** * Name of the resource. */ name?: string | null; /** * Type of the resource. */ type?: string | null; } /** * A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); \} */ export interface Schema$Empty { } /** * Represents a Workload Manager Evaluation configuration. An Evaluation defines a set of rules to be validated against a scope of Cloud resources. */ export interface Schema$Evaluation { /** * Optional. The BigQuery destination for detailed evaluation results. If this field is specified, the results of each evaluation execution are exported to BigQuery. */ bigQueryDestination?: Schema$BigQueryDestination; /** * Output only. [Output only] Create time stamp. */ createTime?: string | null; /** * The Cloud Storage bucket name for custom rules. */ customRulesBucket?: string | null; /** * Description of the Evaluation. */ description?: string | null; /** * Evaluation type. */ evaluationType?: string | null; /** * Optional. Immutable. Customer-managed encryption key name, in the format projects/x/locations/x/keyRings/x/cryptoKeys/x. The key will be used for CMEK encryption of the evaluation resource. */ kmsKey?: string | null; /** * Labels as key value pairs. */ labels?: { [key: string]: string; } | null; /** * Name of resource that has the form `projects/{project_id\}/locations/{location_id\}/evaluations/{evaluation_id\}`. */ name?: string | null; /** * Resource filter for an evaluation defining the scope of resources to be evaluated. */ resourceFilter?: Schema$ResourceFilter; /** * Output only. [Output only] The current lifecycle state of the evaluation resource. */ resourceStatus?: Schema$ResourceStatus; /** * The names of the rules used for this evaluation. */ ruleNames?: string[] | null; /** * Crontab format schedule for scheduled evaluation, currently only supports the following fixed schedules: * `0 x/1 * * *` # Hourly * `0 x/6 * * *` # Every 6 hours * `0 x/12 * * *` # Every 12 hours * `0 0 x/1 * *` # Daily * `0 0 x/7 * *` # Weekly * `0 0 x/14 * *` # Every 14 days * `0 0 1 x/1 *` # Monthly */ schedule?: string | null; /** * Output only. [Output only] Update time stamp. */ updateTime?: string | null; } /** * Execution that represents a single run of an Evaluation. */ export interface Schema$Execution { /** * Output only. [Output only] End time stamp. */ endTime?: string | null; /** * Optional. Engine. */ engine?: string | null; /** * Output only. [Output only] Evaluation ID. */ evaluationId?: string | null; /** * Optional. External data sources. */ externalDataSources?: Schema$ExternalDataSources[]; /** * Output only. [Output only] Inventory time stamp. */ inventoryTime?: string | null; /** * Labels as key value pairs. */ labels?: { [key: string]: string; } | null; /** * The name of execution resource. The format is projects/{project\}/locations/{location\}/evaluations/{evaluation\}/executions/{execution\}. */ name?: string | null; /** * Output only. Additional information generated by the execution. */ notices?: Schema$Notice[]; /** * Output only. [Output only] Result summary for the execution. */ resultSummary?: Schema$Summary; /** * Output only. Execution result summary per rule. */ ruleResults?: Schema$RuleExecutionResult[]; /** * Type which represents whether the execution executed directly by user or scheduled according to the `Evaluation.schedule` field. */ runType?: string | null; /** * Output only. [Output only] Start time stamp. */ startTime?: string | null; /** * Output only. [Output only] State. */ state?: string | null; } /** * The result of an execution. */ export interface Schema$ExecutionResult { /** * The commands to remediate the violation. */ commands?: Schema$Command[]; /** * The URL for the documentation of the rule. */ documentationUrl?: string | null; /** * The resource that violates the rule. */ resource?: Schema$Resource; /** * The rule that is violated in an evaluation. */ rule?: string | null; /** * The severity of violation. */ severity?: string | null; /** * Execution result type of the scanned resource. */ type?: string | null; /** * The details of violation in an evaluation result. */ violationDetails?: Schema$ViolationDetails; /** * The violation message of an execution. */ violationMessage?: string | null; } /** * External data sources for an execution. */ export interface Schema$ExternalDataSources { /** * Required. The asset type of the external data source. This can be a supported Cloud Asset Inventory asset type (see https://cloud.google.com/asset-inventory/docs/supported-asset-types) to override the default asset type, or it can be a custom type defined by the user. */ assetType?: string | null; /** * Optional. Name of external data source. The name will be used inside the rego/sql to refer the external data. */ name?: string | null; /** * Required. Type of external data source. */ type?: string | null; /** * Required. URI of external data source. example of bq table {project_ID\}.{dataset_ID\}.{table_ID\}. */ uri?: string | null; } /** * A filter for matching Compute Engine instances. */ export interface Schema$GceInstanceFilter { /** * If non-empty, only Compute Engine instances associated with at least one of the provided service accounts will be included in the evaluation. */ serviceAccounts?: string[] | null; } /** * HealthCheck contains the detailed health check of a component based on asource. */ export interface Schema$HealthCheck { /** * Output only. The message of the health check. */ message?: string | null; /** * Output only. The health check source metric name. */ metric?: string | null; /** * Output only. The resource the check performs on. */ resource?: Schema$CloudResource; /** * Output only. The source of the health check. */ source?: string | null; /** * Output only. The state of the health check. */ state?: string | null; } /** * The IAM permission status. */ export interface Schema$IAMPermission { /** * Output only. Whether the permission is granted. */ granted?: boolean | null; /** * Output only. The name of the permission. */ name?: string | null; } /** * A presentation of host resource usage where the workload runs. */ export interface Schema$Insight { /** * The insights data for the agent status. */ agentStatus?: Schema$AgentStatus; /** * Optional. The instance id where the insight is generated from */ instanceId?: string | null; /** * The insights data for the OpenShift workload validation. */ openShiftValidation?: Schema$OpenShiftValidation; /** * The insights data for SAP system discovery. This is a copy of SAP System proto and should get updated whenever that one changes. */ sapDiscovery?: Schema$SapDiscovery; /** * The insights data for the SAP workload validation. */ sapValidation?: Schema$SapValidation; /** * Output only. [Output only] Create time stamp */ sentTime?: string | null; /** * The insights data for the sqlserver workload validation. */ sqlserverValidation?: Schema$SqlserverValidation; /** * The insights data for workload validation of torso workloads. */ torsoValidation?: Schema$TorsoValidation; } /** * Instance Properties. */ export interface Schema$InstanceProperties { /** * Optional. Instance number. */ instanceNumber?: string | null; /** * Optional. Instance machine type. */ machineType?: string | null; /** * Optional. Instance roles. */ roles?: string[] | null; /** * Optional. SAP Instance properties. */ sapInstanceProperties?: Schema$SapInstanceProperties; /** * Optional. Instance status. */ status?: string | null; /** * Optional. the next maintenance event on VM */ upcomingMaintenanceEvent?: Schema$UpcomingMaintenanceEvent; } /** * The response object from `ListActuations`. */ export interface Schema$ListActuationsResponse { /** * The list of actuations. */ actuations?: Schema$Actuation[]; /** * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. */ nextPageToken?: string | null; /** * Unordered list. Locations that could not be reached. */ unreachable?: string[] | null; } /** * Message for response to listing deployments. */ export interface Schema$ListDeploymentsResponse { /** * The list of deployments. */ deployments?: Schema$Deployment[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string | null; /** * Unordered list. Locations that could not be reached. */ unreachable?: string[] | null; } /** * List discovered profile Response returns discovered profiles from agents */ export interface Schema$ListDiscoveredProfilesResponse { /** * Output only. A token identifying a page of results the server should return */ nextPageToken?: string | null; /** * Locations that could not be reached. */ unreachable?: string[] | null; /** * Output only. The list of workload profiles */ workloadProfiles?: Schema$WorkloadProfile[]; } /** * Response message for the ListEvaluations RPC. */ export interface Schema$ListEvaluationsResponse { /** * The list of evaluations. */ evaluations?: Schema$Evaluation[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string | null; /** * Locations that could not be reached. */ unreachable?: string[] | null; } /** * Response message for the ListExecutionResults RPC. */ export interface Schema$ListExecutionResultsResponse { /** * The versions from the specified publisher. */ executionResults?: Schema$ExecutionResult[]; /** * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. */ nextPageToken?: string | null; } /** * Response message for the ListExecutions RPC. */ export interface Schema$ListExecutionsResponse { /** * The list of Execution. */ executions?: Schema$Execution[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string | null; /** * Locations that could not be reached. */ unreachable?: string[] | null; } /** * The response message for Locations.ListLocations. */ export interface Schema$ListLocationsResponse { /** * A list of locations that matches the specified filter in the request. */ locations?: Schema$Location[]; /** * The standard List next-page token. */ nextPageToken?: string | null; } /** * The response message for Operations.ListOperations. */ export interface Schema$ListOperationsResponse { /** * The standard List next-page token. */ nextPageToken?: string | null; /** * A list of operations that matches the specified filter in the request. */ operations?: Schema$Operation[]; /** * Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations. */ unreachable?: string[] | null; } /** * Response message for the ListRules RPC. */ export interface Schema$ListRulesResponse { /** * All rules in response. */ rules?: Schema$Rule[]; } /** * Response message for the ListScannedResources RPC. */ export interface Schema$ListScannedResourcesResponse { /** * A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. */ nextPageToken?: string | null; /** * All scanned resources in response. */ scannedResources?: Schema$ScannedResource[]; } /** * A resource that represents a Google Cloud location. */ export interface Schema$Location { /** * The friendly name for this location, typically a nearby city name. For example, "Tokyo". */ displayName?: string | null; /** * Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"\} */ labels?: { [key: string]: string; } | null; /** * The canonical id for this location. For example: `"us-east1"`. */ locationId?: string | null; /** * Service-specific metadata. For example the available capacity at the given location. */ metadata?: { [key: string]: any; } | null; /** * Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` */ name?: string | null; } /** * Message for SAP instance details. */ export interface Schema$LocationDetails { /** * Optional. Create firewall. If true, creates a firewall for the deployment. This field provides an option to not always create a firewall for the deployment. */ createCommsFirewall?: boolean | null; /** * Optional. Network tags. */ customTags?: string[] | null; /** * Optional. When the user skips DNS configuration in the UI, `deployment_dns_enabled` is false; otherwise `deployment_dns_enabled` is true. */ deploymentDnsEnabled?: boolean | null; /** * Optional. DNS zone name. */ dnsZone?: string | null; /** * Optional. DNS zone name suffix. */ dnsZoneNameSuffix?: string | null; internetAccess?: string | null; /** * Optional. Network project. */ networkProject?: string | null; /** * Required. Region name. */ regionName?: string | null; /** * Required. Subnet name. */ subnetName?: string | null; /** * Required. VPC name. */ vpcName?: string | null; /** * Required. Zone 1 name. */ zone1Name?: string | null; /** * Optional. Zone 2 name. */ zone2Name?: string | null; } /** * Additional information generated by an execution. */ export interface Schema$Notice { /** * Output only. Message of the notice. */ message?: string | null; } /** * A presentation of OpenShift workload insight. The schema of OpenShift workloads validation related data. */ export interface Schema$OpenShiftValidation { /** * Required. The OpenShift cluster ID (e.g. 8371bb05-7cac-4d38-82c0-0f58c4f6f936). */ clusterId?: string | null; /** * Required. The validation details of the OpenShift cluster in JSON format. */ validationDetails?: { [key: string]: any; } | null; } /** * This resource represents a long-running operation that is the result of a network API call. */ export interface Schema$Operation { /** * If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. */ done?: boolean | null; /** * The error result of the operation in case of failure or cancellation. */ error?: Schema$Status; /** * Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. */ metadata?: { [key: string]: any; } | null; /** * The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id\}`. */ name?: string | null; /** * 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`. */ response?: { [key: string]: any; } | null; } /** * Represents the metadata of the long-running operation. */ export interface Schema$OperationMetadata { /** * Output only. API version used to start the operation. */ apiVersion?: string | null; /** * Output only. The time the operation was created. */ createTime?: string | null; /** * Output only. The time the operation finished running. */ endTime?: string | null; /** * Output only. Identifies whether the user has requested cancellation of the operation. Operations that have been cancelled successfully have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`. */ requestedCancellation?: boolean | null; /** * Output only. Human-readable status of the operation, if any. */ statusMessage?: string | null; /** * Output only. Server-defined resource path for the target of the operation. */ target?: string | null; /** * Output only. Name of the verb executed by the operation. */ verb?: string | null; } /** * Pacemaker configuration. */ export interface Schema$Pacemaker { /** * Required. Bucket location for node certificates. */ bucketNameNodeCertificates?: string | null; /** * Required. Pacemaker cluster name. */ pacemakerCluster?: string | null; /** * Required. Pacemaker cluster secret name. */ pacemakerClusterSecret?: string | null; /** * Required. Pacemaker cluster username. */ pacemakerClusterUsername?: string | null; /** * Required. SQL Pacemaker secret name. */ sqlPacemakerSecret?: string | null; /** * Required. SQL Pacemaker username. */ sqlPacemakerUsername?: string | null; } /** * Contains the details of a product. */ export interface Schema$Product { /** * Optional. Name of the product. */ name?: string | null; /** * Optional. Version of the product. */ version?: string | null; } /** * Resource in execution result. */ export interface Schema$Resource { /** * The name of the resource. */ name?: string | null; /** * The service account associated with the resource. */ serviceAccount?: string | null; /** * The type of resource. */ type?: string | null; } /** * Resource filter for an evaluation defining the scope of resources to be evaluated. */ export interface Schema$ResourceFilter { /** * Filter compute engine resources. */ gceInstanceFilter?: Schema$GceInstanceFilter; /** * Labels to filter resources by. Each key-value pair in the map must exist on the resource for it to be included (e.g. VM instance labels). For example, specifying `{ "env": "prod", "database": "nosql" \}` will only include resources that have labels `env=prod` and `database=nosql`. */ inclusionLabels?: { [key: string]: string; } | null; /** * The pattern to filter resources by their id For example, a pattern of ".*prod-cluster.*" will match all resources that contain "prod-cluster" in their ID. */ resourceIdPatterns?: string[] | null; /** * The scopes of evaluation resource. Format: * `projects/{project_id\}` * `folders/{folder_id\}` * `organizations/{organization_id\}` */ scopes?: string[] | null; } /** * The lifecycle status of an Evaluation resource. */ export interface Schema$ResourceStatus { /** * State of the Evaluation resource. */ state?: string | null; } /** * A rule to be evaluated. */ export interface Schema$Rule { /** * The CAI asset type of the rule is evaluating, for joined asset types, it will be the corresponding primary asset types. */ assetType?: string | null; /** * Describe rule in plain language. */ description?: string | null; /** * The name display in UI. */ displayName?: string | null; /** * The message template for rule. */ errorMessage?: string | null; /** * Rule name. */ name?: string | null; /** * The primary category. */ primaryCategory?: string | null; /** * The remediation for the rule. */ remediation?: string | null; /** * Output only. The version of the rule. */ revisionId?: string | null; /** * The type of the rule. */ ruleType?: string | null; /** * The secondary category. */ secondaryCategory?: string | null; /** * The severity of the rule. */ severity?: string | null; /** * List of user-defined tags. */ tags?: string[] | null; /** * The document url for the rule. */ uri?: string | null; } /** * Execution result summary per rule. */ export interface Schema$RuleExecutionResult { /** * Execution message, if any. */ message?: string | null; /** * Number of violations. */ resultCount?: string | null; /** * Rule name as plain text like `sap-hana-configured`. */ rule?: string | null; /** * Number of total scanned resources. */ scannedResourceCount?: string | null; /** * Output only. The execution status. */ state?: string | null; } /** * The rule output of the violation. */ export interface Schema$RuleOutput { /** * Output only. Violation details generated by rule. */ details?: { [key: string]: string; } | null; /** * Output only. The message generated by rule. */ message?: string | null; } /** * Request message for the RunEvaluation RPC. */ export interface Schema$RunEvaluationRequest { /** * Required. The resource being created. */ execution?: Schema$Execution; /** * Required. ID of the execution which will be created. */ executionId?: string | null; /** * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */ requestId?: string | null; } /** * The component of sap workload */ export interface Schema$SapComponent { /** * Output only. All instance properties. */ databaseProperties?: Schema$DatabaseProperties; /** * List of host URIs that are part of the HA configuration if present. An empty list indicates the component is not configured for HA. */ haHosts?: string[] | null; /** * Output only. resources in the component */ resources?: Schema$CloudResource[]; /** * Output only. sid is the sap component identificator */ sid?: string | null; /** * The detected topology of the component. */ topologyType?: string | null; } /** * The schema of SAP system discovery data. */ export interface Schema$SapDiscovery { /** * Optional. An SAP system may run without an application layer. */ applicationLayer?: Schema$SapDiscoveryComponent; /** * Required. An SAP System must have a database. */ databaseLayer?: Schema$SapDiscoveryComponent; /**