// Copyright 2024 Kata Contributors
//
// SPDX-License-Identifier: Apache-2.0
//

syntax = "proto3";

package hypervisor;

service Hypervisor {
	rpc CreateVM(CreateVMRequest) returns (CreateVMResponse) {}
	rpc StartVM(StartVMRequest) returns (StartVMResponse) {}
	rpc StopVM(StopVMRequest) returns (StopVMResponse) {}
	rpc Version(VersionRequest) returns (VersionResponse) {}
}

message VersionRequest {
	string version = 1;
}

message VersionResponse {
	string version = 1;
}

message CreateVMRequest {
	string id = 1;
	map<string, string> annotations = 2;
	string networkNamespacePath = 3;
}

message CreateVMResponse {
	string agentSocketPath = 1;
}

message StartVMRequest {
	string id = 1;
}

message StartVMResponse {
}

message StopVMRequest {
	string id = 1;
}

message StopVMResponse {
}
