syntax = "proto3";

package init;

option go_package = "github.com/edgelesssys/constellation/v2/bootstrapper/initproto";

service API {
  rpc Init(InitRequest) returns (InitResponse);
}

message InitRequest {
  // repeated string autoscaling_node_groups = 1; removed
  bytes master_secret = 2;
  string kms_uri = 3;
  string storage_uri = 4;
  string key_encryption_key_id = 5;
  bool use_existing_kek = 6;
  string cloud_service_account_uri = 7;
  string kubernetes_version = 8;
  repeated SSHUserKey ssh_user_keys = 9;
  bytes salt = 10;
  bytes helm_deployments = 11;
  repeated uint32 enforced_pcrs = 12;
  bool enforce_idkeydigest = 13;
  bool conformance_mode = 14;
}

message InitResponse {
    bytes kubeconfig = 1;
    bytes owner_id = 2;
    bytes cluster_id = 3;
}

message SSHUserKey {
  string username = 1;
  string public_key = 2;
}