Feat: autobrrctl change-password (#9)

* feat(autobrrctl): add method change-password

* refactor: store user
This commit is contained in:
Ludvig Lundgren 2021-08-19 18:37:35 +02:00 committed by GitHub
parent 07a9583ddf
commit 929231ec35
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 46 additions and 6 deletions

View file

@ -77,6 +77,35 @@ func main() {
if err := userRepo.Store(user); err != nil {
log.Fatalf("failed to create user: %v", err)
}
case "change-password":
username := flag.Arg(1)
if username == "" {
flag.Usage()
os.Exit(1)
}
user, err := userRepo.FindByUsername(username)
if err != nil {
log.Fatalf("failed to get user: %v", err)
}
if user == nil {
log.Fatalf("failed to get user: %v", err)
}
password, err := readPassword()
if err != nil {
log.Fatalf("failed to read password: %v", err)
}
hashed, err := argon2id.CreateHash(string(password), argon2id.DefaultParams)
if err != nil {
log.Fatalf("failed to hash password: %v", err)
}
user.Password = hashed
if err := userRepo.Store(*user); err != nil {
log.Fatalf("failed to create user: %v", err)
}
default:
flag.Usage()
if cmd != "help" {