Automated environment parsing for AiiDAlab apps.
Project description
repo2env
Determine the environment specification for a given (app) repository.
This tool parses an (app) repository and determines requirements similar to repo2docker. But instead of generating a docker image it returns a specification that can then be used to build the environment.
Installation
The easiest way to install this tool is either directly with pip:
~ $ pip install git+https://github.com/aiidalab/repo2env.git
Or clone the repository first and then install:
~ $ git clone https://github.com/aiidalab/repo2env.git
~ $ cd repo2env/
~/repo2env $ pip install .
Usage
Use the repo2env
command to parse the environment of a local or remote (app) repository:
For a local repository, just provide the path:
~ $ repo2env /path/aiidalab-hello-world/
{"python_requirements": ["aiidalab>=20.02.0b2"]}
For a remote repository, provide a PEP 508 compliant URL, for example:
~ $ repo2env git+https://github.com/aiidalab/aiidalab-hello-world.git@v1.0.0
{"python_requirements": ["aiidalab>=20.02.0b2"]}
The output is JSON-formatted and can then be used for further processing.
Tip: Use jq to generate pretty-printed output for manual inspection:
$ repo2env ~/local/aiidalab/aiidalab-hello-world/ | jq .
{
"python_requirements": [
"aiidalab>=20.02.0b2"
]
}
What is parsed
setup.cfg
: If present, theoptions.install_requires
list is parsed intopython_requirements
.requirements.txt
Is parsed intopython_requirements
if present andsetup.cfg
is not present.
Acknowledgements
This work is supported by the MARVEL National Centre for Competency in Research funded by the Swiss National Science Foundation, as well as by the MARKETPLACE project funded by Horizon 2020 under the H2020-NMBP-25-2017 call (Grant No. 760173).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file repo2env-0.1.2.tar.gz
.
File metadata
- Download URL: repo2env-0.1.2.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.7.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96e96d3c0307e1c8cbae04d2a22e160d7c27185db43be895254cff3b41fe54b9 |
|
MD5 | 5bfd50cbf56eab5ea56bd95116f89b62 |
|
BLAKE2b-256 | c55698b866fcabdcd55a16361d4dd372e24b16a817d1aff0ef8e0a7f25974508 |
File details
Details for the file repo2env-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: repo2env-0.1.2-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.1 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.7.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3d8172562d948530069bf31d86a40a0f600b11038a6a352ada2d8dcf8eeee37e |
|
MD5 | 18de3bfaa68d0c90c92a310994194d00 |
|
BLAKE2b-256 | 627a671f55207e13ba5e0d6c8ff7e720319f9e25b4412ddd304123841c6ff0f6 |