1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.dataproc.v1; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/api/annotations.proto"; 20*d5c09012SAndroid Build Coastguard Workerimport "google/api/client.proto"; 21*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto"; 22*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/cloud/dataproc/v1/shared.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/longrunning/operations.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 26*d5c09012SAndroid Build Coastguard Worker 27*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/dataproc/v2/apiv1/dataprocpb;dataprocpb"; 28*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 29*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "SessionsProto"; 30*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.dataproc.v1"; 31*d5c09012SAndroid Build Coastguard Worker 32*d5c09012SAndroid Build Coastguard Worker// The `SessionController` provides methods to manage interactive sessions. 33*d5c09012SAndroid Build Coastguard Workerservice SessionController { 34*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "dataproc.googleapis.com"; 35*d5c09012SAndroid Build Coastguard Worker option (google.api.oauth_scopes) = 36*d5c09012SAndroid Build Coastguard Worker "https://www.googleapis.com/auth/cloud-platform"; 37*d5c09012SAndroid Build Coastguard Worker 38*d5c09012SAndroid Build Coastguard Worker // Create an interactive session asynchronously. 39*d5c09012SAndroid Build Coastguard Worker rpc CreateSession(CreateSessionRequest) 40*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 41*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 42*d5c09012SAndroid Build Coastguard Worker post: "/v1/{parent=projects/*/locations/*}/sessions" 43*d5c09012SAndroid Build Coastguard Worker body: "session" 44*d5c09012SAndroid Build Coastguard Worker }; 45*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,session,session_id"; 46*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 47*d5c09012SAndroid Build Coastguard Worker response_type: "Session" 48*d5c09012SAndroid Build Coastguard Worker metadata_type: "google.cloud.dataproc.v1.SessionOperationMetadata" 49*d5c09012SAndroid Build Coastguard Worker }; 50*d5c09012SAndroid Build Coastguard Worker } 51*d5c09012SAndroid Build Coastguard Worker 52*d5c09012SAndroid Build Coastguard Worker // Gets the resource representation for an interactive session. 53*d5c09012SAndroid Build Coastguard Worker rpc GetSession(GetSessionRequest) returns (Session) { 54*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 55*d5c09012SAndroid Build Coastguard Worker get: "/v1/{name=projects/*/locations/*/sessions/*}" 56*d5c09012SAndroid Build Coastguard Worker }; 57*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 58*d5c09012SAndroid Build Coastguard Worker } 59*d5c09012SAndroid Build Coastguard Worker 60*d5c09012SAndroid Build Coastguard Worker // Lists interactive sessions. 61*d5c09012SAndroid Build Coastguard Worker rpc ListSessions(ListSessionsRequest) returns (ListSessionsResponse) { 62*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 63*d5c09012SAndroid Build Coastguard Worker get: "/v1/{parent=projects/*/locations/*}/sessions" 64*d5c09012SAndroid Build Coastguard Worker }; 65*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 66*d5c09012SAndroid Build Coastguard Worker } 67*d5c09012SAndroid Build Coastguard Worker 68*d5c09012SAndroid Build Coastguard Worker // Terminates the interactive session. 69*d5c09012SAndroid Build Coastguard Worker rpc TerminateSession(TerminateSessionRequest) 70*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 71*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 72*d5c09012SAndroid Build Coastguard Worker post: "/v1/{name=projects/*/locations/*/sessions/*}:terminate" 73*d5c09012SAndroid Build Coastguard Worker body: "*" 74*d5c09012SAndroid Build Coastguard Worker }; 75*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 76*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 77*d5c09012SAndroid Build Coastguard Worker response_type: "Session" 78*d5c09012SAndroid Build Coastguard Worker metadata_type: "google.cloud.dataproc.v1.SessionOperationMetadata" 79*d5c09012SAndroid Build Coastguard Worker }; 80*d5c09012SAndroid Build Coastguard Worker } 81*d5c09012SAndroid Build Coastguard Worker 82*d5c09012SAndroid Build Coastguard Worker // Deletes the interactive session resource. If the session is not in terminal 83*d5c09012SAndroid Build Coastguard Worker // state, it is terminated, and then deleted. 84*d5c09012SAndroid Build Coastguard Worker rpc DeleteSession(DeleteSessionRequest) 85*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 86*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 87*d5c09012SAndroid Build Coastguard Worker delete: "/v1/{name=projects/*/locations/*/sessions/*}" 88*d5c09012SAndroid Build Coastguard Worker }; 89*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 90*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 91*d5c09012SAndroid Build Coastguard Worker response_type: "Session" 92*d5c09012SAndroid Build Coastguard Worker metadata_type: "google.cloud.dataproc.v1.SessionOperationMetadata" 93*d5c09012SAndroid Build Coastguard Worker }; 94*d5c09012SAndroid Build Coastguard Worker } 95*d5c09012SAndroid Build Coastguard Worker} 96*d5c09012SAndroid Build Coastguard Worker 97*d5c09012SAndroid Build Coastguard Worker// A request to create a session. 98*d5c09012SAndroid Build Coastguard Workermessage CreateSessionRequest { 99*d5c09012SAndroid Build Coastguard Worker // Required. The parent resource where this session will be created. 100*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 101*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 102*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 103*d5c09012SAndroid Build Coastguard Worker child_type: "dataproc.googleapis.com/Session" 104*d5c09012SAndroid Build Coastguard Worker } 105*d5c09012SAndroid Build Coastguard Worker ]; 106*d5c09012SAndroid Build Coastguard Worker 107*d5c09012SAndroid Build Coastguard Worker // Required. The interactive session to create. 108*d5c09012SAndroid Build Coastguard Worker Session session = 2 [(google.api.field_behavior) = REQUIRED]; 109*d5c09012SAndroid Build Coastguard Worker 110*d5c09012SAndroid Build Coastguard Worker // Required. The ID to use for the session, which becomes the final component 111*d5c09012SAndroid Build Coastguard Worker // of the session's resource name. 112*d5c09012SAndroid Build Coastguard Worker // 113*d5c09012SAndroid Build Coastguard Worker // This value must be 4-63 characters. Valid characters 114*d5c09012SAndroid Build Coastguard Worker // are /[a-z][0-9]-/. 115*d5c09012SAndroid Build Coastguard Worker string session_id = 3 [(google.api.field_behavior) = REQUIRED]; 116*d5c09012SAndroid Build Coastguard Worker 117*d5c09012SAndroid Build Coastguard Worker // Optional. A unique ID used to identify the request. If the service 118*d5c09012SAndroid Build Coastguard Worker // receives two 119*d5c09012SAndroid Build Coastguard Worker // [CreateSessionRequests](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.CreateSessionRequest)s 120*d5c09012SAndroid Build Coastguard Worker // with the same ID, the second request is ignored, and the 121*d5c09012SAndroid Build Coastguard Worker // first [Session][google.cloud.dataproc.v1.Session] is created and stored in 122*d5c09012SAndroid Build Coastguard Worker // the backend. 123*d5c09012SAndroid Build Coastguard Worker // 124*d5c09012SAndroid Build Coastguard Worker // Recommendation: Set this value to a 125*d5c09012SAndroid Build Coastguard Worker // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). 126*d5c09012SAndroid Build Coastguard Worker // 127*d5c09012SAndroid Build Coastguard Worker // The value must contain only letters (a-z, A-Z), numbers (0-9), 128*d5c09012SAndroid Build Coastguard Worker // underscores (_), and hyphens (-). The maximum length is 40 characters. 129*d5c09012SAndroid Build Coastguard Worker string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; 130*d5c09012SAndroid Build Coastguard Worker} 131*d5c09012SAndroid Build Coastguard Worker 132*d5c09012SAndroid Build Coastguard Worker// A request to get the resource representation for a session. 133*d5c09012SAndroid Build Coastguard Workermessage GetSessionRequest { 134*d5c09012SAndroid Build Coastguard Worker // Required. The name of the session to retrieve. 135*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 136*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 137*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 138*d5c09012SAndroid Build Coastguard Worker type: "dataproc.googleapis.com/Session" 139*d5c09012SAndroid Build Coastguard Worker } 140*d5c09012SAndroid Build Coastguard Worker ]; 141*d5c09012SAndroid Build Coastguard Worker} 142*d5c09012SAndroid Build Coastguard Worker 143*d5c09012SAndroid Build Coastguard Worker// A request to list sessions in a project. 144*d5c09012SAndroid Build Coastguard Workermessage ListSessionsRequest { 145*d5c09012SAndroid Build Coastguard Worker // Required. The parent, which owns this collection of sessions. 146*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 147*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 148*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 149*d5c09012SAndroid Build Coastguard Worker child_type: "dataproc.googleapis.com/Session" 150*d5c09012SAndroid Build Coastguard Worker } 151*d5c09012SAndroid Build Coastguard Worker ]; 152*d5c09012SAndroid Build Coastguard Worker 153*d5c09012SAndroid Build Coastguard Worker // Optional. The maximum number of sessions to return in each response. 154*d5c09012SAndroid Build Coastguard Worker // The service may return fewer than this value. 155*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; 156*d5c09012SAndroid Build Coastguard Worker 157*d5c09012SAndroid Build Coastguard Worker // Optional. A page token received from a previous `ListSessions` call. 158*d5c09012SAndroid Build Coastguard Worker // Provide this token to retrieve the subsequent page. 159*d5c09012SAndroid Build Coastguard Worker string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; 160*d5c09012SAndroid Build Coastguard Worker 161*d5c09012SAndroid Build Coastguard Worker // Optional. A filter for the sessions to return in the response. 162*d5c09012SAndroid Build Coastguard Worker // 163*d5c09012SAndroid Build Coastguard Worker // A filter is a logical expression constraining the values of various fields 164*d5c09012SAndroid Build Coastguard Worker // in each session resource. Filters are case sensitive, and may contain 165*d5c09012SAndroid Build Coastguard Worker // multiple clauses combined with logical operators (AND, OR). 166*d5c09012SAndroid Build Coastguard Worker // Supported fields are `session_id`, `session_uuid`, `state`, and 167*d5c09012SAndroid Build Coastguard Worker // `create_time`. 168*d5c09012SAndroid Build Coastguard Worker // 169*d5c09012SAndroid Build Coastguard Worker // Example: `state = ACTIVE and create_time < "2023-01-01T00:00:00Z"` 170*d5c09012SAndroid Build Coastguard Worker // is a filter for sessions in an ACTIVE state that were created before 171*d5c09012SAndroid Build Coastguard Worker // 2023-01-01. 172*d5c09012SAndroid Build Coastguard Worker // 173*d5c09012SAndroid Build Coastguard Worker // See https://google.aip.dev/assets/misc/ebnf-filtering.txt for a detailed 174*d5c09012SAndroid Build Coastguard Worker // description of the filter syntax and a list of supported comparators. 175*d5c09012SAndroid Build Coastguard Worker string filter = 4 [(google.api.field_behavior) = OPTIONAL]; 176*d5c09012SAndroid Build Coastguard Worker} 177*d5c09012SAndroid Build Coastguard Worker 178*d5c09012SAndroid Build Coastguard Worker// A list of interactive sessions. 179*d5c09012SAndroid Build Coastguard Workermessage ListSessionsResponse { 180*d5c09012SAndroid Build Coastguard Worker // Output only. The sessions from the specified collection. 181*d5c09012SAndroid Build Coastguard Worker repeated Session sessions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 182*d5c09012SAndroid Build Coastguard Worker 183*d5c09012SAndroid Build Coastguard Worker // A token, which can be sent as `page_token`, to retrieve the next page. 184*d5c09012SAndroid Build Coastguard Worker // If this field is omitted, there are no subsequent pages. 185*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 186*d5c09012SAndroid Build Coastguard Worker} 187*d5c09012SAndroid Build Coastguard Worker 188*d5c09012SAndroid Build Coastguard Worker// A request to terminate an interactive session. 189*d5c09012SAndroid Build Coastguard Workermessage TerminateSessionRequest { 190*d5c09012SAndroid Build Coastguard Worker // Required. The name of the session resource to terminate. 191*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 192*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 193*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 194*d5c09012SAndroid Build Coastguard Worker type: "dataproc.googleapis.com/Session" 195*d5c09012SAndroid Build Coastguard Worker } 196*d5c09012SAndroid Build Coastguard Worker ]; 197*d5c09012SAndroid Build Coastguard Worker 198*d5c09012SAndroid Build Coastguard Worker // Optional. A unique ID used to identify the request. If the service 199*d5c09012SAndroid Build Coastguard Worker // receives two 200*d5c09012SAndroid Build Coastguard Worker // [TerminateSessionRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.TerminateSessionRequest)s 201*d5c09012SAndroid Build Coastguard Worker // with the same ID, the second request is ignored. 202*d5c09012SAndroid Build Coastguard Worker // 203*d5c09012SAndroid Build Coastguard Worker // Recommendation: Set this value to a 204*d5c09012SAndroid Build Coastguard Worker // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). 205*d5c09012SAndroid Build Coastguard Worker // 206*d5c09012SAndroid Build Coastguard Worker // The value must contain only letters (a-z, A-Z), numbers (0-9), 207*d5c09012SAndroid Build Coastguard Worker // underscores (_), and hyphens (-). The maximum length is 40 characters. 208*d5c09012SAndroid Build Coastguard Worker string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; 209*d5c09012SAndroid Build Coastguard Worker} 210*d5c09012SAndroid Build Coastguard Worker 211*d5c09012SAndroid Build Coastguard Worker// A request to delete a session. 212*d5c09012SAndroid Build Coastguard Workermessage DeleteSessionRequest { 213*d5c09012SAndroid Build Coastguard Worker // Required. The name of the session resource to delete. 214*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 215*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 216*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 217*d5c09012SAndroid Build Coastguard Worker type: "dataproc.googleapis.com/Session" 218*d5c09012SAndroid Build Coastguard Worker } 219*d5c09012SAndroid Build Coastguard Worker ]; 220*d5c09012SAndroid Build Coastguard Worker 221*d5c09012SAndroid Build Coastguard Worker // Optional. A unique ID used to identify the request. If the service 222*d5c09012SAndroid Build Coastguard Worker // receives two 223*d5c09012SAndroid Build Coastguard Worker // [DeleteSessionRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.DeleteSessionRequest)s 224*d5c09012SAndroid Build Coastguard Worker // with the same ID, the second request is ignored. 225*d5c09012SAndroid Build Coastguard Worker // 226*d5c09012SAndroid Build Coastguard Worker // Recommendation: Set this value to a 227*d5c09012SAndroid Build Coastguard Worker // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). 228*d5c09012SAndroid Build Coastguard Worker // 229*d5c09012SAndroid Build Coastguard Worker // The value must contain only letters (a-z, A-Z), numbers (0-9), 230*d5c09012SAndroid Build Coastguard Worker // underscores (_), and hyphens (-). The maximum length is 40 characters. 231*d5c09012SAndroid Build Coastguard Worker string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; 232*d5c09012SAndroid Build Coastguard Worker} 233*d5c09012SAndroid Build Coastguard Worker 234*d5c09012SAndroid Build Coastguard Worker// A representation of a session. 235*d5c09012SAndroid Build Coastguard Workermessage Session { 236*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 237*d5c09012SAndroid Build Coastguard Worker type: "dataproc.googleapis.com/Session" 238*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/sessions/{session}" 239*d5c09012SAndroid Build Coastguard Worker }; 240*d5c09012SAndroid Build Coastguard Worker 241*d5c09012SAndroid Build Coastguard Worker // The session state. 242*d5c09012SAndroid Build Coastguard Worker enum State { 243*d5c09012SAndroid Build Coastguard Worker // The session state is unknown. 244*d5c09012SAndroid Build Coastguard Worker STATE_UNSPECIFIED = 0; 245*d5c09012SAndroid Build Coastguard Worker 246*d5c09012SAndroid Build Coastguard Worker // The session is created prior to running. 247*d5c09012SAndroid Build Coastguard Worker CREATING = 1; 248*d5c09012SAndroid Build Coastguard Worker 249*d5c09012SAndroid Build Coastguard Worker // The session is running. 250*d5c09012SAndroid Build Coastguard Worker ACTIVE = 2; 251*d5c09012SAndroid Build Coastguard Worker 252*d5c09012SAndroid Build Coastguard Worker // The session is terminating. 253*d5c09012SAndroid Build Coastguard Worker TERMINATING = 3; 254*d5c09012SAndroid Build Coastguard Worker 255*d5c09012SAndroid Build Coastguard Worker // The session is terminated successfully. 256*d5c09012SAndroid Build Coastguard Worker TERMINATED = 4; 257*d5c09012SAndroid Build Coastguard Worker 258*d5c09012SAndroid Build Coastguard Worker // The session is no longer running due to an error. 259*d5c09012SAndroid Build Coastguard Worker FAILED = 5; 260*d5c09012SAndroid Build Coastguard Worker } 261*d5c09012SAndroid Build Coastguard Worker 262*d5c09012SAndroid Build Coastguard Worker // Historical state information. 263*d5c09012SAndroid Build Coastguard Worker message SessionStateHistory { 264*d5c09012SAndroid Build Coastguard Worker // Output only. The state of the session at this point in the session 265*d5c09012SAndroid Build Coastguard Worker // history. 266*d5c09012SAndroid Build Coastguard Worker State state = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 267*d5c09012SAndroid Build Coastguard Worker 268*d5c09012SAndroid Build Coastguard Worker // Output only. Details about the state at this point in the session 269*d5c09012SAndroid Build Coastguard Worker // history. 270*d5c09012SAndroid Build Coastguard Worker string state_message = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 271*d5c09012SAndroid Build Coastguard Worker 272*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the session entered the historical state. 273*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp state_start_time = 3 274*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 275*d5c09012SAndroid Build Coastguard Worker } 276*d5c09012SAndroid Build Coastguard Worker 277*d5c09012SAndroid Build Coastguard Worker // Required. The resource name of the session. 278*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = REQUIRED]; 279*d5c09012SAndroid Build Coastguard Worker 280*d5c09012SAndroid Build Coastguard Worker // Output only. A session UUID (Unique Universal Identifier). The service 281*d5c09012SAndroid Build Coastguard Worker // generates this value when it creates the session. 282*d5c09012SAndroid Build Coastguard Worker string uuid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 283*d5c09012SAndroid Build Coastguard Worker 284*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the session was created. 285*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 3 286*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 287*d5c09012SAndroid Build Coastguard Worker 288*d5c09012SAndroid Build Coastguard Worker // The session configuration. 289*d5c09012SAndroid Build Coastguard Worker oneof session_config { 290*d5c09012SAndroid Build Coastguard Worker // Optional. Jupyter session config. 291*d5c09012SAndroid Build Coastguard Worker JupyterConfig jupyter_session = 4 [(google.api.field_behavior) = OPTIONAL]; 292*d5c09012SAndroid Build Coastguard Worker } 293*d5c09012SAndroid Build Coastguard Worker 294*d5c09012SAndroid Build Coastguard Worker // Output only. Runtime information about session execution. 295*d5c09012SAndroid Build Coastguard Worker RuntimeInfo runtime_info = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 296*d5c09012SAndroid Build Coastguard Worker 297*d5c09012SAndroid Build Coastguard Worker // Output only. A state of the session. 298*d5c09012SAndroid Build Coastguard Worker State state = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; 299*d5c09012SAndroid Build Coastguard Worker 300*d5c09012SAndroid Build Coastguard Worker // Output only. Session state details, such as the failure 301*d5c09012SAndroid Build Coastguard Worker // description if the state is `FAILED`. 302*d5c09012SAndroid Build Coastguard Worker string state_message = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; 303*d5c09012SAndroid Build Coastguard Worker 304*d5c09012SAndroid Build Coastguard Worker // Output only. The time when the session entered the current state. 305*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp state_time = 9 306*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 307*d5c09012SAndroid Build Coastguard Worker 308*d5c09012SAndroid Build Coastguard Worker // Output only. The email address of the user who created the session. 309*d5c09012SAndroid Build Coastguard Worker string creator = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; 310*d5c09012SAndroid Build Coastguard Worker 311*d5c09012SAndroid Build Coastguard Worker // Optional. The labels to associate with the session. 312*d5c09012SAndroid Build Coastguard Worker // Label **keys** must contain 1 to 63 characters, and must conform to 313*d5c09012SAndroid Build Coastguard Worker // [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). 314*d5c09012SAndroid Build Coastguard Worker // Label **values** may be empty, but, if present, must contain 1 to 63 315*d5c09012SAndroid Build Coastguard Worker // characters, and must conform to [RFC 316*d5c09012SAndroid Build Coastguard Worker // 1035](https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be 317*d5c09012SAndroid Build Coastguard Worker // associated with a session. 318*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 11 [(google.api.field_behavior) = OPTIONAL]; 319*d5c09012SAndroid Build Coastguard Worker 320*d5c09012SAndroid Build Coastguard Worker // Optional. Runtime configuration for the session execution. 321*d5c09012SAndroid Build Coastguard Worker RuntimeConfig runtime_config = 12 [(google.api.field_behavior) = OPTIONAL]; 322*d5c09012SAndroid Build Coastguard Worker 323*d5c09012SAndroid Build Coastguard Worker // Optional. Environment configuration for the session execution. 324*d5c09012SAndroid Build Coastguard Worker EnvironmentConfig environment_config = 13 325*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 326*d5c09012SAndroid Build Coastguard Worker 327*d5c09012SAndroid Build Coastguard Worker // Optional. The email address of the user who owns the session. 328*d5c09012SAndroid Build Coastguard Worker string user = 14 [(google.api.field_behavior) = OPTIONAL]; 329*d5c09012SAndroid Build Coastguard Worker 330*d5c09012SAndroid Build Coastguard Worker // Output only. Historical state information for the session. 331*d5c09012SAndroid Build Coastguard Worker repeated SessionStateHistory state_history = 15 332*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 333*d5c09012SAndroid Build Coastguard Worker 334*d5c09012SAndroid Build Coastguard Worker // Optional. The session template used by the session. 335*d5c09012SAndroid Build Coastguard Worker // 336*d5c09012SAndroid Build Coastguard Worker // Only resource names, including project ID and location, are valid. 337*d5c09012SAndroid Build Coastguard Worker // 338*d5c09012SAndroid Build Coastguard Worker // Example: 339*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/compute/v1/projects/[project_id]/locations/[dataproc_region]/sessionTemplates/[template_id]` 340*d5c09012SAndroid Build Coastguard Worker // * `projects/[project_id]/locations/[dataproc_region]/sessionTemplates/[template_id]` 341*d5c09012SAndroid Build Coastguard Worker // 342*d5c09012SAndroid Build Coastguard Worker // The template must be in the same project and Dataproc region as the 343*d5c09012SAndroid Build Coastguard Worker // session. 344*d5c09012SAndroid Build Coastguard Worker string session_template = 16 [ 345*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL, 346*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 347*d5c09012SAndroid Build Coastguard Worker type: "dataproc.googleapis.com/SessionTemplate" 348*d5c09012SAndroid Build Coastguard Worker } 349*d5c09012SAndroid Build Coastguard Worker ]; 350*d5c09012SAndroid Build Coastguard Worker} 351*d5c09012SAndroid Build Coastguard Worker 352*d5c09012SAndroid Build Coastguard Worker// Jupyter configuration for an interactive session. 353*d5c09012SAndroid Build Coastguard Workermessage JupyterConfig { 354*d5c09012SAndroid Build Coastguard Worker // Jupyter kernel types. 355*d5c09012SAndroid Build Coastguard Worker enum Kernel { 356*d5c09012SAndroid Build Coastguard Worker // The kernel is unknown. 357*d5c09012SAndroid Build Coastguard Worker KERNEL_UNSPECIFIED = 0; 358*d5c09012SAndroid Build Coastguard Worker 359*d5c09012SAndroid Build Coastguard Worker // Python kernel. 360*d5c09012SAndroid Build Coastguard Worker PYTHON = 1; 361*d5c09012SAndroid Build Coastguard Worker 362*d5c09012SAndroid Build Coastguard Worker // Scala kernel. 363*d5c09012SAndroid Build Coastguard Worker SCALA = 2; 364*d5c09012SAndroid Build Coastguard Worker } 365*d5c09012SAndroid Build Coastguard Worker 366*d5c09012SAndroid Build Coastguard Worker // Optional. Kernel 367*d5c09012SAndroid Build Coastguard Worker Kernel kernel = 1 [(google.api.field_behavior) = OPTIONAL]; 368*d5c09012SAndroid Build Coastguard Worker 369*d5c09012SAndroid Build Coastguard Worker // Optional. Display name, shown in the Jupyter kernelspec card. 370*d5c09012SAndroid Build Coastguard Worker string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; 371*d5c09012SAndroid Build Coastguard Worker} 372