Cleanup: parameters: extra=forbid, optimize: battery, inverter optional (#361)

* Cleanup: parameters: extra=forbid, optimize: battery, inverter optional

 * Don't allow extra fields for parameters/REST-API (at least for now while
   changing API).
 * Allow both battery and inverter to be set optionally (atm optional
   battery not implemented, no API constraints).
 * inverter: Remove default max_power_wh
 * single_test_optimization: Add more cli-parameters

* Workflow docker-build: Don't try to authenticate for PRs

 * Secrets are not available anyway for forks.
This commit is contained in:
Dominique Lasserre
2025-01-13 21:44:17 +01:00
committed by GitHub
parent 745086c2eb
commit 9ad61f66b2
12 changed files with 119 additions and 109 deletions

View File

@@ -1,17 +1,18 @@
from typing import Optional
from pydantic import BaseModel, Field
from pydantic import Field
from scipy.interpolate import RegularGridInterpolator
from akkudoktoreos.core.logging import get_logger
from akkudoktoreos.core.pydantic import ParametersBaseModel
from akkudoktoreos.devices.battery import Battery
from akkudoktoreos.devices.devicesabc import DeviceBase
logger = get_logger(__name__)
class InverterParameters(BaseModel):
max_power_wh: float = Field(default=10000, gt=0)
class InverterParameters(ParametersBaseModel):
max_power_wh: float = Field(gt=0)
class Inverter(DeviceBase):