The PowerOps SDK is a domain-specific SDK for interacting with Cognite Data Fusion (CDF) for the power operations' domain.
cognite.powerops.client.PowerOpsClient
used to interact with CDF in a domain-specific language.- Resource Sync,
resync
, used to sync configuration files with CDF through the CLI toolpowerops
.
pip install cognite-power-ops
Configuration of the PowerOpsClient
and resync
is done through settings files.
The settings file are in .toml
format. By default, the SDK will look for two settings files:
settings.toml
in the current directory..secrets.toml
in the current directory.
The motivation for splitting them is to avoid checking in secrets into Git.
Example of settings files:
settings.toml
:
[cognite]
login_flow = "interactive"
project = "<cdf-project>"
tenant_id = "<tenant-id>"
cdf_cluster = "<cdf-cluster>"
client_id = "<client-id>"
[powerops]
read_dataset = "uc:000:powerops"
write_dataset = "uc:000:powerops"
monitor_dataset = "uc:po:monitoring"
cogshop_version = ""
.secrets.toml
[cognite]
client_secret = "<client-secret>"
Note: You can configure which settings files to use by setting the environment variable SETTINGS__FILES
to a semicolon-separated list of file names.
import os
os.environ["SETTINGS_FILES"] = ".my_settings.toml;.secrets.my_secrets.toml"
See available commands:
$ powerops --help
Example of showing planned changes:
$ powerops plan tests/data/demo Dayahead
from cognite.powerops.client import PowerOpsClient
client = PowerOpsClient.from_settings()
client.shop.runs.trigger()
For more examples, see the examples section of the documentation.