Skip to content

Commit

Permalink
Updated documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
vrbanecd committed Sep 19, 2024
1 parent 60f69f5 commit 41d9a0b
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 21 deletions.
21 changes: 9 additions & 12 deletions CONFIGURATION.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
# Configuration

All configuration information for both Teapot and StoRM WebDAV is contained in
the `config.ini` file. Please update this file as needed to meet your requirements.

## Certificates

Both Teapot and StoRM WebDAV servers require `SSL` certificates. Teapot requires
a certificate/key pair for the machine's DNS name to be added to
an appropriate server certificate/key pair for the machine to be added to
`/var/lib/teapot/webdav`. The certificate should also be added to the system's
trust store. To generate self-signed certificates for StoRM WebDAV and add them
to the trust store, run `sudo /usr/share/teapot/self-signed-cert-gen.sh`.

In `teapot.py` line 945, uvicorn hostname needs to be replaced with the machine
DNS name, and paths to the certificate/key pair for that DNS name should be
added here.

## Storm-webdav configuration
## Additional Storm-webdav configuration

Two main pieces of information are required to configure StoRM-WebDAV:
Two main pieces of additional information are required to configure StoRM-WebDAV:

- Storage Areas (SA), which are folders assigned to each user
- OIDC provider and identity mapping information
Expand Down Expand Up @@ -47,9 +46,9 @@ For information on how to configure storage-areas, please refer to the
### OIDC provider and identity mapping information

OIDC provider information used to authenticate users must be provided. See below
for information on where to change the OIDC provider information. For more
details on authentication to the storage areas, refer to the
[StoRM WebDAV Guidelines](https://github.com/italiangrid/storm-webdav/blob/master/doc/storage-area-configuration.md).
for information on where to change the OIDC provider information, besides the
changes already made in `config.ini` file. For more details on authentication to
the storage areas, refer to the [StoRM WebDAV Guidelines](https://github.com/italiangrid/storm-webdav/blob/master/doc/storage-area-configuration.md).

To configure the OIDC provider information, make the following changes:

Expand All @@ -59,8 +58,6 @@ To configure the OIDC provider information, make the following changes:
modifying the `iss` information which stands for issuer.
3. Modify the OIDC providers that have access to the storage area by modifying
the `org` information in `/usr/share/teapot/storage_element.properties`.
4. Modify the OIDC provider list in `teapot.py` under
`flaat.set_trusted_OP_list`.

If no other way for mapping user's local and global identities is provided, the
rudementary way is defined as explained next. The `user-mapping.csv` file is to
Expand Down
5 changes: 2 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ will start another StoRM-WebDAV server for that user in the same way.

Teapot needs `Python3` to run, the specific distribution depends on the operating system.
The required Python packages for installing Teapot are listed in the [requirements.txt](https://github.com/interTwin-eu/teapot/blob/main/requirements.txt)
file. Python packages that aren't provided in the rpm format are already included in Teapot's rpm file.
file. Python packages that aren't available in the rpm format are already included in Teapot's rpm file.
To automatically generate self-signed certificate `openssl>3` is needed. Storm-webdav needs `java-11`.

### Installation & Configuration
Expand All @@ -27,8 +27,7 @@ feel free to contact us and we’ll gladly provide you with one for your specifi

To install teapot, first a user `teapot` must be created. To do that run `sudo adduser teapot`.

Please refer to [CONFIGURATION.md](https://github.com/interTwin-eu/teapot/blob/main/CONFIGURATION.md) for information on
how to configure Teapot.
Please refer to [CONFIGURATION.md](https://github.com/interTwin-eu/teapot/blob/main/CONFIGURATION.md) for information on how to configure Teapot and Storm-Webdav.

### Starting

Expand Down
15 changes: 9 additions & 6 deletions Service_Reference_Card.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,15 @@ start another StoRM-WebDAV server for that user in the same way.

## List of configuration files

All templates for configuration files are located in `/templates`. Teapot
configuration file can be found in `/etc/teapot/`. All configuration files for
StoRM-WebdDAV for each user are automatically generated in
`/var/lib/teapot/user-$USER/` when user sends its first request. To provide the
necessary information for configuration files and for more details on
configuration files, please refer to [CONFIGURATION.md](https://github.com/interTwin-eu/teapot/blob/main/CONFIGURATION.md).
The primary configuration for Teapot and Storm WebDAV can be found at
`/etc/teapot/config.ini`. All templates for configuration files for individual users
are located in `usr/share/teapot/templates`. All configuration files for
StoRM-WebdDAV's individual users are automatically generated in their user directories
as defined in `config.ini`, when a particular user sends its first request. To provide
the necessary information for configuration files and for more details on configuration
files, please refer to [CONFIGURATION.md](https://github.com/interTwin-eu/teapot/blob/main/CONFIGURATION.md).

## Run setting

`teapot.py` must be run as the `teapot` user, with the Python modules listed in
`requirements.txt` and the sudoers permissions defined in the `templates/teapot` file.
Expand Down
1 change: 1 addition & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,5 @@ uvicorn
anyio
asyncio
psutil
configparser

1 comment on commit 41d9a0b

@vrbanecd
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Robot Results

✅ Passed ❌ Failed ⏭️ Skipped Total Pass % ⏱️ Duration
32 0 0 32 100 19.189972s

Passed Tests

Name ⏱️ Duration Suite
GET USER1 8.761 s Teapot-Tests
GET USER2 9.534 s Teapot-Tests
GET NO TOKEN 0.014 s Teapot-Tests
GET INVALID TOKEN 0.036 s Teapot-Tests
PUT REQUEST INVALID TOKEN 0.010 s Teapot-Tests
PUT REQUEST NO TOKEN 0.009 s Teapot-Tests
PUT REQUEST USER1 0.096 s Teapot-Tests
PUT REQUEST USER2 0.080 s Teapot-Tests
GET FILE USER1 0.063 s Teapot-Tests
GET FILE USER2 0.062 s Teapot-Tests
GET FILE NO TOKEN 0.009 s Teapot-Tests
GET FILE INVALID TOKEN 0.009 s Teapot-Tests
DELETE REQUEST USER1 0.036 s Teapot-Tests
DELETE REQUEST USER2 0.042 s Teapot-Tests
DELETE REQUEST INVALID TOKEN 0.009 s Teapot-Tests
DELETE REQUEST NO TOKEN 0.010 s Teapot-Tests
GET USER1 EXTRA_AREA 0.038 s Teapot-Tests
GET USER2 EXTRA_AREA 0.041 s Teapot-Tests
GET NO TOKEN EXTRA_AREA 0.010 s Teapot-Tests
GET INVALID TOKEN EXTRA_AREA 0.009 s Teapot-Tests
PUT REQUEST INVALID TOKEN EXTRA_AREA 0.009 s Teapot-Tests
PUT REQUEST NO TOKEN EXTRA_AREA 0.008 s Teapot-Tests
PUT REQUEST USER1 EXTRA_AREA 0.036 s Teapot-Tests
PUT REQUEST USER2 EXTRA_AREA 0.036 s Teapot-Tests
GET FILE USER1 EXTRA_AREA 0.051 s Teapot-Tests
GET FILE USER2 EXTRA_AREA 0.053 s Teapot-Tests
GET FILE NO TOKEN EXTRA_AREA 0.010 s Teapot-Tests
GET FILE INVALID TOKEN EXTRA_AREA 0.009 s Teapot-Tests
DELETE REQUEST USER1 EXTRA_AREA 0.035 s Teapot-Tests
DELETE REQUEST USER2 EXTRA_AREA 0.049 s Teapot-Tests
DELETE REQUEST INVALID TOKEN EXTRA_AREA 0.009 s Teapot-Tests
DELETE REQUEST NO TOKEN EXTRA_AREA 0.009 s Teapot-Tests

Please sign in to comment.