Metadata-Version: 2.4
Name: mfd-powermanagement
Version: 1.12.2
Summary: Module for managing power (Raritan, APC, Digital Loggers, ipmi, etc.)
Project-URL: Homepage, https://github.com/intel/mfd
Project-URL: Repository, https://github.com/intel/mfd-powermanagement
Project-URL: Issues, https://github.com/intel/mfd-powermanagement/issues
Project-URL: Changelog, https://github.com/intel/mfd-powermanagement/blob/main/CHANGELOG.md
Requires-Python: <3.14,>=3.10
Description-Content-Type: text/markdown
License-File: LICENSE.md
License-File: AUTHORS.md
Requires-Dist: dlipower>=1.0
Requires-Dist: pysnmp~=7.1.20
Requires-Dist: requests<3,>=2.27
Requires-Dist: mfd_connect>=7.12.0
Requires-Dist: mfd-common-libs>=1.11.0
Dynamic: license-file

> [!IMPORTANT] 
> This project is under development. All source code and features on the main branch are for the purpose of testing or evaluation and not production ready.

# PowerManagement

Module for managing power (Raritan, APC, Digital Loggers, ipmi, etc. [powercycle, power off, reset])

### How to use

Install module and from module import eg.`Ipmi`

Initialization:

```python
PowerManagement(connection, host, ip, username, password)
```
`host` and `ip` can be used interchangeably. 
`connection` is an object from `mfd_connect` and is used for remote execution

Attributes:

`States` - enums are defined for every tool, so `IpmiStates`
___
### Implemented tools:

[Ipmi](IPMI.md) - implemented controlling via IPMITool and IPMIUtil\
[PDU](PDU.md) - controlling power switch devices via SNMP\
[DLI](DLI.md) - controlling Digital Loggers power switch devices\
[CCSG](CCSG.md) - controlling power switch devices via CCSG\
[SYSTEM](SYSTEM.md) - controlling power via system calls
___

### Implemented methods
Every class that inherits from `PowerManagement` (`IPMI`, `PDU`, `CCSG`) overrides this abstract method:

`set_state(**kwargs) -> bool` - setting wanted state from available states

Methods are described for each implemented tool individually in theirs README.

---

## OS supported:

* WINDOWS
* LNX
* FREEBSD
* ESXI

## Issue reporting

If you encounter any bugs or have suggestions for improvements, you're welcome to contribute directly or open an issue [here](https://github.com/intel/mfd-powermanagement/issues).
