Skip to content

Commit 390d8e5

Browse files
authored
Create EumSecrets.py
1 parent f1fed5d commit 390d8e5

File tree

1 file changed

+48
-0
lines changed

1 file changed

+48
-0
lines changed

EumSecrets.py

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
import requests
2+
import json
3+
4+
# Docker API URL (assuming Docker is running locally)
5+
DOCKER_API_URL = "http://localhost:2375"
6+
7+
def get_secrets():
8+
# Get list of all secrets
9+
response = requests.get(f"{DOCKER_API_URL}/secrets")
10+
if response.status_code != 200:
11+
print("Failed to get secrets")
12+
return []
13+
return response.json()
14+
15+
def get_secret_value(secret_id):
16+
# Get secret details (including value) for a specific secret
17+
response = requests.get(f"{DOCKER_API_URL}/secrets/{secret_id}")
18+
if response.status_code != 200:
19+
print(f"Failed to get info for secret {secret_id}")
20+
return None
21+
22+
secret_data = response.json()
23+
# Extract the secret's value, which is base64 encoded
24+
secret_value = secret_data.get('Spec', {}).get('Data', '')
25+
return secret_value
26+
27+
def main():
28+
secrets = get_secrets()
29+
if not secrets:
30+
print("No secrets found.")
31+
return
32+
33+
for secret in secrets:
34+
secret_id = secret['ID']
35+
secret_name = secret['Spec']['Name']
36+
print(f"\nSecret Name: {secret_name}")
37+
print(f"Secret ID: {secret_id}")
38+
39+
secret_value = get_secret_value(secret_id)
40+
if secret_value:
41+
# The secret value is base64 encoded, so we'll decode it
42+
decoded_value = secret_value.decode('utf-8')
43+
print(f"Secret Value: {decoded_value}")
44+
else:
45+
print("No secret value found.")
46+
47+
if __name__ == "__main__":
48+
main()

0 commit comments

Comments
 (0)