schrodinger.utils.postinstall module

This file contains post-installation steps common to all platforms. This allows post installation steps to be tested and used in and outside the installers. Migrate more post-installation steps here in the future.

class schrodinger.utils.postinstall.CustomConfigFiles(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: str, enum.Enum

Customized configuration files used during the postinstall stage of an installation. These files are optional during the installation, but may be required depending on the environment.

featureflags.json global and product settings for the suite server.json required for queuing system installation on Linux suitepref.xml required for local installation on Windows

FEATURE_FLAGS = 'featureflags.json'
SERVER = 'server.json'
PREFERENCES = 'suitepref.xml'
schrodinger.utils.postinstall.copy_customized_files(customized_files_dir: pathlib.Path)

Checks the specified directory for a customized configuration file and deploys it to $SCHRODINGER/config.

NOTE: suitepref.xml is the only exception, this file is copied to $SCHRODINGER/mmshare-v*/data/ - SHARED-8207

The custom configuration file types are stored in the global variable CUSTOMIZED_CONFIGURATION_FILES.

Parameters

featureflags_dir – path to the directory where the customized config file(s) is located.

schrodinger.utils.postinstall.custom_config_file_exists(customized_files_dir: pathlib.Path, source_file: pathlib.Path) bool

Check if source_file exists on file system, return boolean.

schrodinger.utils.postinstall.copy_custom_config_file(source_file: pathlib.Path, dest_file: pathlib.Path)

Copy customized configuration file to the specified destination. Ensure the destination directory (e.g. $SCHRODINGER/config) exists before copying.

schrodinger.utils.postinstall.get_lib_dir()

Don’t use hunt because we are getting rid of and it requires feature flags which requires licenses.

schrodinger.utils.postinstall.create_config_dir()

Create $SCHRODINGER/config

schrodinger.utils.postinstall.get_disabled_lib_dir()
schrodinger.utils.postinstall.parse_args(argv=None)
schrodinger.utils.postinstall.main(argv=None)