Skip to content

Commit df7710f

Browse files
committed
remove lingering logrus usage
1 parent c2804d9 commit df7710f

File tree

6 files changed

+13
-21
lines changed

6 files changed

+13
-21
lines changed

go.mod

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ require (
1010
github.com/markdingo/netstring v1.0.2
1111
github.com/mikesmitty/edkey v0.0.0-20170222072505-3356ea4e686a
1212
github.com/sigstore/rekor v1.4.2
13-
github.com/sirupsen/logrus v1.9.3
1413
github.com/stretchr/testify v1.11.1
1514
golang.org/x/crypto v0.43.0
1615
gotest.tools v2.2.0+incompatible

go.sum

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@ github.com/cbroglie/mustache v1.4.0 h1:Azg0dVhxTml5me+7PsZ7WPrQq1Gkf3WApcHMjMprY
1212
github.com/cbroglie/mustache v1.4.0/go.mod h1:SS1FTIghy0sjse4DUVGV1k/40B1qE1XkD9DtDsHo9iM=
1313
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
1414
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
15-
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
16-
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
1715
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
1816
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
1917
github.com/go-chi/chi/v5 v5.2.3 h1:WQIt9uxdsAbgIYgid+BpYc+liqQZGMHRaUwp0JUcvdE=
@@ -46,7 +44,6 @@ github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8
4644
github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
4745
github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=
4846
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
49-
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
5047
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
5148
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
5249
github.com/prometheus/client_golang v1.23.0 h1:ust4zpdl9r4trLY/gSjlm07PuiBq2ynaXXlptpfy8Uc=
@@ -65,10 +62,6 @@ github.com/sigstore/rekor v1.4.2 h1:Lx2xby7loviFYdg2C9pB1mESk2QU/LqcYSGsqqZwmg8=
6562
github.com/sigstore/rekor v1.4.2/go.mod h1:nX/OYaLqpTeCOuMEt7ELE0+5cVjZWFnFKM+cZ+3hQRA=
6663
github.com/sigstore/sigstore v1.9.5 h1:Wm1LT9yF4LhQdEMy5A2JeGRHTrAWGjT3ubE5JUSrGVU=
6764
github.com/sigstore/sigstore v1.9.5/go.mod h1:VtxgvGqCmEZN9X2zhFSOkfXxvKUjpy8RpUW39oCtoII=
68-
github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
69-
github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
70-
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
71-
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
7265
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
7366
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
7467
github.com/titanous/rocacheck v0.0.0-20171023193734-afe73141d399 h1:e/5i7d4oYZ+C1wj2THlRK+oAhjeS/TRQwMfkIuet3w0=
@@ -79,7 +72,6 @@ golang.org/x/mod v0.28.0 h1:gQBtGhjxykdjY9YhZpSlZIsbnaE2+PgjfLWUQTnoZ1U=
7972
golang.org/x/mod v0.28.0/go.mod h1:yfB/L0NOf/kmEbXjzCPOx1iK1fRutOydrCMsqRhEBxI=
8073
golang.org/x/net v0.46.0 h1:giFlY12I07fugqwPuWJi68oOnpfqFnJIJzaIIm2JVV4=
8174
golang.org/x/net v0.46.0/go.mod h1:Q9BGdFy1y4nkUwiLvT5qtyhAnEHgnQ/zd8PfU6nc210=
82-
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
8375
golang.org/x/sys v0.37.0 h1:fdNQudmxPjkdUTPnLn5mdQv7Zwvbvpaxqs831goi9kQ=
8476
golang.org/x/sys v0.37.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
8577
golang.org/x/term v0.36.0 h1:zMPR+aF8gfksFprF/Nc/rd1wRS1EI6nDBGyWAvDzx2Q=
@@ -96,7 +88,6 @@ google.golang.org/protobuf v1.36.10 h1:AYd7cD/uASjIL6Q9LiTjz8JLcrh/88q5UObnmY3aO
9688
google.golang.org/protobuf v1.36.10/go.mod h1:HTf+CrKn2C3g5S8VImy6tdcUvCska2kB7j23XfzDpco=
9789
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
9890
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
99-
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
10091
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
10192
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
10293
gotest.tools v2.2.0+incompatible h1:VsBPFP1AI068pPrMxtb/S8Zkgf9xEmTLJjfM+P5UIEo=

pkg/agent/agent.go

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ import (
55
"errors"
66
"fmt"
77
"io"
8+
"log/slog"
89
"net"
910
"os"
1011
"sync"
1112

1213
"github.com/epithet-ssh/epithet/pkg/caclient"
1314
"github.com/epithet-ssh/epithet/pkg/sshcert"
14-
log "github.com/sirupsen/logrus"
1515
"golang.org/x/crypto/ssh"
1616
"golang.org/x/crypto/ssh/agent"
1717
)
@@ -24,12 +24,13 @@ var errAgentStopped = errors.New("agent has been stopped")
2424
// has internal synchronization and can be safely accessed from multiple goroutines.
2525
// The done channel and closeOnce provide safe shutdown coordination.
2626
//
27-
// Immutable after creation: agentSocketPath, publicKey, privateKey, caClient
27+
// Immutable after creation: agentSocketPath, publicKey, privateKey, caClient, log
2828
// Protected by internal sync: keyring (uses its own locking)
2929
// Protected by closeOnce: agentListener, done channel
3030
type Agent struct {
3131
keyring agent.Agent // Thread-safe (has internal locking)
3232
caClient *caclient.Client
33+
log *slog.Logger // Immutable after New()
3334

3435
agentSocketPath string // Immutable after New()
3536
agentListener net.Listener
@@ -43,7 +44,7 @@ type Agent struct {
4344

4445
// New creates a new SSH agent. This does not start listening - call Serve() to begin accepting connections.
4546
// If agentSocketPath is empty, a temporary socket will be created when Serve() is called.
46-
func New(caClient *caclient.Client, agentSocketPath string) (*Agent, error) {
47+
func New(logger *slog.Logger, caClient *caclient.Client, agentSocketPath string) (*Agent, error) {
4748
pub, priv, err := sshcert.GenerateKeys()
4849
if err != nil {
4950
return nil, err
@@ -53,6 +54,7 @@ func New(caClient *caclient.Client, agentSocketPath string) (*Agent, error) {
5354
agentSocketPath: agentSocketPath,
5455
keyring: agent.NewKeyring(),
5556
caClient: caClient,
57+
log: logger,
5658
publicKey: pub,
5759
privateKey: priv,
5860
done: make(chan struct{}),
@@ -88,7 +90,7 @@ func (a *Agent) UseCredential(c Credential) error {
8890
return errAgentStopped
8991
}
9092

91-
log.Debug("replacing credentials")
93+
a.log.Debug("replacing credentials")
9294
oldKeys, err := a.keyring.List()
9395
if err != nil {
9496
a.Close()
@@ -174,7 +176,7 @@ func (a *Agent) serve(ctx context.Context) {
174176
case <-ctx.Done():
175177
return
176178
default:
177-
log.Warnf("error on accept from SSH_AUTH_SOCK listener: %v", err)
179+
a.log.Warn("error on accept from SSH_AUTH_SOCK listener", "error", err)
178180
continue
179181
}
180182
}
@@ -185,10 +187,10 @@ func (a *Agent) serve(ctx context.Context) {
185187
func (a *Agent) serveAgent(conn net.Conn) {
186188
defer conn.Close()
187189

188-
log.Debug("new connection to agent")
190+
a.log.Debug("new connection to agent")
189191
err := agent.ServeAgent(a.keyring, conn)
190192
if err != nil && err != io.EOF {
191-
log.Warnf("error from ssh-agent: %v", err)
193+
a.log.Warn("error from ssh-agent", "error", err)
192194
}
193195
}
194196

pkg/agent/agent_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import (
55
"crypto/rand"
66
"encoding/binary"
77
"errors"
8+
"log/slog"
89
"os"
910
"testing"
1011
"time"
@@ -32,7 +33,7 @@ func TestBasics(t *testing.T) {
3233
ctx, cancel := context.WithCancel(t.Context())
3334
defer cancel()
3435

35-
a, err := agent.New(nil, "")
36+
a, err := agent.New(slog.Default(), nil, "")
3637
require.NoError(t, err)
3738

3839
// Serve in background

pkg/broker/broker.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -333,7 +333,7 @@ func (b *Broker) ensureAgent(connectionHash policy.ConnectionHash, credential ag
333333

334334
// Create the agent (Note: agent.New expects *caclient.Client, but we don't need it for UseCredential)
335335
// We pass nil because we're manually managing certificates via UseCredential
336-
ag, err := agent.New(nil, socketPath)
336+
ag, err := agent.New(&b.log, nil, socketPath)
337337
if err != nil {
338338
return fmt.Errorf("failed to create agent: %w", err)
339339
}

pkg/ca/ca_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import (
1010

1111
"github.com/epithet-ssh/epithet/pkg/ca"
1212
"github.com/epithet-ssh/epithet/pkg/sshcert"
13-
"github.com/sirupsen/logrus"
1413
"github.com/stretchr/testify/require"
1514
"golang.org/x/crypto/ssh"
1615
)
@@ -101,7 +100,7 @@ func TestCA_GetPublicKey(t *testing.T) {
101100
c, err := ca.New(caPrivKey, "")
102101
require.NoError(t, err)
103102

104-
logrus.Infof("%s", c.PublicKey())
103+
t.Logf("%s", c.PublicKey())
105104

106105
require.True(t, strings.HasPrefix(string(c.PublicKey()), "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNH7"))
107106
}

0 commit comments

Comments
 (0)