82 lines
1.5 KiB
Protocol Buffer
82 lines
1.5 KiB
Protocol Buffer
syntax = "proto3";
|
|
package kratos.api;
|
|
|
|
option go_package = "kra/internal/conf;conf";
|
|
|
|
import "google/protobuf/duration.proto";
|
|
|
|
message Bootstrap {
|
|
Server server = 1;
|
|
Data data = 2;
|
|
AdminBackend admin = 3;
|
|
}
|
|
|
|
message Server {
|
|
message HTTP {
|
|
string network = 1;
|
|
string addr = 2;
|
|
google.protobuf.Duration timeout = 3;
|
|
}
|
|
message GRPC {
|
|
string network = 1;
|
|
string addr = 2;
|
|
google.protobuf.Duration timeout = 3;
|
|
}
|
|
HTTP http = 1;
|
|
GRPC grpc = 2;
|
|
}
|
|
|
|
message Data {
|
|
message Database {
|
|
string driver = 1;
|
|
string source = 2;
|
|
}
|
|
message Redis {
|
|
string network = 1;
|
|
string addr = 2;
|
|
google.protobuf.Duration read_timeout = 3;
|
|
google.protobuf.Duration write_timeout = 4;
|
|
}
|
|
Database database = 1;
|
|
Redis redis = 2;
|
|
}
|
|
|
|
// AdminBackend contains settings for the administration HTTP transport.
|
|
message AdminBackend {
|
|
string router_prefix = 1;
|
|
JWT jwt = 2;
|
|
Captcha captcha = 3;
|
|
Local local = 4;
|
|
Email email = 5;
|
|
|
|
message JWT {
|
|
string signing_key = 1;
|
|
google.protobuf.Duration expires_time = 2;
|
|
google.protobuf.Duration buffer_time = 3;
|
|
string issuer = 4;
|
|
}
|
|
|
|
message Captcha {
|
|
int32 key_long = 1;
|
|
int32 img_width = 2;
|
|
int32 img_height = 3;
|
|
google.protobuf.Duration store_expiration = 4;
|
|
}
|
|
|
|
message Local {
|
|
string store_path = 1;
|
|
string path_prefix = 2;
|
|
}
|
|
|
|
message Email {
|
|
string to = 1;
|
|
string from = 2;
|
|
string host = 3;
|
|
string secret = 4;
|
|
string nickname = 5;
|
|
int32 port = 6;
|
|
bool is_ssl = 7;
|
|
bool is_login_auth = 8;
|
|
}
|
|
}
|