mirror of
https://github.com/ViViDboarder/drone-webdav.git
synced 2024-12-30 09:07:34 +00:00
A Drone plugin to push files to webdav
2d66c38714
Fix author key |
||
---|---|---|
.github/workflows | ||
tests | ||
.dockerignore | ||
.pre-commit-config.yaml | ||
Dockerfile | ||
docs.md | ||
Makefile | ||
push.sh | ||
Readme.md |
drone-webdav
A Drone CI / Woodpecker CI plugin, that will allow pushing build artifacts to any WebDAV server, including Nextcloud or ownCloud.
Examples
An example configuration would be as follows:
pipeline:
upload_debug:
image: vividboarder/drone-webdav
settings:
file: com.vividboarder.otbeta/build/outputs/apk/com.vividboarder.otbeta-debug.apk
destination: https://my.nextcloud.com/remote.php/dav/files/vividboarder/Android/Apks/
username: myusername
password: mypassword
You probably don't want to check your credentials into your repo, so you may use secrets for this:
pipeline:
upload_debug:
image: vividboarder/drone-webdav
settings:
file: com.vividboarder.otbeta/build/outputs/apk/com.vividboarder.otbeta-debug.apk
destination: https://my.nextcloud.com/remote.php/dav/files/vividboarder/Android/Apks/
username:
from_secret: WEBDAV_USER
password:
from_secret: WEBDAV_PASSWORD
FAQ
How do I upload multiple files at once?
Since this script uses curl to upload your files, you can use it's corresponding syntax.
An example, taken from the official documentation, would be to pass {dogs.png,cats.jpg}
to PLUGIN_FILE
.
Customization
The following environment variables can be used for further cutomization:
Variable | Description |
---|---|
PLUGIN_PROXY_URL |
May be used to specify a proxy (e.g. socks5://{ip_address}:{port} ) |
PLUGIN_TIMEOUT |
Defines a timeout (in seconds) to stop the upload after a certain time. |
PLUGIN_ATTEMPTS |
Defines how often a failed upload should be retried. Normally there is only one upload attempt. |
PLUGIN_CUSTOM_ARGUMENTS |
Additional arguments to be passed to curl . |
Development
There are only two tests right now and they are configured using Docker Compose. To run them, just use
make test
If someone wants to make this better (or add a Drone file) I'd gladly accept the patch.