Categorygithub.com/GrosbergKirr/Server_hostname
module
0.0.0-20240628162502-0f5eb391a2f0
Repository: https://github.com/grosbergkirr/server_hostname.git
Documentation: pkg.go.dev

# README

Server

gRPC-GateWay Server

Usage

  1. proto:

  2. https://github.com/GrosbergKirr/proto_contracts

  3. CLI:

  4. https://github.com/GrosbergKirr/CLI

Данный gRPC-сервер имеет две ручки:

  1. Изменение имени хоста
  2. Изменение списка DNS-серверов

1. Эндпоинт для изменения имени хоста

service GatewayService{
  rpc ChangeHostName (HostRequest) returns (HostResponse){
    option (google.api.http) = {
      post: "/v1/changehost"
      body: "*"
    };
  }
}

message HostRequest{
  string NewHostName = 1;
  string Addr = 2;
  string Password = 3;
}

message HostResponse{
  string Result = 1;
}

1. Эндпоинт для изменения списка DNS-серверов

 rpc DNSChange (DNSRequest) returns (DNSResponse){
    option (google.api.http) = {
      post: "/v1/dnschange"
      body: "*"
    };
  }
}

message DNSRequest{
  string NewDNSName = 1;
  string Addr = 2;
  string Password = 3;
}

message DNSResponse{
  string Result = 1;
}

Также к данному серверу написан CLI-gRPC-клиент (Ссылка выше)

Помимо gRPC-запросов, сервер поддерживает REST-запросы (с помощью gRPC-GateWay)

Эндпоинты:

изменение имени хоста

/v1/changehost 

изменение списка DNS-серверов

/v1/dnschange

TODO:

  1. Собрать Docker
  2. Сделать Makefile
  3. Дописать http клиента
  4. Написать тесты
  5. Улучшить CLI

# Packages

No description provided by the author
No description provided by the author