diff --git a/components/gitpod-cli/cmd/tasks-stop.go b/components/gitpod-cli/cmd/tasks-stop.go
index e2200a94a31e65..bddde1a9823b0f 100644
--- a/components/gitpod-cli/cmd/tasks-stop.go
+++ b/components/gitpod-cli/cmd/tasks-stop.go
@@ -18,7 +18,8 @@ import (
)
var stopTaskCmdOpts struct {
- All bool
+ All bool
+ ForceSuccess bool
}
// stopTaskCmd represents the stop task command
@@ -113,7 +114,7 @@ var stopTaskCmd = &cobra.Command{
}
for _, terminalAlias := range terminalAliases {
- _, err = client.Terminal.Shutdown(ctx, &api.ShutdownTerminalRequest{Alias: terminalAlias})
+ _, err = client.Terminal.Shutdown(ctx, &api.ShutdownTerminalRequest{Alias: terminalAlias, ForceSuccess: stopTaskCmdOpts.ForceSuccess})
if err != nil {
return xerrors.Errorf("cannot stop task: %w", err)
}
@@ -126,4 +127,5 @@ func init() {
tasksCmd.AddCommand(stopTaskCmd)
stopTaskCmd.Flags().BoolVarP(&stopTaskCmdOpts.All, "all", "a", false, "stop all tasks")
+ stopTaskCmd.Flags().BoolVarP(&stopTaskCmdOpts.ForceSuccess, "force-success", "f", false, "force the task to exit with status code 0")
}
diff --git a/components/supervisor-api/go/terminal.pb.go b/components/supervisor-api/go/terminal.pb.go
index 36a9c6a41a2f3e..cd48f48ce74897 100644
--- a/components/supervisor-api/go/terminal.pb.go
+++ b/components/supervisor-api/go/terminal.pb.go
@@ -293,7 +293,8 @@ type ShutdownTerminalRequest struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
- Alias string `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"`
+ Alias string `protobuf:"bytes,1,opt,name=alias,proto3" json:"alias,omitempty"`
+ ForceSuccess bool `protobuf:"varint,2,opt,name=force_success,json=forceSuccess,proto3" json:"force_success,omitempty"`
}
func (x *ShutdownTerminalRequest) Reset() {
@@ -335,6 +336,13 @@ func (x *ShutdownTerminalRequest) GetAlias() string {
return ""
}
+func (x *ShutdownTerminalRequest) GetForceSuccess() bool {
+ if x != nil {
+ return x.ForceSuccess
+ }
+ return false
+}
+
type ShutdownTerminalResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
@@ -1244,169 +1252,171 @@ var file_terminal_proto_rawDesc = []byte{
0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x08, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x12,
0x23, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x72, 0x54,
- 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x2f, 0x0a, 0x17, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x54, 0x0a, 0x17, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e,
0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
- 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0x1a, 0x0a, 0x18, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77,
- 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x22, 0x81, 0x03, 0x0a, 0x08, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x12, 0x14,
- 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61,
- 0x6c, 0x69, 0x61, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18,
- 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x14,
- 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74,
- 0x69, 0x74, 0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
- 0x03, 0x52, 0x03, 0x70, 0x69, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61,
- 0x6c, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x64, 0x69, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x0e, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x64, 0x69, 0x72, 0x12,
- 0x27, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x64,
- 0x69, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
- 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x64, 0x69, 0x72, 0x12, 0x47, 0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f,
- 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e,
- 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69,
- 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45,
- 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63,
- 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76,
- 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x69, 0x74,
- 0x6c, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0b, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x53,
- 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
- 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
- 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x2a, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d,
- 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61,
- 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61,
- 0x73, 0x22, 0x16, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61,
- 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4b, 0x0a, 0x15, 0x4c, 0x69, 0x73,
- 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x32, 0x0a, 0x09, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x18,
- 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73,
- 0x6f, 0x72, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x09, 0x74, 0x65, 0x72,
- 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x22, 0x2d, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e,
- 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
- 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
- 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e,
- 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x12, 0x14, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00,
- 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x09, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x63,
- 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x08, 0x65, 0x78, 0x69,
- 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x42, 0x0a,
- 0x0c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72,
- 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x53, 0x6f,
- 0x75, 0x72, 0x63, 0x65, 0x52, 0x0b, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63,
- 0x65, 0x42, 0x08, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x22, 0x42, 0x0a, 0x14, 0x57,
- 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x64,
- 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x73, 0x74, 0x64, 0x69, 0x6e, 0x22,
- 0x3c, 0x0a, 0x15, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x79, 0x74, 0x65,
- 0x73, 0x5f, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x0c, 0x62, 0x79, 0x74, 0x65, 0x73, 0x57, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x22, 0x98, 0x01,
- 0x0a, 0x16, 0x53, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x7a,
- 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61,
- 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x16,
- 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
- 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x12, 0x2c,
- 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x73,
+ 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x73,
+ 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x66, 0x6f,
+ 0x72, 0x63, 0x65, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x1a, 0x0a, 0x18, 0x53, 0x68,
+ 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x81, 0x03, 0x0a, 0x08, 0x54, 0x65, 0x72, 0x6d, 0x69,
+ 0x6e, 0x61, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d,
+ 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d,
+ 0x61, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x64,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x70, 0x69, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x69,
+ 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x5f, 0x77, 0x6f, 0x72, 0x6b, 0x64, 0x69, 0x72, 0x18, 0x05,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x57, 0x6f, 0x72,
+ 0x6b, 0x64, 0x69, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f,
+ 0x77, 0x6f, 0x72, 0x6b, 0x64, 0x69, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63,
+ 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x64, 0x69, 0x72, 0x12, 0x47, 0x0a,
+ 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e,
+ 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x5f,
+ 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x73,
0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e,
- 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x42, 0x0a, 0x0a, 0x08,
- 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x19, 0x0a, 0x17, 0x53, 0x65, 0x74, 0x54,
- 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x22, 0x45, 0x0a, 0x17, 0x53, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e,
- 0x61, 0x6c, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14,
- 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61,
- 0x6c, 0x69, 0x61, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x1a, 0x0a, 0x18, 0x53, 0x65,
- 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe3, 0x01, 0x0a, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74,
- 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
- 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61,
- 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61,
- 0x73, 0x12, 0x53, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03,
- 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e,
+ 0x61, 0x6c, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0b, 0x74,
+ 0x69, 0x74, 0x6c, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6e,
+ 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
+ 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
+ 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x2a, 0x0a, 0x12, 0x47, 0x65,
+ 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0x16, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65,
+ 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x4b,
+ 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x09, 0x74, 0x65, 0x72, 0x6d, 0x69,
+ 0x6e, 0x61, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x73, 0x75, 0x70,
+ 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
+ 0x52, 0x09, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x22, 0x2d, 0x0a, 0x15, 0x4c,
+ 0x69, 0x73, 0x74, 0x65, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x22, 0xb3, 0x01, 0x0a, 0x16, 0x4c,
+ 0x69, 0x73, 0x74, 0x65, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1d, 0x0a, 0x09, 0x65,
+ 0x78, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00,
+ 0x52, 0x08, 0x65, 0x78, 0x69, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x05, 0x74, 0x69,
+ 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x74, 0x69, 0x74,
+ 0x6c, 0x65, 0x12, 0x42, 0x0a, 0x0c, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72,
+ 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x69,
+ 0x74, 0x6c, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0b, 0x74, 0x69, 0x74, 0x6c, 0x65,
+ 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x08, 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74,
+ 0x22, 0x42, 0x0a, 0x14, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61,
+ 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61,
+ 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x14,
+ 0x0a, 0x05, 0x73, 0x74, 0x64, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x73,
+ 0x74, 0x64, 0x69, 0x6e, 0x22, 0x3c, 0x0a, 0x15, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x72,
+ 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a,
+ 0x0d, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x62, 0x79, 0x74, 0x65, 0x73, 0x57, 0x72, 0x69, 0x74, 0x74,
+ 0x65, 0x6e, 0x22, 0x98, 0x01, 0x0a, 0x16, 0x53, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e,
+ 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a,
+ 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c,
+ 0x69, 0x61, 0x73, 0x12, 0x16, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x48, 0x00, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x05, 0x66,
+ 0x6f, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x05, 0x66, 0x6f,
+ 0x72, 0x63, 0x65, 0x12, 0x2c, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x18, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x54,
+ 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x04, 0x73, 0x69, 0x7a,
+ 0x65, 0x42, 0x0a, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x19, 0x0a,
+ 0x17, 0x53, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x45, 0x0a, 0x17, 0x53, 0x65, 0x74, 0x54,
+ 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74,
+ 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22,
+ 0x1a, 0x0a, 0x18, 0x53, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x69,
+ 0x74, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe3, 0x01, 0x0a, 0x20,
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x41, 0x6e,
0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x63,
- 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65,
- 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64,
- 0x1a, 0x3a, 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79,
- 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
- 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x23, 0x0a, 0x21,
- 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x41, 0x6e,
- 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
- 0x65, 0x2a, 0x2b, 0x0a, 0x13, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x69, 0x74,
- 0x6c, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x63,
- 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x61, 0x70, 0x69, 0x10, 0x01, 0x32, 0xb0,
- 0x07, 0x0a, 0x0f, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69,
- 0x63, 0x65, 0x12, 0x4b, 0x0a, 0x04, 0x4f, 0x70, 0x65, 0x6e, 0x12, 0x1f, 0x2e, 0x73, 0x75, 0x70,
- 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x54, 0x65, 0x72, 0x6d,
- 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x73, 0x75,
- 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x54, 0x65, 0x72,
- 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12,
- 0x7c, 0x0a, 0x08, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x12, 0x23, 0x2e, 0x73, 0x75,
- 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77,
+ 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x12, 0x53, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
+ 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76,
+ 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69,
+ 0x6e, 0x61, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x45, 0x6e, 0x74,
+ 0x72, 0x79, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x64,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x64, 0x1a, 0x3a, 0x0a, 0x0c, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64,
+ 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
+ 0x01, 0x22, 0x23, 0x0a, 0x21, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69,
+ 0x6e, 0x61, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0x2b, 0x0a, 0x13, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e,
+ 0x61, 0x6c, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0b, 0x0a,
+ 0x07, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x61, 0x70,
+ 0x69, 0x10, 0x01, 0x32, 0xb0, 0x07, 0x0a, 0x0f, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
+ 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x4b, 0x0a, 0x04, 0x4f, 0x70, 0x65, 0x6e, 0x12,
+ 0x1f, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x4f, 0x70, 0x65,
0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x24, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x53, 0x68,
+ 0x1a, 0x20, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x4f, 0x70,
+ 0x65, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x22, 0x00, 0x12, 0x7c, 0x0a, 0x08, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e,
+ 0x12, 0x23, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x53, 0x68,
0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x25, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1f, 0x12, 0x1d,
- 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x2f, 0x73, 0x68, 0x75,
- 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x2f, 0x7b, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x7d, 0x12, 0x5d, 0x0a,
- 0x03, 0x47, 0x65, 0x74, 0x12, 0x1e, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f,
- 0x72, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f,
- 0x72, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93,
- 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
- 0x2f, 0x67, 0x65, 0x74, 0x2f, 0x7b, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x7d, 0x12, 0x66, 0x0a, 0x04,
- 0x4c, 0x69, 0x73, 0x74, 0x12, 0x20, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f,
- 0x72, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x52,
- 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69,
- 0x73, 0x6f, 0x72, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
- 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x19, 0x82, 0xd3, 0xe4, 0x93, 0x02,
- 0x13, 0x12, 0x11, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x2f,
- 0x6c, 0x69, 0x73, 0x74, 0x12, 0x76, 0x0a, 0x06, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x12, 0x21,
- 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x4c, 0x69, 0x73, 0x74,
- 0x65, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x1a, 0x22, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x4c,
- 0x69, 0x73, 0x74, 0x65, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1d, 0x12, 0x1b, 0x2f,
- 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x2f, 0x6c, 0x69, 0x73, 0x74,
- 0x65, 0x6e, 0x2f, 0x7b, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x7d, 0x30, 0x01, 0x12, 0x70, 0x0a, 0x05,
- 0x57, 0x72, 0x69, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73,
- 0x6f, 0x72, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76,
- 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e,
- 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x22, 0x82, 0xd3, 0xe4, 0x93,
- 0x02, 0x1c, 0x22, 0x1a, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
- 0x2f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x2f, 0x7b, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x7d, 0x12, 0x54,
- 0x0a, 0x07, 0x53, 0x65, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x2e, 0x73, 0x75, 0x70, 0x65,
- 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e,
- 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e,
- 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x54, 0x65,
- 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65,
- 0x12, 0x23, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x53, 0x65,
- 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73,
+ 0x6f, 0x72, 0x2e, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69,
+ 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x25, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x1f, 0x12, 0x1d, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61,
+ 0x6c, 0x2f, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x2f, 0x7b, 0x61, 0x6c, 0x69, 0x61,
+ 0x73, 0x7d, 0x12, 0x5d, 0x0a, 0x03, 0x47, 0x65, 0x74, 0x12, 0x1e, 0x2e, 0x73, 0x75, 0x70, 0x65,
+ 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e,
+ 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x73, 0x75, 0x70, 0x65,
+ 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x22,
+ 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1a, 0x12, 0x18, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72,
+ 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x65, 0x74, 0x2f, 0x7b, 0x61, 0x6c, 0x69, 0x61, 0x73,
+ 0x7d, 0x12, 0x66, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x20, 0x2e, 0x73, 0x75, 0x70, 0x65,
+ 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69,
+ 0x6e, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x73, 0x75,
+ 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x65, 0x72,
+ 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x19,
+ 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x13, 0x12, 0x11, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72, 0x6d,
+ 0x69, 0x6e, 0x61, 0x6c, 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x12, 0x76, 0x0a, 0x06, 0x4c, 0x69, 0x73,
+ 0x74, 0x65, 0x6e, 0x12, 0x21, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69,
+ 0x73, 0x6f, 0x72, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e,
+ 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x23, 0x82, 0xd3, 0xe4, 0x93,
+ 0x02, 0x1d, 0x12, 0x1b, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
+ 0x2f, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x6e, 0x2f, 0x7b, 0x61, 0x6c, 0x69, 0x61, 0x73, 0x7d, 0x30,
+ 0x01, 0x12, 0x70, 0x0a, 0x05, 0x57, 0x72, 0x69, 0x74, 0x65, 0x12, 0x20, 0x2e, 0x73, 0x75, 0x70,
+ 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54, 0x65, 0x72,
+ 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x73,
+ 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x54,
+ 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x22, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x22, 0x1a, 0x2f, 0x76, 0x31, 0x2f, 0x74, 0x65, 0x72,
+ 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x2f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x2f, 0x7b, 0x61, 0x6c, 0x69,
+ 0x61, 0x73, 0x7d, 0x12, 0x54, 0x0a, 0x07, 0x53, 0x65, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22,
+ 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x54,
+ 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e,
+ 0x53, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x69, 0x7a, 0x65, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x08, 0x53, 0x65, 0x74,
+ 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x23, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73,
0x6f, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x54, 0x69,
- 0x74, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x72, 0x0a,
- 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x73, 0x12, 0x2c, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e,
- 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x41, 0x6e,
- 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x1a, 0x2d, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x55, 0x70,
- 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x41, 0x6e, 0x6e, 0x6f,
- 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
- 0x00, 0x42, 0x46, 0x0a, 0x18, 0x69, 0x6f, 0x2e, 0x67, 0x69, 0x74, 0x70, 0x6f, 0x64, 0x2e, 0x73,
- 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x61, 0x70, 0x69, 0x5a, 0x2a, 0x67,
- 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x69, 0x74, 0x70, 0x6f, 0x64,
- 0x2d, 0x69, 0x6f, 0x2f, 0x67, 0x69, 0x74, 0x70, 0x6f, 0x64, 0x2f, 0x73, 0x75, 0x70, 0x65, 0x72,
- 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x33,
+ 0x74, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x73, 0x75, 0x70,
+ 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x54, 0x65, 0x72, 0x6d, 0x69,
+ 0x6e, 0x61, 0x6c, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x00, 0x12, 0x72, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x6e, 0x6f,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2c, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76,
+ 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69,
+ 0x6e, 0x61, 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73,
+ 0x6f, 0x72, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61,
+ 0x6c, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x46, 0x0a, 0x18, 0x69, 0x6f, 0x2e, 0x67, 0x69, 0x74,
+ 0x70, 0x6f, 0x64, 0x2e, 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2e, 0x61,
+ 0x70, 0x69, 0x5a, 0x2a, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67,
+ 0x69, 0x74, 0x70, 0x6f, 0x64, 0x2d, 0x69, 0x6f, 0x2f, 0x67, 0x69, 0x74, 0x70, 0x6f, 0x64, 0x2f,
+ 0x73, 0x75, 0x70, 0x65, 0x72, 0x76, 0x69, 0x73, 0x6f, 0x72, 0x2f, 0x61, 0x70, 0x69, 0x62, 0x06,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
diff --git a/components/supervisor-api/go/terminal.pb.gw.go b/components/supervisor-api/go/terminal.pb.gw.go
index c38276e6160e2d..33b2d18d816428 100644
--- a/components/supervisor-api/go/terminal.pb.gw.go
+++ b/components/supervisor-api/go/terminal.pb.gw.go
@@ -1,4 +1,4 @@
-// Copyright (c) 2023 Gitpod GmbH. All rights reserved.
+// Copyright (c) 2024 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.
@@ -35,6 +35,10 @@ var _ = runtime.String
var _ = utilities.NewDoubleArray
var _ = metadata.Join
+var (
+ filter_TerminalService_Shutdown_0 = &utilities.DoubleArray{Encoding: map[string]int{"alias": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}}
+)
+
func request_TerminalService_Shutdown_0(ctx context.Context, marshaler runtime.Marshaler, client TerminalServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) {
var protoReq ShutdownTerminalRequest
var metadata runtime.ServerMetadata
@@ -56,6 +60,13 @@ func request_TerminalService_Shutdown_0(ctx context.Context, marshaler runtime.M
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "alias", err)
}
+ if err := req.ParseForm(); err != nil {
+ return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
+ }
+ if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_TerminalService_Shutdown_0); err != nil {
+ return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
+ }
+
msg, err := client.Shutdown(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD))
return msg, metadata, err
@@ -82,6 +93,13 @@ func local_request_TerminalService_Shutdown_0(ctx context.Context, marshaler run
return nil, metadata, status.Errorf(codes.InvalidArgument, "type mismatch, parameter: %s, error: %v", "alias", err)
}
+ if err := req.ParseForm(); err != nil {
+ return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
+ }
+ if err := runtime.PopulateQueryParameters(&protoReq, req.Form, filter_TerminalService_Shutdown_0); err != nil {
+ return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err)
+ }
+
msg, err := server.Shutdown(ctx, &protoReq)
return msg, metadata, err
diff --git a/components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/TerminalOuterClass.java b/components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/TerminalOuterClass.java
index 737354ec48171d..f185b22f687e2f 100644
--- a/components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/TerminalOuterClass.java
+++ b/components/supervisor-api/java/src/main/java/io/gitpod/supervisor/api/TerminalOuterClass.java
@@ -1,4 +1,4 @@
-// Copyright (c) 2023 Gitpod GmbH. All rights reserved.
+// Copyright (c) 2024 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.
@@ -3434,6 +3434,12 @@ public interface ShutdownTerminalRequestOrBuilder extends
*/
com.google.protobuf.ByteString
getAliasBytes();
+
+ /**
+ * bool force_success = 2;
+ * @return The forceSuccess.
+ */
+ boolean getForceSuccess();
}
/**
* Protobuf type {@code supervisor.ShutdownTerminalRequest}
@@ -3487,6 +3493,11 @@ private ShutdownTerminalRequest(
alias_ = s;
break;
}
+ case 16: {
+
+ forceSuccess_ = input.readBool();
+ break;
+ }
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
@@ -3559,6 +3570,17 @@ public java.lang.String getAlias() {
}
}
+ public static final int FORCE_SUCCESS_FIELD_NUMBER = 2;
+ private boolean forceSuccess_;
+ /**
+ * bool force_success = 2;
+ * @return The forceSuccess.
+ */
+ @java.lang.Override
+ public boolean getForceSuccess() {
+ return forceSuccess_;
+ }
+
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
@@ -3576,6 +3598,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output)
if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(alias_)) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 1, alias_);
}
+ if (forceSuccess_ != false) {
+ output.writeBool(2, forceSuccess_);
+ }
unknownFields.writeTo(output);
}
@@ -3588,6 +3613,10 @@ public int getSerializedSize() {
if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(alias_)) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, alias_);
}
+ if (forceSuccess_ != false) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeBoolSize(2, forceSuccess_);
+ }
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
@@ -3605,6 +3634,8 @@ public boolean equals(final java.lang.Object obj) {
if (!getAlias()
.equals(other.getAlias())) return false;
+ if (getForceSuccess()
+ != other.getForceSuccess()) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@@ -3618,6 +3649,9 @@ public int hashCode() {
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + ALIAS_FIELD_NUMBER;
hash = (53 * hash) + getAlias().hashCode();
+ hash = (37 * hash) + FORCE_SUCCESS_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
+ getForceSuccess());
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
@@ -3753,6 +3787,8 @@ public Builder clear() {
super.clear();
alias_ = "";
+ forceSuccess_ = false;
+
return this;
}
@@ -3780,6 +3816,7 @@ public io.gitpod.supervisor.api.TerminalOuterClass.ShutdownTerminalRequest build
public io.gitpod.supervisor.api.TerminalOuterClass.ShutdownTerminalRequest buildPartial() {
io.gitpod.supervisor.api.TerminalOuterClass.ShutdownTerminalRequest result = new io.gitpod.supervisor.api.TerminalOuterClass.ShutdownTerminalRequest(this);
result.alias_ = alias_;
+ result.forceSuccess_ = forceSuccess_;
onBuilt();
return result;
}
@@ -3832,6 +3869,9 @@ public Builder mergeFrom(io.gitpod.supervisor.api.TerminalOuterClass.ShutdownTer
alias_ = other.alias_;
onChanged();
}
+ if (other.getForceSuccess() != false) {
+ setForceSuccess(other.getForceSuccess());
+ }
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
@@ -3936,6 +3976,37 @@ public Builder setAliasBytes(
onChanged();
return this;
}
+
+ private boolean forceSuccess_ ;
+ /**
+ * bool force_success = 2;
+ * @return The forceSuccess.
+ */
+ @java.lang.Override
+ public boolean getForceSuccess() {
+ return forceSuccess_;
+ }
+ /**
+ * bool force_success = 2;
+ * @param value The forceSuccess to set.
+ * @return This builder for chaining.
+ */
+ public Builder setForceSuccess(boolean value) {
+
+ forceSuccess_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * bool force_success = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearForceSuccess() {
+
+ forceSuccess_ = false;
+ onChanged();
+ return this;
+ }
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
@@ -15224,64 +15295,65 @@ public io.gitpod.supervisor.api.TerminalOuterClass.UpdateTerminalAnnotationsResp
"try\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"U\n\024O" +
"penTerminalResponse\022&\n\010terminal\030\001 \001(\0132\024." +
"supervisor.Terminal\022\025\n\rstarter_token\030\002 \001" +
- "(\t\"(\n\027ShutdownTerminalRequest\022\r\n\005alias\030\001" +
- " \001(\t\"\032\n\030ShutdownTerminalResponse\"\237\002\n\010Ter" +
- "minal\022\r\n\005alias\030\001 \001(\t\022\017\n\007command\030\002 \003(\t\022\r\n" +
- "\005title\030\003 \001(\t\022\013\n\003pid\030\004 \001(\003\022\027\n\017initial_wor" +
- "kdir\030\005 \001(\t\022\027\n\017current_workdir\030\006 \001(\t\022:\n\013a" +
- "nnotations\030\007 \003(\0132%.supervisor.Terminal.A" +
- "nnotationsEntry\0225\n\014title_source\030\010 \001(\0162\037." +
- "supervisor.TerminalTitleSource\0322\n\020Annota" +
- "tionsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\002" +
- "8\001\"#\n\022GetTerminalRequest\022\r\n\005alias\030\001 \001(\t\"" +
- "\026\n\024ListTerminalsRequest\"@\n\025ListTerminals" +
- "Response\022\'\n\tterminals\030\001 \003(\0132\024.supervisor" +
- ".Terminal\"&\n\025ListenTerminalRequest\022\r\n\005al" +
- "ias\030\001 \001(\t\"\217\001\n\026ListenTerminalResponse\022\016\n\004" +
- "data\030\001 \001(\014H\000\022\023\n\texit_code\030\002 \001(\005H\000\022\017\n\005tit" +
- "le\030\003 \001(\tH\000\0225\n\014title_source\030\004 \001(\0162\037.super" +
- "visor.TerminalTitleSourceB\010\n\006output\"4\n\024W" +
- "riteTerminalRequest\022\r\n\005alias\030\001 \001(\t\022\r\n\005st" +
- "din\030\002 \001(\014\".\n\025WriteTerminalResponse\022\025\n\rby" +
- "tes_written\030\001 \001(\r\"}\n\026SetTerminalSizeRequ" +
- "est\022\r\n\005alias\030\001 \001(\t\022\017\n\005token\030\002 \001(\tH\000\022\017\n\005f" +
- "orce\030\003 \001(\010H\000\022&\n\004size\030\004 \001(\0132\030.supervisor." +
- "TerminalSizeB\n\n\010priority\"\031\n\027SetTerminalS" +
- "izeResponse\"7\n\027SetTerminalTitleRequest\022\r" +
- "\n\005alias\030\001 \001(\t\022\r\n\005title\030\002 \001(\t\"\032\n\030SetTermi" +
- "nalTitleResponse\"\276\001\n UpdateTerminalAnnot" +
- "ationsRequest\022\r\n\005alias\030\001 \001(\t\022J\n\007changed\030" +
- "\002 \003(\01329.supervisor.UpdateTerminalAnnotat" +
- "ionsRequest.ChangedEntry\022\017\n\007deleted\030\003 \003(" +
- "\t\032.\n\014ChangedEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030" +
- "\002 \001(\t:\0028\001\"#\n!UpdateTerminalAnnotationsRe" +
- "sponse*+\n\023TerminalTitleSource\022\013\n\007process" +
- "\020\000\022\007\n\003api\020\0012\260\007\n\017TerminalService\022K\n\004Open\022" +
- "\037.supervisor.OpenTerminalRequest\032 .super" +
- "visor.OpenTerminalResponse\"\000\022|\n\010Shutdown" +
- "\022#.supervisor.ShutdownTerminalRequest\032$." +
- "supervisor.ShutdownTerminalResponse\"%\202\323\344" +
- "\223\002\037\022\035/v1/terminal/shutdown/{alias}\022]\n\003Ge" +
- "t\022\036.supervisor.GetTerminalRequest\032\024.supe" +
- "rvisor.Terminal\" \202\323\344\223\002\032\022\030/v1/terminal/ge" +
- "t/{alias}\022f\n\004List\022 .supervisor.ListTermi" +
- "nalsRequest\032!.supervisor.ListTerminalsRe" +
- "sponse\"\031\202\323\344\223\002\023\022\021/v1/terminal/list\022v\n\006Lis" +
- "ten\022!.supervisor.ListenTerminalRequest\032\"" +
- ".supervisor.ListenTerminalResponse\"#\202\323\344\223" +
- "\002\035\022\033/v1/terminal/listen/{alias}0\001\022p\n\005Wri" +
- "te\022 .supervisor.WriteTerminalRequest\032!.s" +
- "upervisor.WriteTerminalResponse\"\"\202\323\344\223\002\034\"" +
- "\032/v1/terminal/write/{alias}\022T\n\007SetSize\022\"" +
- ".supervisor.SetTerminalSizeRequest\032#.sup" +
- "ervisor.SetTerminalSizeResponse\"\000\022W\n\010Set" +
- "Title\022#.supervisor.SetTerminalTitleReque" +
- "st\032$.supervisor.SetTerminalTitleResponse" +
- "\"\000\022r\n\021UpdateAnnotations\022,.supervisor.Upd" +
- "ateTerminalAnnotationsRequest\032-.supervis" +
- "or.UpdateTerminalAnnotationsResponse\"\000BF" +
- "\n\030io.gitpod.supervisor.apiZ*github.com/g" +
- "itpod-io/gitpod/supervisor/apib\006proto3"
+ "(\t\"?\n\027ShutdownTerminalRequest\022\r\n\005alias\030\001" +
+ " \001(\t\022\025\n\rforce_success\030\002 \001(\010\"\032\n\030ShutdownT" +
+ "erminalResponse\"\237\002\n\010Terminal\022\r\n\005alias\030\001 " +
+ "\001(\t\022\017\n\007command\030\002 \003(\t\022\r\n\005title\030\003 \001(\t\022\013\n\003p" +
+ "id\030\004 \001(\003\022\027\n\017initial_workdir\030\005 \001(\t\022\027\n\017cur" +
+ "rent_workdir\030\006 \001(\t\022:\n\013annotations\030\007 \003(\0132" +
+ "%.supervisor.Terminal.AnnotationsEntry\0225" +
+ "\n\014title_source\030\010 \001(\0162\037.supervisor.Termin" +
+ "alTitleSource\0322\n\020AnnotationsEntry\022\013\n\003key" +
+ "\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"#\n\022GetTerminal" +
+ "Request\022\r\n\005alias\030\001 \001(\t\"\026\n\024ListTerminalsR" +
+ "equest\"@\n\025ListTerminalsResponse\022\'\n\ttermi" +
+ "nals\030\001 \003(\0132\024.supervisor.Terminal\"&\n\025List" +
+ "enTerminalRequest\022\r\n\005alias\030\001 \001(\t\"\217\001\n\026Lis" +
+ "tenTerminalResponse\022\016\n\004data\030\001 \001(\014H\000\022\023\n\te" +
+ "xit_code\030\002 \001(\005H\000\022\017\n\005title\030\003 \001(\tH\000\0225\n\014tit" +
+ "le_source\030\004 \001(\0162\037.supervisor.TerminalTit" +
+ "leSourceB\010\n\006output\"4\n\024WriteTerminalReque" +
+ "st\022\r\n\005alias\030\001 \001(\t\022\r\n\005stdin\030\002 \001(\014\".\n\025Writ" +
+ "eTerminalResponse\022\025\n\rbytes_written\030\001 \001(\r" +
+ "\"}\n\026SetTerminalSizeRequest\022\r\n\005alias\030\001 \001(" +
+ "\t\022\017\n\005token\030\002 \001(\tH\000\022\017\n\005force\030\003 \001(\010H\000\022&\n\004s" +
+ "ize\030\004 \001(\0132\030.supervisor.TerminalSizeB\n\n\010p" +
+ "riority\"\031\n\027SetTerminalSizeResponse\"7\n\027Se" +
+ "tTerminalTitleRequest\022\r\n\005alias\030\001 \001(\t\022\r\n\005" +
+ "title\030\002 \001(\t\"\032\n\030SetTerminalTitleResponse\"" +
+ "\276\001\n UpdateTerminalAnnotationsRequest\022\r\n\005" +
+ "alias\030\001 \001(\t\022J\n\007changed\030\002 \003(\01329.superviso" +
+ "r.UpdateTerminalAnnotationsRequest.Chang" +
+ "edEntry\022\017\n\007deleted\030\003 \003(\t\032.\n\014ChangedEntry" +
+ "\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"#\n!Upda" +
+ "teTerminalAnnotationsResponse*+\n\023Termina" +
+ "lTitleSource\022\013\n\007process\020\000\022\007\n\003api\020\0012\260\007\n\017T" +
+ "erminalService\022K\n\004Open\022\037.supervisor.Open" +
+ "TerminalRequest\032 .supervisor.OpenTermina" +
+ "lResponse\"\000\022|\n\010Shutdown\022#.supervisor.Shu" +
+ "tdownTerminalRequest\032$.supervisor.Shutdo" +
+ "wnTerminalResponse\"%\202\323\344\223\002\037\022\035/v1/terminal" +
+ "/shutdown/{alias}\022]\n\003Get\022\036.supervisor.Ge" +
+ "tTerminalRequest\032\024.supervisor.Terminal\" " +
+ "\202\323\344\223\002\032\022\030/v1/terminal/get/{alias}\022f\n\004List" +
+ "\022 .supervisor.ListTerminalsRequest\032!.sup" +
+ "ervisor.ListTerminalsResponse\"\031\202\323\344\223\002\023\022\021/" +
+ "v1/terminal/list\022v\n\006Listen\022!.supervisor." +
+ "ListenTerminalRequest\032\".supervisor.Liste" +
+ "nTerminalResponse\"#\202\323\344\223\002\035\022\033/v1/terminal/" +
+ "listen/{alias}0\001\022p\n\005Write\022 .supervisor.W" +
+ "riteTerminalRequest\032!.supervisor.WriteTe" +
+ "rminalResponse\"\"\202\323\344\223\002\034\"\032/v1/terminal/wri" +
+ "te/{alias}\022T\n\007SetSize\022\".supervisor.SetTe" +
+ "rminalSizeRequest\032#.supervisor.SetTermin" +
+ "alSizeResponse\"\000\022W\n\010SetTitle\022#.superviso" +
+ "r.SetTerminalTitleRequest\032$.supervisor.S" +
+ "etTerminalTitleResponse\"\000\022r\n\021UpdateAnnot" +
+ "ations\022,.supervisor.UpdateTerminalAnnota" +
+ "tionsRequest\032-.supervisor.UpdateTerminal" +
+ "AnnotationsResponse\"\000BF\n\030io.gitpod.super" +
+ "visor.apiZ*github.com/gitpod-io/gitpod/s" +
+ "upervisor/apib\006proto3"
};
descriptor = com.google.protobuf.Descriptors.FileDescriptor
.internalBuildGeneratedFileFrom(descriptorData,
@@ -15323,7 +15395,7 @@ public io.gitpod.supervisor.api.TerminalOuterClass.UpdateTerminalAnnotationsResp
internal_static_supervisor_ShutdownTerminalRequest_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_supervisor_ShutdownTerminalRequest_descriptor,
- new java.lang.String[] { "Alias", });
+ new java.lang.String[] { "Alias", "ForceSuccess", });
internal_static_supervisor_ShutdownTerminalResponse_descriptor =
getDescriptor().getMessageTypes().get(4);
internal_static_supervisor_ShutdownTerminalResponse_fieldAccessorTable = new
diff --git a/components/supervisor-api/terminal.proto b/components/supervisor-api/terminal.proto
index 8457fbad9a621e..ca78dc4d445d55 100644
--- a/components/supervisor-api/terminal.proto
+++ b/components/supervisor-api/terminal.proto
@@ -88,6 +88,7 @@ message OpenTerminalResponse {
message ShutdownTerminalRequest {
string alias = 1;
+ bool force_success = 2;
}
message ShutdownTerminalResponse {}
diff --git a/components/supervisor/pkg/supervisor/tasks.go b/components/supervisor/pkg/supervisor/tasks.go
index 3d5f981e7bc637..d4bf95d7d0eff7 100644
--- a/components/supervisor/pkg/supervisor/tasks.go
+++ b/components/supervisor/pkg/supervisor/tasks.go
@@ -330,7 +330,11 @@ func (tm *tasksManager) Run(ctx context.Context, wg *sync.WaitGroup, successChan
taskLog.Info("task terminal has been closed. Waiting for watch() to finish...")
taskWatchWg.Wait()
taskLog.Info("watch() has finished, setting task state to closed")
- if state != nil {
+
+ if term.ForceSuccess {
+ // Simulate state.Success()
+ t.successChan <- taskSuccessful
+ } else if state != nil {
if state.Success() {
t.successChan <- taskSuccessful
} else {
diff --git a/components/supervisor/pkg/terminal/service.go b/components/supervisor/pkg/terminal/service.go
index dfa23a9380b78e..9b526c847d74ad 100644
--- a/components/supervisor/pkg/terminal/service.go
+++ b/components/supervisor/pkg/terminal/service.go
@@ -133,7 +133,7 @@ func (srv *MuxTerminalService) OpenWithOptions(ctx context.Context, req *api.Ope
// Close closes a terminal for the given alias.
func (srv *MuxTerminalService) Shutdown(ctx context.Context, req *api.ShutdownTerminalRequest) (*api.ShutdownTerminalResponse, error) {
- err := srv.Mux.CloseTerminal(ctx, req.Alias)
+ err := srv.Mux.CloseTerminal(ctx, req.Alias, req.ForceSuccess)
if err == ErrNotFound {
return nil, status.Error(codes.NotFound, err.Error())
}
diff --git a/components/supervisor/pkg/terminal/terminal.go b/components/supervisor/pkg/terminal/terminal.go
index 75afd2e2db419b..d64ce24afffb8e 100644
--- a/components/supervisor/pkg/terminal/terminal.go
+++ b/components/supervisor/pkg/terminal/terminal.go
@@ -83,7 +83,7 @@ func (m *Mux) Start(cmd *exec.Cmd, options TermOptions) (alias string, err error
go func() {
term.waitErr = cmd.Wait()
close(term.waitDone)
- _ = m.CloseTerminal(context.Background(), alias)
+ _ = m.CloseTerminal(context.Background(), alias, false)
}()
return alias, nil
@@ -117,11 +117,11 @@ func (m *Mux) Close(ctx context.Context) {
}
// CloseTerminal closes a terminal and ends the process that runs in it.
-func (m *Mux) CloseTerminal(ctx context.Context, alias string) error {
+func (m *Mux) CloseTerminal(ctx context.Context, alias string, forceSuccess bool) error {
m.mu.Lock()
defer m.mu.Unlock()
- return m.doClose(ctx, alias)
+ return m.doClose(ctx, alias, forceSuccess)
}
// doClose closes a terminal and ends the process that runs in it.
@@ -129,7 +129,7 @@ func (m *Mux) CloseTerminal(ctx context.Context, alias string) error {
// to stop. If it still runs after that time, it receives SIGKILL.
//
// Callers are expected to hold mu.
-func (m *Mux) doClose(ctx context.Context, alias string) error {
+func (m *Mux) doClose(ctx context.Context, alias string, forceSuccess bool) error {
term, ok := m.terms[alias]
if !ok {
return ErrNotFound
@@ -138,6 +138,10 @@ func (m *Mux) doClose(ctx context.Context, alias string) error {
log := log.WithField("alias", alias)
log.Info("closing terminal")
+ if forceSuccess {
+ term.ForceSuccess = true
+ }
+
err := term.Close(ctx)
if err != nil {
log.WithError(err).Warn("Error while closing pseudo-terminal")
@@ -315,6 +319,9 @@ type Term struct {
defaultTitle string
title string
+ // ForceSuccess overrides the process' exit code to 0
+ ForceSuccess bool
+
Stdout *multiWriter
waitErr error