· 6 years ago · Sep 10, 2019, 08:42 AM
1#!/usr/bin/env python3.6
2"""
3Converts key/value pairs returned by a vault command into environment variables
4"""
5import json
6import sys
7
8KEY_MAP = {
9 'access_key': 'AWS_ACCESS_KEY_ID',
10 'secret_key': 'AWS_SECRET_ACCESS_KEY',
11 'security_token': 'AWS_SECURITY_TOKEN',
12}
13
14
15def main():
16 content = sys.stdin.read()
17 data = json.loads(content)
18
19 for k, v in data['data'].items():
20 key = KEY_MAP.get(k, k).upper()
21 val = v.replace("'", "\\'")
22
23 print(f"export {key}='{val}'")
24
25
26if __name__ == '__main__':
27 sys.exit(main())