diff --git a/README.md b/README.md index a91b7e5edc584bd827104c04e621f2e456baf401..ff11a58e68411635d9f5cd7f9794b58769d04fc8 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,31 @@ instance's data model (e.g., by [synchronizing with the LinkAhead advanced user tools](https://docs.indiscale.com//caosdb-advanced-user-tools/yaml_interface.html)). +## Customization + +The sample management module can be customized by overwriting +indivdual code and config files by using files of the same name and +with the same relative path in your LinkAhead profile's custom +directory. E.g., if you want to overwrite how sample entities are post-processed in the sample upload, you overwrite + +``` +sample-management-custom/caosdb-server/scripting/bin/sample_helpers/sample_upload_post_processing.py +``` + +from this repository by a + +``` +profile/custom/caosdb-server/scripting/bin/sample_helpers/sample_upload_post_processing.py +``` + +in your server profile. When doing so, it is important that in your +custom file, you use the exact same function names, signatures, and +return types as in the original file. In our example, the custom +`sample_upload_post_processing.py` needs to contain a +`post_process_samples` that takes the samples and the csv data as +arguments and returns the list of post processed samples. + + ## Testing There is a pre-configured `test-profile` that you can use for testing