Implement ExpireMachine rpc

This commit is contained in:
Kristoffer Dalby 2021-11-21 13:40:19 +00:00
parent f1c05f8010
commit bd1d1b1a3b
3 changed files with 64 additions and 0 deletions

View file

@ -201,6 +201,27 @@ func (api headscaleV1APIServer) DeleteMachine(
return &v1.DeleteMachineResponse{}, nil
}
func (api headscaleV1APIServer) ExpireMachine(
ctx context.Context,
request *v1.ExpireMachineRequest,
) (*v1.ExpireMachineResponse, error) {
machine, err := api.h.GetMachineByID(request.GetMachineId())
if err != nil {
return nil, err
}
api.h.ExpireMachine(
machine,
)
log.Trace().
Str("machine", machine.Name).
Time("expiry", *machine.Expiry).
Msg("machine expired")
return &v1.ExpireMachineResponse{Machine: machine.toProto()}, nil
}
func (api headscaleV1APIServer) ListMachines(
ctx context.Context,
request *v1.ListMachinesRequest,