Skip to main content

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:

PackagePythonPurpose
ewx-public3.11Write and unit-test custom rules locally with type hints and IDE support
ewx-cli + pytest-bdd-ewx3.13Manage 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 releasePackage version
26.0226.2.0
26.0326.3.0
26.1026.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:

Installation Issues

Common issues and fixes:

  1. Authorization error to Artifact Registry:
    • Re-run gcloud auth application-default login.
    • For Poetry, refresh token export variables.
  2. ...doesn't match any versions:
    • Usually indicates auth/source configuration is missing for private packages.
  3. Plugin not loaded in pytest:
    • Confirm pytest-bdd-ewx is installed in the active environment.

If issues persist, contact support with:

  • full command
  • full error output
  • Python version
  • package manager (pip or poetry)