(ctx *cli.Context)
| 154 | } |
| 155 | |
| 156 | func openUserDB(ctx *cli.Context) (module.PlainUserDB, error) { |
| 157 | _, mod, err := getCfgBlockModule(ctx) |
| 158 | if err != nil { |
| 159 | return nil, err |
| 160 | } |
| 161 | |
| 162 | userDB, ok := mod.(module.PlainUserDB) |
| 163 | if !ok { |
| 164 | return nil, cli.Exit(fmt.Sprintf("Error: configuration block %s is not a local credentials store", ctx.String("cfg-block")), 2) |
| 165 | } |
| 166 | |
| 167 | started := false |
| 168 | if lt, ok := userDB.(container.LifetimeModule); ok { |
| 169 | if err := lt.Start(); err != nil { |
| 170 | return nil, err |
| 171 | } |
| 172 | started = true |
| 173 | } |
| 174 | |
| 175 | if started { |
| 176 | return &managedUserDB{PlainUserDB: userDB, started: started}, nil |
| 177 | } |
| 178 | return userDB, nil |
| 179 | } |
no test coverage detected