Skip to main content

Energyworx Shareable Packages

Energyworx publishes four Python packages to Google Artifact Registry for customers and implementation partners. Pick the one that matches what you want to do:

I want to…PackagePython
Write custom rules in my IDE with type hints and unit-test them before uploadingewx-public3.11 only
Move flows, rules and other configurations between namespaces, keep them in git, roll a release backewx-cli3.10 to 3.14
Run Gherkin scenarios against a live environment, locally or from a pipelinepytest-bdd-ewx (installs ewx-cli too)3.13 to 3.14
Deploy the standard Energy Data Management packages (VEE, master data, billing, device control, energy communities)standard-packages3.11 to 3.14

ewx-public is the only package that needs its own virtual environment, because it is pinned to the Python version the platform runs rules with. The other three can share one environment.

standard-packages is separately licensed

standard-packages is a paid add-on. It is published to a dedicated, access-restricted repository and access is granted only to organizations with a standard-packages agreement. See standard-packages.

Versioning​

Package versions track the platform release: for platform release YY.MM the package version is YY.M.0, with the month not zero-padded. All four packages follow the same rule, so one platform release means one version to pin everywhere.

Platform releasePackage version
26.0226.2.0
26.08 (current examples)26.8.0
26.1026.10.0

Pin to the version that matches the platform release your environment is on. The current release is shown in the bottom-left corner of the console and in the release notes; ask Service Desk if you are unsure. Older 2.x versions such as ewx-cli==2.11.0 are no longer published and fail with Could not find a version that satisfies the requirement.

Prerequisites​

The same three prerequisites apply to every package:

  • Python (see the version range on this page)
  • The gcloud CLI
  • A Google Account with access to the python-shared repository in the ewx-global Artifact Registry project. Ask Service Desk to grant it if you do not have it yet.

Authenticate once per machine:

gcloud auth application-default login

Each package page then gives the complete pip and uv installation for that package, for macOS/Linux and Windows.

Installation issues​

SymptomCause and fix
401/403 or Authorization error from pkg.devYour Google Account is not authenticated or has no access to the repository. Re-run gcloud auth application-default login; if it persists, ask Service Desk to check your access. With uv, re-export UV_INDEX_EWX_GLOBAL_PASSWORD, the token expires after an hour.
No matching distribution or doesn't match any versionspip is not looking at the Energyworx index (check --index-url) or the pinned version does not exist. Pins follow the platform release, see Versioning; 2.x versions are no longer published.
keyring backend not foundInstall keyring keyrings.google-artifactregistry-auth in the same environment before running pip install against the index.
Activate.ps1 cannot be loaded (Windows)Run Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned once and reopen PowerShell.
Plugin not loaded in pytestConfirm pytest-bdd-ewx is installed in the active environment (pip show pytest-bdd-ewx).

If the problem persists, contact Service Desk with the full command, the full error output, your Python version and whether you use pip or uv.