Skip to content

Commit

Permalink
Allow stdin input of cert for needs-renewal (#1157)
Browse files Browse the repository at this point in the history
  • Loading branch information
redrac authored May 7, 2024
1 parent f0aab19 commit 1f36d23
Showing 1 changed file with 21 additions and 10 deletions.
31 changes: 21 additions & 10 deletions command/ssh/needsRenewal.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,25 +77,36 @@ Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".`,
}

func needsRenewalAction(ctx *cli.Context) error {
if err := errs.NumberOfArguments(ctx, 1); err != nil {
return errs.NewExitError(err, 255)
if err := errs.MinMaxNumberOfArguments(ctx, 0, 1); err != nil {
return errs.NewExitError(errors.Wrap(err, "too many arguments"), 255)
}

var name string
switch ctx.NArg() {
case 0:
name = "-"
case 1:
name = ctx.Args().First()
default:
return errs.NewExitError(errors.Errorf("too many arguments"), 255)
}

var (
certFile = ctx.Args().First()
expiresIn = ctx.String("expires-in")
isVerbose = ctx.Bool("verbose")
)

_, err := os.Stat(certFile)
switch {
case os.IsNotExist(err):
return errs.NewExitError(err, 2)
case err != nil:
return errs.NewExitError(err, 255)
if name != "-" {
_, err := os.Stat(name)
switch {
case os.IsNotExist(err):
return errs.NewExitError(err, 2)
case err != nil:
return errs.NewExitError(err, 255)
}
}

b, err := utils.ReadFile(certFile)
b, err := utils.ReadFile(name)
if err != nil {
return errs.NewExitError(err, 255)
}
Expand Down

0 comments on commit 1f36d23

Please sign in to comment.