Fetch credentials from Vault
Summary:
Connect to Vault. Allow to fetch a credential and login again if the token
is expired, as the current duration lease is 4 hours.
vendor/vault.tcl is a work-in-progress Vault client implementation in TCL,
to be integrated in a future tcllib revision. Once released, that file will
be removed from the repository to use directly the tcllib one.
Allow nickserv, MySQL and RabbitMQ to consume secrets. The first two are
handled by configuration, the RabbitMQ one by this change.
Ref T1733.
Test Plan: Tested live on Daeghrefn and with a full restart on Wearg.
Reviewers: dereckson
Reviewed By: dereckson
Maniphest Tasks: T1733
Differential Revision: https://devcentral.nasqueron.org/D2686