Skip to main content

Nieuwe Warmte Nu - compute engine sdk python

Project description

Compute engine sdk python

Nieuwe Warmte Nu

Usage

Install in development mode, in root directory:

pip install -e .

or install from pypi:

pip install nwnsdk

For testing locally with RabbitMQ and Postgres on docker desktop clone https://github.com/Nieuwe-Warmte-Nu/computation-engine, copy .env-template to .env and in the root directory:

docker-compose up

Example usage

from uuid import uuid4
from nwnsdk import NwnClient, WorkFlowType, PostgresConfig, RabbitmqConfig

postgres_config = PostgresConfig(
    "localhost",
    5432,
    "nieuwewarmtenu",
    "root",
    "1234",
)
rabbitmq_config = RabbitmqConfig(
    "localhost",
    5672,
    "nwn",
    "root",
    "5678",
)
nwn_client = NwnClient(postgres_config, rabbitmq_config)
try:
    nwn_client.connect()
    job_id1: uuid4 = nwn_client.start_work_flow(
        WorkFlowType.GROW_OPTIMIZER, "test_job1", "esdl_string", "test_user1", "test_proj"
    )
    job_id2: uuid4 = nwn_client.start_work_flow(
        WorkFlowType.GROW_OPTIMIZER, "test_job2", "esdl_string", "test_user2", "test_proj"
    )
    print(job_id1)
    
    job1_input_esdl = nwn_client.get_job_input_esdl(job_id1)
    print(f"===== job1 input ESDL: {job1_input_esdl}")
    
    job1_status = nwn_client.get_job_status(job_id1)
    print(f"===== job1 status: {job1_status}")
    
    job1 = nwn_client.get_job_details(job_id1)
    print(f"===== {job1.job_name} input esdl: {job1.input_esdl}")
    
    jobs_all = nwn_client.get_all_jobs()
    print(f"===== {jobs_all[1].job_name} added at: {jobs_all[1].added_at}")
    
    
    jobs_from_ids = nwn_client.get_jobs_from_ids([job_id1, job_id2])
    print(f"===== {jobs_from_ids[1].job_name} added at: {jobs_from_ids[1].added_at}")
    
    
    jobs_from_user = nwn_client.get_jobs_from_user("test_user1")
    print(f"===== Jobs from test_user1 added at: {','.join([str(job.added_at) for job in jobs_from_user])}")
    
    
    jobs_from_project = nwn_client.get_jobs_from_project("test_proj")
    print(f"===== Jobs from test_proj added at: {','.join([str(job.added_at) for job in jobs_from_project])}")
    
    print(f"===== Deleted job with id '{job_id1}': {nwn_client.delete_job(job_id1)}")
finally:
    nwn_client.stop()

Release

This package is released on pypi here whenever a new tag is pushed. In order to release this package:

  1. Make sure that all relevant merge requests and commits have been merged to the main and/or poc-release branch.
  2. Run git checkout main or git checkout poc-release to switch to the release branch.
  3. Run git pull origin main or git pull origin poc-release to pull all latest changes.
  4. Run git tag <new_version> where <new_version> is the new version number.
  5. Run git push origin <new_version> to push the tag to Github.
  6. Check Github to confirm the release is processed without errors.
  7. Once the release has finished, confirm the new version is available on pypi.

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

nwnsdk-0.0.12.tar.gz (21.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nwnsdk-0.0.12-py3-none-any.whl (22.0 kB view details)

Uploaded Python 3

File details

Details for the file nwnsdk-0.0.12.tar.gz.

File metadata

  • Download URL: nwnsdk-0.0.12.tar.gz
  • Upload date:
  • Size: 21.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for nwnsdk-0.0.12.tar.gz
Algorithm Hash digest
SHA256 0ab5a102755400ac64e25a237456e3b0d1dfbf6e8b724a2c5902439c20422f90
MD5 38f4c201f8feb1be04178e0c8b1bcbd8
BLAKE2b-256 36a6f4f7ad4d307fd17af84bd8696f1638dd993841bee8791f15226ed5c0ad8c

See more details on using hashes here.

File details

Details for the file nwnsdk-0.0.12-py3-none-any.whl.

File metadata

  • Download URL: nwnsdk-0.0.12-py3-none-any.whl
  • Upload date:
  • Size: 22.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for nwnsdk-0.0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 2276d7617a9cbabf1eea4b4c28f6c574277fecf6df3e60eef278bcb661c10993
MD5 7e329dfc7e8f5eae242b195b2b1103e2
BLAKE2b-256 8f07fd2dfebdbe1b97df0059fb9b1129f9a25455bb864d631878074ef1d42441

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page