Memoize computing tokens
As I'm not sure how expensive this is, but it doesn't need doing for every request.
This commit is contained in:
parent
241a704db1
commit
b9026488ed
|
@ -21,9 +21,12 @@
|
|||
#:use-module (squee)
|
||||
#:use-module (gcrypt hash)
|
||||
#:use-module (gcrypt base64)
|
||||
#:use-module (guix memoization)
|
||||
#:export (compute-tokens-for-build-server))
|
||||
|
||||
(define (compute-token secret-key-base build-server-id token-seed)
|
||||
(define compute-token
|
||||
(memoize
|
||||
(lambda (secret-key-base build-server-id token-seed)
|
||||
(let ((source-string
|
||||
(simple-format #f "~A:~A:~A"
|
||||
secret-key-base
|
||||
|
@ -35,7 +38,7 @@
|
|||
(base64-encode
|
||||
(bytevector-hash
|
||||
(string->utf8 source-string)
|
||||
(hash-algorithm sha1))))))
|
||||
(hash-algorithm sha1))))))))
|
||||
|
||||
(define (compute-tokens-for-build-server conn secret-key-base build-server-id)
|
||||
(define query
|
||||
|
|
Loading…
Reference in New Issue