🐳 Ocean Provider.
Project description
provider-py
REST API for provider of data services
This is part of the Ocean Protocol V3 tools.
This is feature complete and is a BETA version.
Starting the server locally
Quick start
Uses the rinkeby network with a remote metadatastore instance running at https://aquarius.marketplace.dev-ocean.com
git clone git@github.com:oceanprotocol/provider-py.git
cd provider-py/
virtualenv venv -p python3.6
source venv/bin/activate
pip install -r requirements_dev.txt
export FLASK_APP=ocean_provider/run.py
export CONFIG_FILE=config.ini
export PROVIDER_ADDRESS="068ed00cf0441e4829d9784fcbe7b9e26d4bd8d0"
export PROVIDER_PASSWORD="secret"
export PROVIDER_KEYFILE="tests/resources/provider_key_file.json"
export AQUARIUS_URL="https://aquarius.marketplace.dev-ocean.com"
export PARITY_ADDRESS1="0x00bd138abd70e2f00903268f3db08f2d25677c9e"
export PARITY_PASSWORD1="node0"
export PARITY_KEYFILE1="tests/resources/consumer_key_file.json"
flask run --port=8030
Detailed steps
1. Clone the repo
git clone git@github.com:oceanprotocol/provider-py.git
cd provider-py/
2. Virtual env (optional)
Before running it locally we recommend to set up virtual environment:
virtualenv venv -p python3.6
# OR: python -m venv venv
source venv/bin/activate
3. Requirements
Install all the requirements:
pip install -r requirements_dev.txt
4. Dependencies
Metadata store (Aquarius). Do one of the following:
- Run Aquarius locally, see https://github.com/oceanprotocol/aquarius
- Point to a remote instance such as
https://aquarius.marketplace.dev-ocean.com
. In this case replace theaquarius.url
option in theconfig.ini
file with the appropriate URL.
Ethereum network. Do one of the following:
- Run ganache-cli
- Point to rinkeby testnet or any other ethereum network
Make sure that ocean contracts (https://github.com/oceanprotocol/contracts) are deployed to the your network of choice.
Update the network
option in the config.ini
file with the proper network URL. For now it must be a URL, a simple network name (e.g. mainnet) will be supported in the future.
5. Start the provider server
export FLASK_APP=ocean_provider/run.py
export CONFIG_FILE=config.ini
export PROVIDER_ADDRESS="your ethereum address goes here"
# Set one of the following
export PROVIDER_KEY="the private key"
export PROVIDER_ENCRYPTED_KEY="The encrypted key json from the keyfile"
export PROVIDER_KEYFILE="path to the keyfile which has the encrypted key"
# and set the password if using either PROVIDER_KEYFILE or PROVIDER_ENCRYPTED_KEY
export PROVIDER_PASSWORD="password to allow decrypting the encrypted key"
flask run --port=8030
Refer to the API.md file for endpoints and payloads.
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
File details
Details for the file ocean-provider-py-plus-0.3.6.tar.gz
.
File metadata
- Download URL: ocean-provider-py-plus-0.3.6.tar.gz
- Upload date:
- Size: 33.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.1.0 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f10fc275187e80b54c90bd07e38a995c702db0633c2610fd05061934baa56516 |
|
MD5 | afa7527b5527d1420bb4626ee85f1b26 |
|
BLAKE2b-256 | 8796c99dc4c19ab865d602a885a1d523ab74bf86fbb736bb7f416c53117036e7 |