Skip to main content

SCP/SFTP helper for openZIM uploads to our dropbox

Project description

uploader

Dedicated container/script to upload files to openzim/kiwix warehouses and S3

Files are uploaded via SFTP (pubkey authentication) or SCP using OpenSSH.

Usage

  • Specify file to upload with --file.
  • Mount the RSA private key onto /etc/ssh/keys/id_rsa or use --private_key
  • Use an scp:// or sftp:// URI to specify target.
  • Specify a full path (with filename) to upload to a specific name or end with a / for uploading inside a folder
docker run \
    -v ~/.ssh/id_rsa:/etc/ssh/keys/id_rsa:ro \
    -v /path/:/path:rw \
    openzim/uploader \
    uploader \
    --file /path/my_file.zim \
    --upload-uri sftp://uploader@warehouse.farm.openzim.org/zim/ \
    --move \
    --delete

Parameters

  • --username: if your URI has no username, you can specify it here.
  • --move: upload to a temporary filename (<fname>.tmp) and rename it upon completion. Note that SCP is not able to do it so it uploads an <fname>.complete file upon completion instead.
  • --delete: delete source file once uploaded successfuly.
  • --compress: enable transfer compression.
  • --bandwidth: enable bandwidth limit. Set it in Kbps.
  • --cipher: change default cipher (aes128-ctr).
  • --resume: resume partially uploaded file (SFTP only)

Python

PyPI version shields.io

pip3 install openzim_uploader[all]
openzim-uploader --help
from openzim_uploader import check_and_upload_file

check_and_upload_file(
    src_path="/path/my_file.zim",
    upload_uri="sftp://uploader@warehouse.farm.openzim.org/zim/",
    private_key="~/.ssh/id_rsa",
)

Note: check_and_upload_file returns an unix-like returncode (0 on success)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openzim_uploader-1.2.tar.gz (9.6 kB view details)

Uploaded Source

Built Distribution

openzim_uploader-1.2-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file openzim_uploader-1.2.tar.gz.

File metadata

  • Download URL: openzim_uploader-1.2.tar.gz
  • Upload date:
  • Size: 9.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.27.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.55.0 CPython/3.8.14

File hashes

Hashes for openzim_uploader-1.2.tar.gz
Algorithm Hash digest
SHA256 cb6343e2bb6147c9404c47d617d194d0c8db3b4a554df343525e7fada756fa80
MD5 7446a2c2c0f513662efac42ebe31d20e
BLAKE2b-256 abe1aa3ec6e49bbd11e8853fcc343b3b84cdc00747e77d9b0f2842e1dbe9db51

See more details on using hashes here.

File details

Details for the file openzim_uploader-1.2-py3-none-any.whl.

File metadata

  • Download URL: openzim_uploader-1.2-py3-none-any.whl
  • Upload date:
  • Size: 9.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.27.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.55.0 CPython/3.8.14

File hashes

Hashes for openzim_uploader-1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 23ff1b9ff592aeea544c56bbd93bda802769998057155f23d83310b7d805f522
MD5 21cfad46d4372fa362c72ea7b4a02e11
BLAKE2b-256 c7b6f8b4d8fe89d772d04d08bd5bd2f62a3c19fe47fdca1b3821a538e7cd3fd3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page