πŸ‘©β€πŸš’ Firefighters API written in Gleam!
lustre gleam

:bug: only hash the user password once

kacaii.dev 2488d3ec 2e0b404b

verified
+4 -5
+1 -1
server/src/server.gleam
··· 23 23 let handler = router.handle_request(_, ctx) 24 24 25 25 let assert Ok(_) = supervision_tree.init(pog_config, handler, secret_key) 26 - let assert Ok(_) = seed.germinate(ctx, ctx.secret_key) 26 + let assert Ok(_) = seed.germinate(ctx) 27 27 28 28 // All done! 29 29 process.sleep_forever()
+2 -3
server/src/server/seed.gleam
··· 29 29 pub const role = role.Admin 30 30 31 31 /// ξΆ§ Generate a root user when starting the system for the first time 32 - pub fn germinate(ctx: context.Context, salt: String) -> Result(Nil, SeedError) { 32 + pub fn germinate(ctx: context.Context) -> Result(Nil, SeedError) { 33 33 use state <- result.try(guard(ctx.db)) 34 34 use <- bool.guard(when: state == Populated, return: Ok(Nil)) 35 - let hashed = auth.hash(value: password, salt:) 36 35 37 36 use _ <- result.map( 38 37 user.register( 39 38 ctx: ctx, 40 39 user_name: full_name, 41 40 user_role: role, 42 - user_password: hashed, 41 + user_password: password, 43 42 user_email: email, 44 43 user_phone: phone, 45 44 is_active: True,
+1 -1
server/test/server_test.gleam
··· 23 23 let assert Ok(_db_process) = pog.start(pog_config) 24 24 25 25 let ctx = Context(priv:, db:, secret_key:) 26 - let assert Ok(_result) = seed.germinate(ctx, secret_key) 26 + let assert Ok(_result) = seed.germinate(ctx) 27 27 next(ctx) 28 28 }