Merge branch 'master' into ssh_agent_support
This commit is contained in:
commit
80cc767c25
14
README.md
14
README.md
@ -28,4 +28,16 @@ TODO
|
|||||||
## How to use
|
## How to use
|
||||||
Place a `servers.json` in the Pie Cannon data directory. For GNU/Linux this is `XDG_DATA_HOME` (by default this would be `~/.local/share/piecannon`) (create this directory if it does not exist. For Android this would be the app's "externalFilesDir" (probably something like `Android/data/net.monarchpass.piecannon/files` - the app will tell you when you launch it). See `servers.example.json` for an example of such a file. Whenever you initiate a file upload, Pie Cannon will select one of your defined servers at random and upload the file.
|
Place a `servers.json` in the Pie Cannon data directory. For GNU/Linux this is `XDG_DATA_HOME` (by default this would be `~/.local/share/piecannon`) (create this directory if it does not exist. For Android this would be the app's "externalFilesDir" (probably something like `Android/data/net.monarchpass.piecannon/files` - the app will tell you when you launch it). See `servers.example.json` for an example of such a file. Whenever you initiate a file upload, Pie Cannon will select one of your defined servers at random and upload the file.
|
||||||
|
|
||||||
For FTP/SFTP servers (the only supported types as of now), the `path` is relative to your home directory and should be where `url` points to. i.e. a file uploaded to `path` should be downloadable at `url`. In the future Pie Cannon should be able to get SSH credentials from your agent so you won't need to put a password in this file.
|
#### Server Types
|
||||||
|
The `type` field in the server configuration tells Pie Cannon what type of server to use. The default value is `webdav`.
|
||||||
|
|
||||||
|
##### WebDAV (`webdav`)
|
||||||
|
For WebDAV servers, `url` is where the file is uploaded to and served from. `username` and `password`, if given, are HTTP Basic authentication credentials.
|
||||||
|
|
||||||
|
For setting this up with nginx, see [ngx_http_dav_module](https://nginx.org/en/docs/http/ngx_http_dav_module.html) documentation and also [HTTP Basic Authentication](https://docs.nginx.com/nginx/admin-guide/security-controls/configuring-http-basic-authentication/) guide.
|
||||||
|
|
||||||
|
##### FTP/SFTP (`ftp`/`sftp`)
|
||||||
|
For FTP/SFTP servers, the `path` is relative to your home directory and should be where `url` points to. i.e. a file uploaded to `path` should be downloadable at `url`. In the future Pie Cannon should be able to get SSH credentials from your agent so you won't need to put a password in this file.
|
||||||
|
|
||||||
|
##### GoFile.io (`gofile`)
|
||||||
|
No configuration options are supported for this currently, however in the future there may be support for using a token. Note that it's not possible to get a direct download link for this service without visiting a page first, so Pie Cannon returns the URL for that page instead of a direct download link.
|
||||||
|
@ -25,7 +25,7 @@ public class ServerFactory implements Function<JsonObject, Server> {
|
|||||||
.orElse("webdav");
|
.orElse("webdav");
|
||||||
|
|
||||||
if (type.equals("webdav")) {
|
if (type.equals("webdav")) {
|
||||||
return makeWebDavServer(object);
|
return makeWebDavServer(object);
|
||||||
} else if (type.equalsIgnoreCase("gofile")) {
|
} else if (type.equalsIgnoreCase("gofile")) {
|
||||||
return new GoFileServer(Optional.ofNullable(object.getAsJsonPrimitive("label")).map(JsonPrimitive::getAsString).orElse("GoFile"));
|
return new GoFileServer(Optional.ofNullable(object.getAsJsonPrimitive("label")).map(JsonPrimitive::getAsString).orElse("GoFile"));
|
||||||
} else if (type.equalsIgnoreCase("ftp")) {
|
} else if (type.equalsIgnoreCase("ftp")) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user