github.com/hernad/nomad@v1.6.112/drivers/docker/docklog/client.go (about) 1 // Copyright (c) HashiCorp, Inc. 2 // SPDX-License-Identifier: MPL-2.0 3 4 package docklog 5 6 import ( 7 "context" 8 9 "github.com/hernad/nomad/drivers/docker/docklog/proto" 10 ) 11 12 // dockerLoggerClient implements the dockerLogger interface for client side requests 13 type dockerLoggerClient struct { 14 client proto.DockerLoggerClient 15 } 16 17 // Start proxies the Start client side func to the protobuf interface 18 func (c *dockerLoggerClient) Start(opts *StartOpts) error { 19 req := &proto.StartRequest{ 20 Endpoint: opts.Endpoint, 21 ContainerId: opts.ContainerID, 22 StdoutFifo: opts.Stdout, 23 StderrFifo: opts.Stderr, 24 Tty: opts.TTY, 25 26 TlsCert: opts.TLSCert, 27 TlsKey: opts.TLSKey, 28 TlsCa: opts.TLSCA, 29 } 30 _, err := c.client.Start(context.Background(), req) 31 return err 32 } 33 34 // Stop proxies the Stop client side func to the protobuf interface 35 func (c *dockerLoggerClient) Stop() error { 36 req := &proto.StopRequest{} 37 _, err := c.client.Stop(context.Background(), req) 38 return err 39 }