-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathset_external_vars.py
executable file
·110 lines (105 loc) · 4.7 KB
/
set_external_vars.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#!/usr/bin/python
import os
ansible_vars = os.getenv("ANSIBLE_EXTERNAL_VARS")
if not ansible_vars:
print("ANSIBLE_EXTERNAL_VARS environment variable shoud be defined")
exit(-1)
print("$ANSIBLE_EXTERNAL_VARS={ansible_vars}".format(ansible_vars=ansible_vars))
if( not os.path.exists(ansible_vars) ):
f = open(ansible_vars,"a")
f.close()
external_vars = {a:b for a, b in [i.strip('\n').split(":") for i in open(ansible_vars) if (not '#' in i) ] }
f = open(ansible_vars, "a")
if(not external_vars.get('technical_state_path')):
f.write("# Set a path to a Bull Technical State file\n")
f.write("# technical_state_path: /mnt\n")
f.write("technical_state_path: /mnt\n")
if(not external_vars.get('rsyslog_server_ip')):
f.write("# Define rsyslog ip\n")
f.write("# rsyslog_server_ip: \n")
f.write("rsyslog_server_ip: \n")
if(not external_vars.get('purpose_to_delete')):
f.write("# To delete a ready image : uncomment and fill the Purpose and the Version\n")
f.write("# purpose_to_delete: \n")
f.write("# version_to_delete: \n")
f.write("purpose_to_delete: \n")
if(not external_vars.get('version_to_delete')):
f.write("version_to_delete: \n")
if(not external_vars.get('file_to_upload')):
f.write("# File to upload with update_firmware_from_file.yml playbook\n")
f.write("# file_to_upload: /mnt/Resources/Firmware_and_related_documents/BIOS/<here your file .tar or .gzip>\n")
f.write("file_to_upload: \n")
if(not external_vars.get('rsyslog_server_port')):
print("Adding rsyslog_server_port: 514")
f.write("# rsyslog_server_port: 514\n")
f.write("rsyslog_server_port: 514\n")
if(not external_vars.get('power_cap')):
print("Adding default power cap: 500")
f.write("# Define a power capability\n")
f.write("# power_cap: 500\n")
f.write("power_cap: 500\n")
if(not external_vars.get('forceoff')):
print("Adding forceoff: false")
f.write("# Update and Activate playbooks use these variables if needed\n")
f.write("# forceoff: false\n")
f.write("forceoff: false\n")
if(not external_vars.get('reboot')):
print("Adding reboot: true")
f.write("# reboot: true\n")
f.write("reboot: true\n")
if(not external_vars.get('token_timeout')):
print("Adding token timeout in SECONDS: 5")
f.write("# url timeout when creating token\n")
f.write("# token_timeout: 5\n")
f.write("token_timeout: 5\n")
if(not external_vars.get('reboot_countdown')):
print("Adding reboot_countdown: 2 minutes")
f.write("# Count down before checking a successfull reboot in MINUTES\n")
f.write("# reboot_countdown: 2\n")
f.write("reboot_countdown: 2\n")
if(not external_vars.get('poweron_countdown')):
print("Adding poweron_countdown: 5 seconds")
f.write("# Count down before checking a successfull for power on/off in SECONDS\n")
f.write("# poweron_countdown: 5\n")
f.write("poweron_countdown: 5\n")
if(not external_vars.get('poweroff_countdown')):
print("Adding poweroff_countdown: 5 seconds")
f.write("# Count down before checking a successfull for power on/off in SECONDS\n")
f.write("# poweroff_countdown: 5\n")
f.write("poweroff_countdown: 5\n")
if(not external_vars.get('activating_countdown')):
print("Adding activating_countdown: 30 seconds")
f.write("# Count down after activating update in SECONDS\n")
f.write("# activating_countdown: 30\n")
f.write("activating_countdown: 30\n")
if(not external_vars.get('reboot_maxretries')):
print("Adding reboot_maxretries: 10 times")
f.write("# Number of retries while rebooting before failure\n")
f.write("# reboot_maxretries: 10\n")
f.write("reboot_maxretries: 10\n")
if(not external_vars.get('poweron_maxretries')):
print("Adding poweron_maxretries: 10 times")
f.write("# Number of retries while powering on before failure\n")
f.write("# poweron_maxretries: 10\n")
f.write("poweron_maxretries: 10\n")
if(not external_vars.get('poweroff_maxretries')):
print("Adding poweroff_maxretries: 10 times")
f.write("# Number of retries while powering off before failure\n")
f.write("# poweroff_maxretries: 10\n")
f.write("poweroff_maxretries: 10\n")
if(not external_vars.get('activating_maxretries')):
print("Adding activating_maxretries: 10 times")
f.write("# Number of retries while activating firmwares before failure\n")
f.write("# activating_maxretries: 10\n")
f.write("activating_maxretries: 10\n")
if(not external_vars.get('ntp_server_ip')):
print("Adding default NTP server ip")
f.write("# Define the NTP server IP\n")
f.write("ntp_server_ip: 127.0.0.1\n")
f.write("# ntp_server_ip: 127.0.0.1\n")
if(not external_vars.get('ntp_server_sync')):
print("Adding default NTP server Sync time: NTP")
f.write("# Define the NTP server Sync method NTP (warning: MANUAL is experimental)\n")
f.write("# ntp_server_sync: NTP\n")
f.write("ntp_server_sync: NTP\n")
f.close()