Skip to content

Commit

Permalink
New remote settings format
Browse files Browse the repository at this point in the history
  • Loading branch information
chazlarson committed Nov 20, 2023
1 parent 36d937d commit 8fe8e05
Show file tree
Hide file tree
Showing 2 changed files with 55 additions and 35 deletions.
45 changes: 29 additions & 16 deletions docs/reference/accounts.md
Original file line number Diff line number Diff line change
Expand Up @@ -178,13 +178,16 @@ Each tab shows a "section" in the file.
enabled: true
remotes:
- remote: google
template: google
upload: true
upload_from: /mnt/local/Media
vfs_cache:
enabled: false
max_age: 504h
size: 50G
settings:
mount: yes
template: google
union: yes
upload: yes
upload_from: /mnt/local/Media
vfs_cache:
enabled: no
max_age: 504h
size: 50G
version: latest
```

Expand All @@ -197,29 +200,39 @@ Each tab shows a "section" in the file.
enabled: true
remotes:
- remote: google
template: google
settings:
mount: true
template: google
...
- remote: dropbox
template: dropbox
settings:
mount: false
template: dropbox
...
- remote: minio
template: /opt/mount-templates/custom/myminio.j2
settings:
mount: true
template: /opt/mount-templates/custom/myminio.j2
...
```

`remotes/remote`: The name of the rclone remote for this mount. You can also specify a path to use for the remote. `remote: "google:Media"` quotes are important.

`remotes/template`: The name of the template you want to use for the mount. Currently Saltbox supports 4 options: `google`, `dropbox`, `sftp` and a path to a file ("/opt/mount-templates/remote.j2") containing either jinja2 template or an actual copy of a systemd service file. A [community repo](https://github.com/saltyorg/mount-templates) is maintained of user submitted mount options which can be referenced via path (i.e. `/opt/mount-templates/generic.j2`.) We recommend saving your own custom templates/services in `/opt/mount-templates/custom` to ensure they are backed up and not subject to being overwritten by the repo.
`remotes/settings/mount`: Toggles whether you want this remote mounted in the file system.

`remotes/upload`: Toggles whether you intend to upload to this remote using Cloudplow.
`remotes/settings/template`: The name of the template you want to use for the mount. Currently Saltbox supports 4 options: `google`, `dropbox`, `sftp` and a path to a file ("/opt/mount-templates/remote.j2") containing either jinja2 template or an actual copy of a systemd service file. A [community repo](https://github.com/saltyorg/mount-templates) is maintained of user submitted mount options which can be referenced via path (i.e. `/opt/mount-templates/generic.j2`.) We recommend saving your own custom templates/services in `/opt/mount-templates/custom` to ensure they are backed up and not subject to being overwritten by the repo.

`remotes/upload_from`: The local path Cloudplow will use to upload from if the remote was upload enabled.
`remotes/settings/union`: Toggles whether you want to add this remote mount to `/mnt/unionfs`. This requires that `mount` be enabled.

`remotes/vfs_cache/enabled`: Toggle for using Rclone VFS file cache.
`remotes/settings/upload`: Toggles whether you intend to upload to this remote using Cloudplow.

`remotes/vfs_cache/max_age`: Defines the max age of files in the cache.
`remotes/settings/upload_from`: The local path Cloudplow will use to upload from if the remote was upload enabled.

`remotes/vfs_cache/size`: Defines the max size of the cache. The cache can grow above this value in actual usage (polls the cache once a minute) so leave some headroom when using this.
`remotes/settings/vfs_cache/enabled`: Toggle for using Rclone VFS file cache.

`remotes/settings/vfs_cache/max_age`: Defines the max age of files in the cache.

`remotes/settings/vfs_cache/size`: Defines the max size of the cache. The cache can grow above this value in actual usage (polls the cache once a minute) so leave some headroom when using this.
`version`: Rclone version that is installed by Saltbox.
Choices are `latest`, `current`, `beta`, or a specific version number (e.g. `1.42`).
Expand Down
45 changes: 26 additions & 19 deletions docs/saltbox/install/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -158,13 +158,16 @@ To edit any of the following configuration files use the command written in the
enabled: true # (4)!
remotes: # (5)!
- remote: google # (6)!
template: google # (7)!
upload: true # (8)!
upload_from: /mnt/local/Media # (9)!
vfs_cache:
enabled: false # (10)!
max_age: 504h # (11)!
size: 50G # (12)!
settings:
mount: yes # (7)!
template: google # (8)!
union: yes # (9)!
upload: true # (10)!
upload_from: /mnt/local/Media # (11)!
vfs_cache:
enabled: false # (12)!
max_age: 504h # (13)!
size: 50G # (14)!
- remote: dropbox
template: dropbox
upload: false
Expand All @@ -181,9 +184,9 @@ To edit any of the following configuration files use the command written in the
enabled: false
max_age: 504h
size: 50G
version: latest # (13)!
shell: bash # (14)!
transcodes: /mnt/local/transcodes # (15)!
version: latest # (15)!
shell: bash # (16)!
transcodes: /mnt/local/transcodes # (17)!
```

1. If the current server should have Authelia installed or use one installed elsewhere. For a multi-server setup, review the [considerations](../basics/install_types.md#feederboxmediabox-setup-considerations) listed for your Authelia setup.
Expand All @@ -210,35 +213,39 @@ To edit any of the following configuration files use the command written in the
remote: "google:Media"
```

7. The name of the template you want to use for the mount.
7. Toggles whether you wqant this remote mounted into the file system.

8. The name of the template you want to use for the mount.

Currently Saltbox supports 4 options:

`google`, `dropbox`, `sftp` and alternatively a path to a file ("/opt/mount-templates/custom/remote.j2") containing either jinja2 template or an actual copy of a systemd service file.
We recommend having the template file in a folder in /opt so that it moves with your install after a restore.

8. Toggles whether you intend to upload to this remote using Cloudplow.
9. Toggles whether you want this remote mount included in the union at `/mnt/unionfs`. This requires that `mount` be enabled.

10. Toggles whether you intend to upload to this remote using Cloudplow.

9. Defines the local path Cloudplow will use to upload from if the remote was upload enabled.
11. Defines the local path Cloudplow will use to upload from if the remote was upload enabled.

10. Toggle for using Rclone VFS file cache.
12. Toggle for using Rclone VFS file cache.

11. Defines the max age of files in the cache.
13. Defines the max age of files in the cache.

12. Defines the max size of the cache.
14. Defines the max size of the cache.

The cache can grow above this value in actual usage (polls the cache once a minute) so leave some headroom when using this.

13. Rclone version that Saltbox will install.
15. Rclone version that Saltbox will install.

Valid options are **latest**, **beta** or a specific version "**1.55**".

If specifying a version make sure to quote it as Ansible will convert the value into a float otherwise.

14. Shell used by the system. Valid options are bash or zsh.
16. Shell used by the system. Valid options are bash or zsh.

15. Folder used for temporary transcode files.
17. Folder used for temporary transcode files.

=== "adv_settings.yml"

Expand Down

0 comments on commit 8fe8e05

Please sign in to comment.