Anton Kosyakov 9b3f8a2cc4 gp rebuild with isolated debug workspace
Co-authored-by: Pudong Zheng <tianshi8650@gmail.com>
2023-02-06 14:47:44 +01:00

62 lines
2.0 KiB
Protocol Buffer

// Copyright (c) 2020 Gitpod GmbH. All rights reserved.
// Licensed under the GNU Affero General Public License (AGPL).
// See License.AGPL.txt in the project root for license information.
syntax = "proto3";
package supervisor;
import "status.proto";
import "info.proto";
option go_package = "github.com/gitpod-io/gitpod/supervisor/api";
option java_package = "io.gitpod.supervisor.api";
// ControlService provides workspace-facing, misc control related services
service ControlService {
// ExposePort exposes a port
rpc ExposePort(ExposePortRequest) returns (ExposePortResponse) {}
// CreateSSHKeyPair Create a pair of SSH Keys and put them in ~/.ssh/authorized_keys, this will only be generated once in the entire workspace lifecycle
rpc CreateSSHKeyPair(CreateSSHKeyPairRequest) returns (CreateSSHKeyPairResponse) {}
// CreateDebugEnv creates a debug workspace envs
rpc CreateDebugEnv(CreateDebugEnvRequest) returns (CreateDebugEnvResponse) {}
}
message ExposePortRequest {
// local port
uint32 port = 1;
// external port if missing the the same as port
reserved 2;
}
message ExposePortResponse {}
message CreateSSHKeyPairRequest {}
message CreateSSHKeyPairResponse {
// Return privateKey for ws-proxy
string private_key = 1;
}
message CreateDebugEnvRequest {
// workspace_type indicates whether it is a regular or prebuild workspace
DebugWorkspaceType workspace_type = 1;
// content_source indicates where the workspace content came from
ContentSource content_source = 2;
// workspace_url is an URL for which the workspace is accessed.
string workspace_url = 3;
// JSON serialized tasks to run
string tasks = 4;
// checkout_location is the path where we initialized the workspace content
string checkout_location = 5;
// workspace_location is the location of the IDE workspace
string workspace_location = 6;
// logLevel to use in a debug workspace.
string logLevel = 7;
}
message CreateDebugEnvResponse {
repeated string envs = 1;
}