README.rst

Mon, 08 Jan 2018 14:59:21 +0100

author
Moritz Wanzenböck <moritz.wanzenboeck@catalysts.cc>
date
Mon, 08 Jan 2018 14:59:21 +0100
changeset 29
3e3e5bda6b77
parent 12
9cc8d8d69af7
child 30
4669876326d4
permissions
-rw-r--r--

Refactor argument parsing + New commands

* Restructured argument parsing to use subcommands.
* Move some common options to requests session (auth + verify)
* Allow for a common location for settings file (~/.scc_access.yaml)
* Update Readme
* Add option to list available files
* Add option to download existing files

victor@7 1 Overview
ioannis@0 2 =================
ioannis@0 3
victor@7 4 This package provides a script which permits interacting with the
victor@7 5 Single Calculus Chain through the command line. Specifically, with the script you can:
ioannis@0 6
ioannis@0 7 * Upload a file to the SCC for processing
ioannis@0 8 * Download the processed files and graphs
ioannis@0 9 * Delete an existing measurement from the SCC (with appropriate privileges)
ioannis@0 10
ioannis@0 11 The main functions are implemented in a class (SCC) that you can also import
ioannis@0 12 and use in your custom scripts.
ioannis@0 13
ioannis@0 14 The script does not provide any feedback if a file upload fails. Before using
ioannis@0 15 the script, you will need to upload some files manually and be confident that
ioannis@0 16 your SCC file format and processing settings are correct.
ioannis@0 17
i@12 18 Please note that this is not part of the "official" SCC tools.
ioannis@0 19
ioannis@0 20 Any suggestions for improvements and new features are more than welcome.
ioannis@0 21
ioannis@1 22
ioannis@0 23 Installation
ioannis@0 24 ------------
ioannis@0 25
victor@9 26 The easiest way to install this module is from the python package index using pip::
victor@8 27
victor@8 28 pip install scc_access
ioannis@0 29
ioannis@0 30 See http://docs.python-requests.org/en/latest/user/install/ for more details.
ioannis@0 31
victor@7 32 You can also use the script by cloning this mercurial repository. Alternatively, you
victor@7 33 can just copy the scc_access.py and and settings.sample.py files to a local
ioannis@1 34 directory.
ioannis@1 35
ioannis@0 36
ioannis@0 37 Settings
ioannis@0 38 --------
moritz@29 39 You will need to change some user-defined settings in a settings.yaml file. You
moritz@29 40 can copy the settings_sample.yaml file to settings.py and follow the instructions
moritz@29 41 there. You can copy the resulting file to your home directory as `.scc_access.yaml`.
moritz@29 42 This is the default location, `scc_access` will search there if no other location was
moritz@29 43 specified.
ioannis@0 44
ioannis@0 45 Specifically, you will need to:
ioannis@0 46
moritz@29 47 1. Change the `basic_credentials` and `website_credentials` to your credentials.
moritz@29 48 2. Change the `output_dir` to the location were the results will be stored.
ioannis@0 49
ioannis@0 50 Please not that it's not a good idea to store your own credentials in the settings
ioannis@0 51 file. The standard user has "Station Management" privileges and if the credentials
ioannis@0 52 are stolen, someone could change/delete the stations settings from the SCC database.
ioannis@0 53 For this, it is better to use a used account with minimum access settings, that
ioannis@0 54 can only upload files and measurements.
ioannis@0 55
ioannis@0 56
ioannis@0 57 Usage
ioannis@0 58 -----
ioannis@0 59
ioannis@0 60 You can upload a file specifying the username and the system id::
victor@8 61
moritz@29 62 scc_access upload-file 20110101po01.nc 125
ioannis@0 63
ioannis@0 64 If you want to wait for the processing to finish and download the resulting files
moritz@29 65 you need to define the `process-file` command. Use the `-p` flag to wait for the
moritz@29 66 result::
victor@8 67
moritz@29 68 scc_access process-file 20110101po01.nc 125 -p
ioannis@0 69
moritz@29 70 If you want to delete an existing measurement id from the database use the `delete`
moritz@29 71 command and the measurement id::
victor@8 72
moritz@29 73 scc_access delete 20110101po01
moritz@29 74
moritz@29 75 You can list available measurements with the `list` command::
moritz@29 76
moritz@29 77 scc_access list
ioannis@0 78
ioannis@0 79 For more information on the syntax type::
victor@8 80
victor@9 81 scc_access -h

mercurial