drop

Uploads data to a remote www directory via scp and returns a public url.

https://github.com/cod3monk/drop

Science Score: 23.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 2 committers (50.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.9%) to scientific vocabulary
Last synced: 11 months ago · JSON representation

Repository

Uploads data to a remote www directory via scp and returns a public url.

Basic Info
  • Host: GitHub
  • Owner: cod3monk
  • Language: Python
  • Default Branch: master
  • Size: 17.6 KB
Statistics
  • Stars: 2
  • Watchers: 2
  • Forks: 2
  • Open Issues: 0
  • Releases: 0
Created over 11 years ago · Last pushed over 2 years ago
Metadata Files
Readme

README.rst

drop
====

Uploads data to a remote www directory via scp and returns a public url.

Install
-------
Easiest way is to install via pip::

    pip install drop

there are currently no dependencies other than python 2.7 or python 3.4.

To install manually: copy drop/drop.py to any location of your preference

Configure
---------
A configuration file is required, it can be located at /etc/drop.cfg, ~/.drop.cfg or it's location passed via command line option --config-file.

A sample config file would be::
    
    [DEFAULT]
    # reference to the default destination (section name):
    destination = hawo

    # You can set the following defaults:
    # Location of the scp command, can be relative or absolute path:
    scp = scp
    # default length (in characters) for hashfilenames (max. 28)
    hashlength = 28
    # default chmod to apply to uploaded files (already applied localy and uploaded with -p)
    # 436 this is 0o644
    chmod = 436

    # Destinations:
    [hawo]
    # remote server dns or alias from .ssh/config and may also include username (user@server):
    remoteserver = ente
    # remote directory can be relative (to home directory) or absolute:
    remotedir = public_html/d/
    # publishing url, this must represent the above directory:
    url = https://hawo.net/~sijuhamm/d/
    # all defaults can be overwritten for any destination. For example the hashlength:
    hashlength = 10

The DEFAULT section configures default values for all other sections and the default destination. All other sections are so called destination sections. They can be selected via the --destination command line parameter.


Usage
-----
You can pase a file by argument::

    $ drop defaults.cfg
    https://hawo.net/~sijuhamm/d/NcT0jFb5.cfg
    
multiple files (will automatically be zipped)::

    $ drop 1.txt 2.txt 3.txt
    https://hawo.net/~sijuhamm/d/1AKBbka7.zip
    
or any content via stdin::

    $ date | ./drop.py
    https://hawo.net/~sijuhamm/d/ephtK9DY

The filename at the remote location is actually a partial sha1 checksum of the file. The length of the checksum can be set in the configuration file. The extension is preserved when possible, but can also be overwritten with the --extension parameter. If the original file name is to be preserved, use -p or --preserve-name, this will create an intermediate directory based on the checksum and place the file inside to preserve its name, while keeping its URL unguessable.

The full help message reads as follows::

    usage: drop [-h] [--destination DESTINATION] [--list-destinations]
                [--preserve-name] [--extension EXTENSION] [--config-file CONFIG_FILE]
                [--test] infile [infile ...]

    Uploads data to a remote www directory via scp and returns a public url.

    positional arguments:
      infile                File to upload. If multiple are passed, they will be
                            archived and compressed before uploading.

    optional arguments:
      -h, --help            show this help message and exit
      --destination DESTINATION, -d DESTINATION
                            Name of destination as found in configuration file.
      --list-destinations, -l
                            List all destinations defined in configuration file.
      --preserve-name, -p   Will preserve original filename at remote location, by
                            adding an intermediate directory.
      --extension EXTENSION, -e EXTENSION
                            Overwrites extension on uploaded file.
      --config-file CONFIG_FILE, -c CONFIG_FILE
      --test                Runs a test on destination.

TODOs
-----
Upcoming features:
 * (maybe) support for other upload destinations
 * support more compression/archiving formats

Owner

  • Name: Julian
  • Login: cod3monk
  • Kind: user
  • Location: Germany
  • Company: University of Erlangen-Nuremberg

GitHub Events

Total
Last Year

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 22
  • Total Committers: 2
  • Avg Commits per committer: 11.0
  • Development Distribution Score (DDS): 0.091
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
cod3monk c****k@u****g 20
Max Gaukler d****t@m****e 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 12 months ago

All Time
  • Total issues: 0
  • Total pull requests: 2
  • Average time to close issues: N/A
  • Average time to close pull requests: about 12 hours
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 1.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • mgmax (2)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 56 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 5
  • Total versions: 7
  • Total maintainers: 1
pypi.org: drop

Uploads data to a remote www directory via scp and returns a public url.

  • Versions: 7
  • Dependent Packages: 0
  • Dependent Repositories: 5
  • Downloads: 56 Last month
Rankings
Dependent repos count: 6.6%
Dependent packages count: 10.0%
Average: 16.7%
Forks count: 19.1%
Downloads: 20.1%
Stargazers count: 27.8%
Maintainers (1)
Last synced: 11 months ago

Dependencies

setup.py pypi
  • pyperclip *