From e709b620a2905eec51d112f579d16cbfbe2d0e77 Mon Sep 17 00:00:00 2001 From: Stonewall Jackson Date: Sun, 19 Feb 2023 08:28:07 -0500 Subject: psitransfer: add docs --- roles/psitransfer/README.md | 60 +++++++++++++++++++++++++++++++++++++ roles/psitransfer/defaults/main.yml | 13 -------- roles/psitransfer/vars/main.yml | 10 +++++++ 3 files changed, 70 insertions(+), 13 deletions(-) create mode 100644 roles/psitransfer/README.md (limited to 'roles/psitransfer') diff --git a/roles/psitransfer/README.md b/roles/psitransfer/README.md new file mode 100644 index 0000000..2f27bd2 --- /dev/null +++ b/roles/psitransfer/README.md @@ -0,0 +1,60 @@ +PsiTransfer +====== + +Description +----------- + +The `psitransfer` role installs and configures [PsiTransfer](https://github.com/psi-4ward/psitransfer), +a web application for sharing files. + +This role configures the NodeJS application only; it does not configure a reverse +proxy. + + +Variables +--------- + +This role **accepts** the following variables: + +Variable | Default | Description +-------------------------------|-----------------------------------|------------ +`psitransfer_version` | see [defaults](defaults/main.yml) | Git version to install +`psitransfer_port` | 8080 | Local listening port +`psitransfer_admin_password` |   | Password to access `/admin` page +`psitransfer_upload_cidrs` | `[]` | CIDRs allowed to upload files +`psitransfer_admin_cidrs` | `[]` | CIDRs allowed to access admin page +`psitransfer_max_file_size` | `1 GB` | Maximum file size +`psitransfer_max_bucket_size` | `5 GB` | Maximum upload group size +`psitransfer_max_preview_size` | `32 MB` | Maximum size for thumbnail generation + +This role **exports** the following variables: + +Variable | Description +----------------------------|------------ +`psitransfer_apache_config` | Apache config block to configure a reverse proxy + + +Usage +----- + +Example playbook: + +````yaml +- name: configure psitransfer + hosts: filedrop_servers + roles: + - role: psitransfer + psitransfer_port: 8080 + psitransfer_admin_password: s3cret + psitransfer_upload_cidrs: + - 10.10.10.0/24 + - 10.10.11.0/24 + psitransfer_admin_cidrs: + - 10.10.10.0/24 + + - role: apache_vhost + apache_server_name: psitransfer.example.com + apache_server_aliases: [] + apache_letsencrypt: yes + apache_config: '{{ psitransfer_apache_config }}' +```` diff --git a/roles/psitransfer/defaults/main.yml b/roles/psitransfer/defaults/main.yml index e43067f..280447c 100644 --- a/roles/psitransfer/defaults/main.yml +++ b/roles/psitransfer/defaults/main.yml @@ -1,22 +1,9 @@ psitransfer_version: 2.1.2 psitransfer_port: 8080 -psitransfer_server_name: '{{ ansible_fqdn }}' -psitransfer_server_aliases: '{{ cnames }}' - psitransfer_upload_cidrs: [] psitransfer_admin_cidrs: [] -psitransfer_retentions: - one-time: one time download - 3600: 1 hour - 86400: 1 day - 604800: 1 week - 2419200: 1 month - 4838400: 2 months - -psitransfer_default_retention: 604800 - psitransfer_max_file_size: 1 GB psitransfer_max_bucket_size: 5 GB psitransfer_max_preview_size: 32 MB diff --git a/roles/psitransfer/vars/main.yml b/roles/psitransfer/vars/main.yml index d6007fa..486eae0 100644 --- a/roles/psitransfer/vars/main.yml +++ b/roles/psitransfer/vars/main.yml @@ -4,6 +4,16 @@ psitransfer_data_dir: '{{ psitransfer_home }}/data' psitransfer_user: psitransfer psitransfer_url: https://github.com/psi-4ward/psitransfer/releases/download/v{{ psitransfer_version }}/psitransfer-v{{ psitransfer_version }}.tar.gz +psitransfer_default_retention: 604800 +psitransfer_retentions: + one-time: one time download + 3600: 1 hour + 86400: 1 day + 604800: 1 week + 2419200: 1 month + 4838400: 2 months + + psitransfer_archive_shell: >- TIMESTAMP=$(date +%Y%m%d%H%M%S); tar czf "psitransfer-${TIMESTAMP}.tar.gz" -- cgit