44 lines
1.0 KiB
Go
44 lines
1.0 KiB
Go
package flag
|
|
|
|
import (
|
|
"github.com/lestrrat-go/jwx/v2/jwa"
|
|
"github.com/urfave/cli/v2"
|
|
)
|
|
|
|
const PrivateKeyFlagName = "private-key"
|
|
|
|
var PrivateKey = &cli.StringFlag{
|
|
Name: PrivateKeyFlagName,
|
|
EnvVars: []string{"STORAGE_SERVER_PRIVATE_KEY"},
|
|
Value: "storage-server.key",
|
|
TakesFile: true,
|
|
}
|
|
|
|
func GetPrivateKey(ctx *cli.Context) string {
|
|
return ctx.String(PrivateKeyFlagName)
|
|
}
|
|
|
|
const SigningAlgorithmFlagName = "signing-algorithm"
|
|
|
|
var PrivateKeySigningAlgorithm = &cli.StringFlag{
|
|
Name: SigningAlgorithmFlagName,
|
|
EnvVars: []string{"STORAGE_SERVER_SIGNING_ALGORITHM"},
|
|
Value: jwa.RS256.String(),
|
|
}
|
|
|
|
func GetSigningAlgorithm(ctx *cli.Context) string {
|
|
return ctx.String(SigningAlgorithmFlagName)
|
|
}
|
|
|
|
const PrivateKeyDefaultSizeFlagName = "private-key-default-size"
|
|
|
|
var PrivateKeyDefaultSize = &cli.IntFlag{
|
|
Name: PrivateKeyDefaultSizeFlagName,
|
|
EnvVars: []string{"STORAGE_SERVER_PRIVATE_KEY_DEFAULT_SIZE"},
|
|
Value: 2048,
|
|
}
|
|
|
|
func GetPrivateKeyDefaultSize(ctx *cli.Context) int {
|
|
return ctx.Int(PrivateKeyDefaultSizeFlagName)
|
|
}
|