class CustomPayload(Payload): custom_property: str = prop(SOME_CUSTOM_PROPERTY) runtime: str = constraint(inf.INF_RUNTIME_NAME, default=RUNTIME_NAME) min_mem_gib: float = constraint(inf.INF_MEM, operator=">=", default=16) min_storage_gib: float = constraint(inf.INF_STORAGE, operator=">=", default=1024)
class _VmConstraints(Model): min_mem_gib: float = prop_base.constraint(inf.INF_MEM, operator=">=") min_storage_gib: float = prop_base.constraint(inf.INF_STORAGE, operator=">=") min_cpu_threads: int = prop_base.constraint(inf.INF_THREADS, operator=">=") capabilities: List[VmCaps] = prop_base.constraint( "golem.runtime.capabilities", operator="=", default_factory=list) runtime: str = prop_base.constraint(inf.INF_RUNTIME_NAME, operator="=", default=RUNTIME_VM) def __str__(self): return prop_base.join_str_constraints( prop_base.constraint_model_serialize(self))
class ErigonPayload(Payload): runtime: str = constraint(inf.INF_RUNTIME_NAME, "=", ERIGON_RUNTIME_NAME) min_mem_gib: float = constraint(inf.INF_MEM, ">=", 0.5) min_storage_gib: float = constraint(inf.INF_STORAGE, ">=", 0.5)
class Foo(props_base.Model): bar: str = props_base.prop("bar", "cafebiba") max_baz: int = props_base.constraint("baz", "<=", 100) min_baz: int = props_base.constraint("baz", ">=", 1) lst: list = props_base.constraint("lst", "=", default_factory=list)
class FooToo(props_base.Model): baz: int = props_base.constraint("baz", "=", 21)
class CustomCounterServicePayload(Payload): runtime: str = constraint(inf.INF_RUNTIME_NAME, default="test-counters")