Skip to content

feat: Initial commit#1

Merged
hcymerys merged 1 commit intomainfrom
first_release
Jul 10, 2025
Merged

feat: Initial commit#1
hcymerys merged 1 commit intomainfrom
first_release

Conversation

@hcymerys
Copy link
Copy Markdown
Contributor

@hcymerys hcymerys commented Jul 10, 2025

This pull request introduces several new workflows, documentation updates, and enhancements to the mfd-powermanagement project. The most significant changes include the addition of reusable GitHub Actions workflows, comprehensive documentation for power management modules, and updates to licensing and contributor information.

GitHub Actions Workflows:

Documentation Updates:

  • README.md: Added detailed project overview, usage instructions, supported tools, and OS compatibility information.
  • AUTHORS.md: Listed project contributors with their contact information.
  • LICENSE.md: Included the MIT license for the project.
  • Added individual module documentation:
    • CCSG.md: Explained CCSG power management methods and usage.
    • DLI.md: Provided details on controlling Digital Loggers power devices.
    • IPMI.md: Documented IPMI-based power management with examples.
    • PDU.md: Described SNMP-based power management for supported devices.

Miscellaneous:

@mfd-intel-bot
Copy link
Copy Markdown
Contributor

We don't publish DEVs .whl.
To build .whl, run 'pip install git+https://github.com/intel/mfd-powermanagement@first_release'

@github-advanced-security
Copy link
Copy Markdown

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

@mfd-intel-bot
Copy link
Copy Markdown
Contributor

We don't publish DEVs .whl.
To build .whl, run 'pip install git+https://github.com/intel/mfd-powermanagement@first_release'

@adrianlasota adrianlasota requested a review from Copilot July 10, 2025 10:25

This comment was marked as outdated.

pyproject.toml Outdated

[project]
name = "mfd-powermanagement"
description = "Module for managing power (Raritan, APC, Digital Loggers, ipmi, etc."
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

missing closing of bracket

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

@mfd-intel-bot
Copy link
Copy Markdown
Contributor

We don't publish DEVs .whl.
To build .whl, run 'pip install git+https://github.com/intel/mfd-powermanagement@first_release'

1 similar comment
@mfd-intel-bot
Copy link
Copy Markdown
Contributor

We don't publish DEVs .whl.
To build .whl, run 'pip install git+https://github.com/intel/mfd-powermanagement@first_release'

This comment was marked as outdated.

@mfd-intel-bot
Copy link
Copy Markdown
Contributor

We don't publish DEVs .whl.
To build .whl, run 'pip install git+https://github.com/intel/mfd-powermanagement@first_release'

1 similar comment
@mfd-intel-bot
Copy link
Copy Markdown
Contributor

We don't publish DEVs .whl.
To build .whl, run 'pip install git+https://github.com/intel/mfd-powermanagement@first_release'

@hcymerys hcymerys requested a review from Copilot July 10, 2025 10:46

This comment was marked as outdated.

Signed-off-by: Hubert Cymerys <hubert.cymerys@intel.com>
@mfd-intel-bot
Copy link
Copy Markdown
Contributor

We don't publish DEVs .whl.
To build .whl, run 'pip install git+https://github.com/intel/mfd-powermanagement@first_release'

1 similar comment
@mfd-intel-bot
Copy link
Copy Markdown
Contributor

We don't publish DEVs .whl.
To build .whl, run 'pip install git+https://github.com/intel/mfd-powermanagement@first_release'

@adrianlasota adrianlasota requested a review from Copilot July 10, 2025 10:51
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This initial commit adds the core power-management modules, extensive documentation, reusable GitHub Actions workflows, and a full suite of unit tests.

  • Introduced system, PDU, IPMI, DLI, and CCSG power-management implementations with matching tests
  • Added reusable workflows for build, test, release, and security scanning
  • Populated Sphinx documentation and examples for each module

Reviewed Changes

Copilot reviewed 55 out of 57 changed files in this pull request and generated 2 comments.

File Description
.github/workflows/build_upload_whl.yml Reusable build/test/release workflow for Python packages
mfd_powermanagement/system/windows.py Stub Windows implementation; get_available_power_states unimplemented
mfd_powermanagement/ccsg.py CCSG implementation; constructs SOAP payload and parses responses
examples/system_power_management_example.py Example showing detection of OS and state changes via SystemPowerManagement
Comments suppressed due to low confidence (2)

mfd_powermanagement/base.py:60

  • [nitpick] The abstract set_state signature returns bool, but implementations in system modules return None (from Linux/Windows) or bool (from DLI). Standardize the return type across all implementations.
    def set_state(self, **kwargs) -> bool:

examples/system_power_management_example.py:14

  • [nitpick] This example calls get_available_power_states on Windows, where it's unimplemented and will raise NotImplementedError. Update the example or note OS support/limitations in the docs.
logger.log(level=logging.DEBUG, msg=f"Available power states: {system_pm.get_available_power_states()}")

@hcymerys hcymerys merged commit e49b92e into main Jul 10, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants