in bicep/files-to-load/cyclecloud_install.py [0:0]
def modify_cs_config(options):
print("Editing CycleCloud server system properties file")
# modify the CS config files
cs_config_file = cycle_root + "/config/cycle_server.properties"
fh, tmp_cs_config_file = mkstemp()
with fdopen(fh, 'w') as new_config:
with open(cs_config_file) as cs_config:
for line in cs_config:
if line.startswith('webServerMaxHeapSize='):
new_config.write('webServerMaxHeapSize={}\n'.format(options['webServerMaxHeapSize']))
elif line.startswith('webServerPort='):
# Port numbers may not be empty
new_config.write('webServerPort={}\n'.format(options['webServerPort'] if options['webServerPort'] else 8080))
elif line.startswith('webServerSslPort='):
new_config.write('webServerSslPort={}\n'.format(options['webServerSslPort'] if options['webServerSslPort'] else 8443))
elif line.startswith('webServerClusterPort'):
new_config.write('webServerClusterPort={}\n'.format(options['webServerClusterPort'] if options['webServerClusterPort'] else 9443))
elif line.startswith('webServerEnableHttps='):
new_config.write('webServerEnableHttps={}\n'.format(str(options['webServerEnableHttps']).lower()) if options['webServerEnableHttps'] else 'true')
elif line.startswith('webServerHostname'):
# This isn't generally a default setting, so set it below
continue
elif line.startswith('webServerJvmOptions='):
# JVM Options are complex and difficult to pass as arguments
# so for now, we require an environment variable
jvm_options = os.environ.get('CYCLECLOUD_WEBSERVER_JVM_OPTIONS', '')
if jvm_options:
new_config.write('webServerJvmOptions={}\n'.format(jvm_options))
else:
new_config.write(line)
else:
new_config.write(line)
if 'webServerHostname' in options and options['webServerHostname']:
new_config.write('webServerHostname={}\n'.format(options['webServerHostname']))
remove(cs_config_file)
move(tmp_cs_config_file, cs_config_file)
#Ensure that the files are created by the cycleserver service user
# - Recursive chown is not supported if installing as low-priv cycle_server user
#_catch_sys_error(["chown", "-R", "cycle_server.", cycle_root])
_catch_sys_error(["chown", "cycle_server:cycle_server", cs_config_file])