diff --git a/etherlink/CHANGES_NODE.md b/etherlink/CHANGES_NODE.md index d71c16d0298785fdb91c96ec9d465fdb1c0e6477..314acb11b42c2e9fe4295fd03e41698b424329e8 100644 --- a/etherlink/CHANGES_NODE.md +++ b/etherlink/CHANGES_NODE.md @@ -20,6 +20,7 @@ the parser would silently ignore any content that appeared after the first valid JSON object. Now, any extraneous data will cause the function to return an error. (!18745) +- Fixes GCP KMS token refresh. (!18795) ### Storage changes diff --git a/etherlink/bin_node/lib_dev/gcp_kms.ml b/etherlink/bin_node/lib_dev/gcp_kms.ml index 2ea31a2366b15efd254a2e205f57ed1cbdfd508e..1f43c5eb88019d607298cd48c837105609be0006 100644 --- a/etherlink/bin_node/lib_dev/gcp_kms.ml +++ b/etherlink/bin_node/lib_dev/gcp_kms.ml @@ -376,11 +376,12 @@ let from_gcp_key (config : Configuration.gcp_kms) gcp_key = (* We fetch the necessary information which will allow us to interpret the KMS response and wrap them into the correct Signature.t constructor. *) let* public_key = public_key kms_handler in + let kms_handler = {kms_handler with public_key} in let*! () = Gcp_kms_events.is_ready public_key in Lwt.dont_wait (fun () -> Octez_connpool.warm kms_handler.pool) ignore ; Lwt.dont_wait (fun () -> wait_and_refresh config kms_handler) ignore ; (* We return the full handler *) - return {kms_handler with public_key} + return kms_handler let public_key t = t.public_key