System for managing multi-station multi-tenant lab setups - admin server.
Project description
labManager v1.0.3
System for managing multi-station multi-tenant lab setups - admin-server
This package is part of the labManager tools, a collection of tools for managing behavioral research setups. Please see here for more information.
Installation
pip install labManager-admin-server
Example script
An example script for running the labManager admin-server script is provided here.
Configuration
The below shows the schema used for parsing the configuration file for labManager admin-server, using StrictYAML’s notation. An example configuration file is also available.
'LDAP': s.Map({ # Configuration about the LDAP server and querying it
'server': s.Str(), # Server FQDN or IP address
'projects': s.Map({
'format': s.Str(), # Regex to match projects in memberOf field of found user
}),
}),
'toems': s.Map({ # Configuration about the Theopenem instance
'server': s.Str(), # Server FQDN or IP address
'port': s.Int(), # Server port
'images': s.Map({
'format': s.Str(), # Regex to match disk images that belong to a project
'file_copy_actions': s.Seq( # List of file copy actions to activate when a new disk
s.Map({ # image is created
'name': s.Str(), # Name in Theopenem of a file_copy action
'partition_id': s.Int(), # Partition on the disk image for which the action should
}), # be run
),
'standard': s.Seq( # list of "standard" disk images that should be visible
s.Str(), # (read only) to all projects. Use to, for instance,
), # provide a base image that new projects can start from.
}),
}),
Secrets file
Besides the configuration yaml file, the admin-server tool also needs a secrets file containing credentials with admin privileges for the LDAP and Theopenem environments. It should be formatted as follows:
LDAP_ACCOUNT = username
LDAP_PASSWORD = password
LDAP_SEARCH_BASE= OU=something,DC=something
TOEMS_ACCOUNT = username
TOEMS_PASSWORD = password
Standalone deployment
One simple way to make a standalone install of the app is to download WinPython, e.g. the latest 3.10.x version. I think this is recommended instead of using a system-wide or user installation of Python, so that users of the computer are unlikely to accidentally interfere with the Python distribution that runs the management tools.
Do as follows:
- Download the dot version, not the full package, e.g.
Winpython64-3.10.11.1dot
. - Run the downloaded exe, which unzips the WinPython files.
- Take the python folder from the unzipped files (e.g.
python-3.10.11.amd64
), you do not need the rest. This is your python distribution. Put it where you want on the disk. - Open a command prompt in the root of the Python installation. Install the wanted labManager packages into it using, e.g.,
.\python.exe -m pip install labManager-admin-server
. - Finally use the
python.exe
in the folder to execute your script, such the example script to launch this tool.
Acknowledgements
This project was made possible by funding from the LMK foundation, Sweden.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for labmanager_admin_server-1.0.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9bff8025335ac656a3e66615d211e1053190577575562fceb6c179c84731ae62 |
|
MD5 | 857f6f1a41337cd80a4fe66800b06458 |
|
BLAKE2b-256 | 26cf9b4016aa14af2c6795391f383263e57b10623f77a2d73ff163584a78c08e |
Hashes for labmanager_admin_server-1.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f127c5da5422d5f10c708cf7344e1c560d13d923a19ab46b4e8af084c810a193 |
|
MD5 | b9b2b720318b615c66acd5d0f920e00e |
|
BLAKE2b-256 | 07f915e607ac137eafea7dba0740e9dec8e9c4dc62e2f5808adbaa5b5cd6f10c |