mirror of
https://github.com/psviderski/uncloud.git
synced 2026-10-06 21:29:02 +00:00
This allows manual setting of the cluster's domain name. I use this to
make the local cluster admin aware that this has been done.
(and then manually update the external dns)
```
% uc dns set ctrl.u.science.ru.nl
Set cluster domain: ctrl.u.science.ru.nl
Deploy the Caddy reverse proxy service ('uc caddy deploy') to enable internet access to your services via the reserved or your custom domain.
% uc dns show
ctrl.u.science.ru.nl
% uc dns set ctrl.u.science.ru.nl
Error: domain already reserved
% uc dns release
Released cluster domain: ctrl.u.science.ru.nl
```
See: #37
Signed-off-by: Miek Gieben <miek@miek.nl>
89 lines
1.9 KiB
Protocol Buffer
89 lines
1.9 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package api;
|
|
|
|
option go_package = "github.com/psviderski/uncloud/api/pb";
|
|
|
|
import "google/protobuf/empty.proto";
|
|
import "api/pb/common.proto";
|
|
import "api/pb/machine.proto";
|
|
|
|
service Cluster {
|
|
rpc AddMachine(AddMachineRequest) returns (AddMachineResponse);
|
|
rpc ListMachines(google.protobuf.Empty) returns (ListMachinesResponse);
|
|
rpc RemoveMachine(RemoveMachineRequest) returns (google.protobuf.Empty);
|
|
|
|
rpc ReserveDomain(ReserveDomainRequest) returns (Domain);
|
|
rpc SetDomain(SetDomainRequest) returns (Domain);
|
|
rpc GetDomain(google.protobuf.Empty) returns (Domain);
|
|
rpc ReleaseDomain(google.protobuf.Empty) returns (Domain);
|
|
rpc CreateDomainRecords(CreateDomainRecordsRequest) returns (CreateDomainRecordsResponse);
|
|
}
|
|
|
|
message AddMachineRequest {
|
|
string name = 1;
|
|
NetworkConfig network = 2;
|
|
IP public_ip = 3;
|
|
}
|
|
|
|
message AddMachineResponse {
|
|
MachineInfo machine = 1;
|
|
}
|
|
|
|
message MachineMember {
|
|
MachineInfo machine = 1;
|
|
|
|
enum MembershipState {
|
|
UNKNOWN = 0;
|
|
// The member is active.
|
|
UP = 1;
|
|
// The member is active, but at least one cluster member suspects its down. For all purposes,
|
|
// a SUSPECT member is treated as if it were UP until either it refutes the suspicion (becoming UP)
|
|
// or fails to do so (being declared DOWN).
|
|
SUSPECT = 2;
|
|
// The member is confirmed DOWN.
|
|
DOWN = 3;
|
|
}
|
|
MembershipState state = 2;
|
|
}
|
|
|
|
message ListMachinesResponse {
|
|
repeated MachineMember machines = 1;
|
|
}
|
|
|
|
message RemoveMachineRequest {
|
|
string id = 1;
|
|
}
|
|
|
|
message Domain {
|
|
string name = 1;
|
|
}
|
|
|
|
message ReserveDomainRequest {
|
|
string endpoint = 1;
|
|
}
|
|
|
|
message SetDomainRequest {
|
|
string name = 1;
|
|
}
|
|
|
|
message CreateDomainRecordsRequest {
|
|
repeated DNSRecord records = 1;
|
|
}
|
|
|
|
message CreateDomainRecordsResponse {
|
|
repeated DNSRecord records = 1;
|
|
}
|
|
|
|
message DNSRecord {
|
|
string name = 1;
|
|
|
|
enum RecordType {
|
|
UNSPECIFIED = 0;
|
|
A = 1;
|
|
AAAA = 2;
|
|
}
|
|
RecordType type = 2;
|
|
repeated string values = 3;
|
|
}
|