Skip to main content

Allows to iterate over CyVerse CIRCLES files

Project description

File Iterator and IRODS Utility classes

This repo gives utility classes for handling file interactions with CIRCLES CyVerse.

It allows:

(version 1.1.2)

  • Communication with CyVerse's fileshare (ls, cd, pwd)
  • I/O Commands through IRODS
  • Iterating over files from CyVerse
  • Cache handling

(version 1.0.4, availbale on the branch stable-v1.0.4)

  • perform event analysis on a file
  • perform event analysis on all the files of a file exploration

External links

To see examples of usage of this package, you can go to: https://github.com/codingrosquick/file_iterator_code_examples

To see the published package on PyPI, go to: https://pypi.org/project/circles-file-iterator/

CONFIGURATION [if pulled repostory from PyPI]

To install everything properly, run the following command:

python3 -m pip install circles-file-iterator
python3 -m circles_file_iterator

You may need to install IRODS command line afterwards if you haven't done it. You can do so by running the following commands, and inputting the desired fields:

wget https://files.renci.org/pub/irods/releases/4.1.10/ubuntu14/irods-icommands-4.1.10-ubuntu14-x86_64.deb
sudo apt-get install -y ./irods-icommands-4.1.10-ubuntu14-x86_64.deb
iinit

you can find more information on this topic at this address: https://irods.org/download/.

If you use windows or mac OS, you can download the executable files, install, then execute the command:

iinit

Rebuilding the package for PyPI

To rebuild the package for publishing, do the following steps:

  1. Go to setup.py, increase the version number.
  2. Do the same in circles_file_iterator/__init__.py
  3. Run the following command to build the executable:
python3 -m build
  1. Run the following command to push those changes to PyPI
twine upload --repository pypi dist/* --verbose

CONFIGURATION [if pulled repostory from GitHub]

QUICKNOTE: Some of this configuration may be outdated or not stable depending on your os.

You don't need to bother with those configurations if you pull this as a package from PyPI.

Install the packages

To install the required packages, simply run in the terminal:

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

IRODS environment

To connect to CyVerse, you need your profile to be set.To retrieve this profile, the irods client tries: 1. Using the configuration file located in ~/.irods/irods_environment.json 2. If not located, the file given by the environment variable IRODS_ENVIRONMENT_FILE

WARNING: If your access to CyVerse through IRODS already works locally, there would be no need to do this step.

Once this has been done one time, there will be no need for using this method on local machines.

If you are working within Docker containers or VMs environment, you may need to call this at the beginning of each task.

Cache folders

To configure the cache, open the file /global_variables/global_variables.py.

Then set the variable local_path to the root of the folder you will be working into. Check out the file example_irods for an example of such configuration.

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

circles-file-iterator-1.1.2.tar.gz (16.4 kB view hashes)

Uploaded Source

Built Distribution

circles_file_iterator-1.1.2-py3-none-any.whl (19.1 kB view hashes)

Uploaded Python 3

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