Skip to content

Commit

Permalink
ability to provide secret to agent and generate token
Browse files Browse the repository at this point in the history
  • Loading branch information
bradrydzewski committed May 24, 2016
1 parent 771a6b7 commit 5b1748a
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 3 deletions.
19 changes: 17 additions & 2 deletions drone/agent/agent.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"time"

"github.com/drone/drone/client"
"github.com/drone/drone/shared/token"
"github.com/samalba/dockerclient"

"github.com/Sirupsen/logrus"
Expand Down Expand Up @@ -69,6 +70,11 @@ var AgentCmd = cli.Command{
Name: "drone-token",
Usage: "drone authorization token",
},
cli.StringFlag{
EnvVar: "DRONE_SECRET,DRONE_AGENT_SECRET",
Name: "drone-secret",
Usage: "drone agent secret",
},
cli.DurationFlag{
EnvVar: "DRONE_BACKOFF",
Name: "backoff",
Expand Down Expand Up @@ -133,14 +139,23 @@ func start(c *cli.Context) {
} else {
logrus.SetLevel(logrus.WarnLevel)
}

var accessToken string
if c.String("drone-secret") != "" {
secretToken := c.String("drone-secret")
accessToken, _ = token.New(token.AgentToken, "").Sign(secretToken)
} else {
accessToken = c.String("drone-token")
}

logrus.Infof("Connecting to %s with token %s",
c.String("drone-server"),
c.String("drone-token"),
accessToken,
)

client := client.NewClientToken(
c.String("drone-server"),
c.String("drone-token"),
accessToken,
)

tls, err := dockerclient.TLSConfigFromCertPath(c.String("docker-cert-path"))
Expand Down
2 changes: 1 addition & 1 deletion drone/server.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ var serverCmd = cli.Command{
Value: time.Minute * 15,
},
cli.StringFlag{
EnvVar: "DRONE_AGENT_SECRET",
EnvVar: "DRONE_AGENT_SECRET,DRONE_SECRET",
Name: "agent-secret",
Usage: "agent secret passcode",
},
Expand Down

0 comments on commit 5b1748a

Please sign in to comment.