Python software developer kit for the Omnia Timeseries API.
Project description
OMNIA Timeseries SDK for Python
Python software developer kit for the Omnia Timeseries API.
General
About
This is the Python SDK for developers and data scientists working with Omnia Timeseries. The package integrates with pandas to help you work easily and efficiently with the data.
Getting started
Run the below command in a Python environment to install the latest release
pip install omnia_timeseries_sdk
.. or upgrade existing installation
pip install --upgrade omnia_timeseries_sdk
Import the Omnia client in your own scripts...
from omnia_timeseries_sdk import OmniaClient
... and get to work. Here is an introduction.
Authentication
The SDK supports authentication by user impersonation and using a shared secret
When accessing Omnia from a service with a shared client secret you must set the following environmental variables. The values are provided by the Omnia administrators.
set omniaResourceId="omnia-resource-id"
set omniaClientId="your-client-id"
set omniaClientSecret="very-very-secret-shared-key"
Take a look at the resources listed below to learn more.
Resources
Contribute
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Prerequisites
Install Python version 3.7 or later from either https://www.python.org or https://www.anaconda.com.
Clone the source code repository
At the desired location, run:
git clone https://github.com/equinor/omnia-timeseries-sdk-python.git
Installing
To get the development environment running:
... create an isolated Python environment and activate it,
python -m venv /path/to/new/virtual/environment
/path/to/new/virtual/environment/Scripts/activate
... install the dev dependencies in requirements.txt,
pip install -r requirements.txt
.. and install the package in development mode.
python setup.py develop
You should now be able to import the package in the Python console,
import omnia_timeseries_sdk
help(omnia_timeseries_sdk)
Running the tests
We apply the unittest and pyteset frameworks.
Run the tests and check test coverage by
pytest --cov=omnia_timeseries_sdk --cov-report term-missing tests/
Building the package
Build tarball and wheel distributions by:
python setup.py sdist bdist_wheel
The distribution file names adhere to the PEP 0427
convention {distribution}-{version}(-{build tag})?-{python tag}-{abi tag}-{platform tag}.whl
.
Deployment
The package releases are deployed to PyPi.
We use GitHub Actions to automate the build and deployment (CI-CD).
Versioning
We apply the "major.minor.micro" versioning scheme defined in PEP 440.
We cut a new version by applying a Git tag like 0.1.0
at the desired commit and then
setuptools_scm takes care of the rest at build time.
See the tags on this repository.
Authors
- Per Voie - tovop
License
This project is licensed under the MIT License - see the LICENSE file for details.
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
Hashes for omnia_timeseries_sdk-0.2.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e6e252ac063636aadaddfd2a7bb1ed3e24ce2b4414ecf8eca137823819c6d1c |
|
MD5 | f8c29e961b64f7fc7a99508dd7f9e6b4 |
|
BLAKE2b-256 | f6b1a66da8e0dc42dfde889e97d02cfb9eacf0b02904addb184df12ceb25dc8c |
Hashes for omnia_timeseries_sdk-0.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1012e2046626db41237f4f015b282fa3945b2fafb8112a1ca8418866cbd35815 |
|
MD5 | 6e013af4adde4f715e529606295ed4cd |
|
BLAKE2b-256 | 3e3856e708941ccfd1b50d0fe0c087cc9761e1e57f3cab669b599a82243dc27e |