blob: f449630a08e8ead36b63f263907209f46c09c145 [file] [log] [blame]
// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: BUSL-1.1
syntax = "proto3";
package stacksproto1;
option go_package = "github.com/hashicorp/terraform/internal/stacksplugin/stacksproto1";
// CommandRequest is used to request the execution of a specific command with
// provided flags. It is the raw args from the HCP Terraform command.
message CommandRequest {
repeated string args = 1;
uint32 dependencies_server = 2;
uint32 packages_server = 3;
uint32 stacks_server = 4;
}
// CommandResponse contains the result of the command execution, including any
// output or errors.
message CommandResponse {
oneof data {
int32 exitCode = 1;
bytes stdout = 2;
bytes stderr = 3;
}
}
// PluginService defines the gRPC service to handle available commands and
// their execution.
service CommandService {
// Execute runs a specific command with the provided flags and returns the result.
rpc Execute(CommandRequest) returns (stream CommandResponse) {}
}