Energyworx Sharable Packages
Energyworx publishes customer-facing packages to Google Artifact Registry. Each package serves a different purpose and has its own Python version requirement:
| Package | Python | Purpose |
|---|---|---|
| ewx-public | 3.11 | Write and unit-test custom rules locally with type hints and IDE support |
| ewx-cli + pytest-bdd-ewx | 3.13 | Manage configurations and run automated BDD tests against a live environment |
Because the Python version requirements differ, use separate virtual environments for each.
Versioning
Shared package versions track the platform release. For platform release YY.MM, the matching package version is YY.M.0 (the month is not zero-padded in the package version).
| Platform release | Package version |
|---|---|
| 26.02 | 26.2.0 |
| 26.03 | 26.3.0 |
| 26.10 | 26.10.0 |
Pin the package to the version that matches the platform release you target. Older 2.x style versions (e.g. ewx-cli==2.11.0) are no longer published — pinning to one will fail with Could not find a version that satisfies the requirement.
The current platform release is shown in the bottom-left of the Energyworx console (or in the release notes); ask Service Desk if you are unsure which release your environment is on.
Prerequisites (shared)
- gcloud CLI
- Access to Artifact Registry project
ewx-global
Authenticate with gcloud
gcloud auth application-default login
For detailed installation instructions, see the dedicated package pages:
- ewx-public — install
ewx-publicfor writing and unit-testing custom rules locally. See Local Rule Development for the full rule-development workflow. - pytest-bdd-ewx — install
ewx-cliandpytest-bdd-ewxfor running automated BDD scenarios against a live environment. See Automated Platform Testing for the testing workflow.
Installation Issues
Common issues and fixes:
Authorization errorto Artifact Registry:- Re-run
gcloud auth application-default login. - For Poetry, refresh token export variables.
- Re-run
...doesn't match any versions:- Usually indicates auth/source configuration is missing for private packages.
- Plugin not loaded in pytest:
- Confirm
pytest-bdd-ewxis installed in the active environment.
- Confirm
If issues persist, contact support with:
- full command
- full error output
- Python version
- package manager (
piporpoetry)