You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: pydatalab/docs/config.md
+15-3
Original file line number
Diff line number
Diff line change
@@ -10,7 +10,18 @@
10
10
3. Web app configuration, such as the URL of the relevant *datalab* API and branding (logo URLs, external homepage links).
11
11
- These are typically provided as a `.env` file in the directory from which the webapp is built/served.
12
12
13
-
## Configuring user registration/authentication
13
+
## Mandatory settings
14
+
15
+
There is only one mandatory setting when creating a deployment.
16
+
This is the `IDENTIFIER_PREFIX`, which shall be prepended to every entry's refcode to enable global uniqueness of *datalab* entries.
17
+
For now, the prefixes themselves are not checked for uniqueness across the fledling *datalab* federation, but will in the future.
18
+
19
+
This prefix should be set to something relatively short (max 10 chars.) that describes your group or your deployment, e.g., the PI's surname, project ID or department.
20
+
21
+
This can be set either via a config file, or as an environment variable (e.g., `PYDATALAB_IDENTIFIER_PREFIX='grey'`).
22
+
Be warned, if the prefix changes between server launches, all entries will have to be migrated manually to the desired prefix, or maintained at the old prefix.
23
+
24
+
## User registration & authentication
14
25
15
26
*datalab* has three supported user registration/authentication
16
27
mechanisms:
@@ -26,6 +37,7 @@ For GitHub, you must register a [GitHub OAuth
26
37
application](https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/creating-an-oauth-app) for your instance, providing the client ID and secret in the `.env` for the API.
27
38
Then, you can configure `GITHUB_ORG_ALLOW_LIST` with a list of string IDs of GitHub organizations that user's must be a public member of to register an account.
28
39
If this value is set to `None`, then no accounts will be able to register, and if it is set to an empty list, then no restrictions will apply.
40
+
You can find the relevant organization IDs using the GitHub API, for example at `https://api.github.com/orgs/<org_name>`.
29
41
30
42
For ORCID integration, each *datalab* instance must currently register for the ORCID developer program and request new credentials.
31
43
As such, this may be tricky to support for new instances.
@@ -36,7 +48,7 @@ additional configuration for the [SendGrid](https://sendgrid.com/) web API, i.e.
36
48
There is currently no restrictions on which email addresses can sign up.
37
49
This approach will soon also support using any configured SMTP server.
38
50
39
-
## Configuring remote filesystems
51
+
## Remote filesystems
40
52
41
53
This package allows you to attach files from remote filesystems to samples and other entries.
42
54
These filesystems can be configured in the config file with the `REMOTE_FILESYSTEMS` option.
@@ -47,7 +59,7 @@ Currently, there are two mechanisms for accessing remote files:
47
59
1. You can mount the filesystem locally and provide the path in your datalab config file. For example, for Cambridge Chemistry users, you will have to (connect to the ChemNet VPN and) mount the Grey Group backup servers on your local machine, then define these folders in your config.
48
60
2. Access over `ssh`: alternatively, you can set up passwordless `ssh` access to a machine (e.g., using `citadel` as a proxy jump), and paths on that remote machine can be configured as separate filesystems. The filesystem metadata will be synced periodically, and any files attached in `datalab` will be downloaded and stored locally on the `pydatalab` server (with the file being kept younger than 1 hour old on each access).
49
61
50
-
## Server administration
62
+
## General Server administration
51
63
52
64
Currently most administration tasks must be handled directly inside the Python API container.
53
65
Several helper routines are available as `invoke` tasks in `tasks.py` in the `pydatalab` root folder.
0 commit comments