Skip to content

0.6.6: the GLPI v2 /Administration/Group routes, to search, read, create, update and delete groups - #45

Merged
baraline merged 2 commits into
mainfrom
feat/groups
Oct 28, 2026
Merged

baraline merged 2 commits into
mainfrom
feat/groups

Conversation

@baraline

Copy link
Copy Markdown
Owner

Summary

Release 0.6.6 adds the GLPI v2 /Administration/Group routes. Until now a caller could find and create users and entities through the client, but not groups. The itsm_synchronisation sync needs groups to create a GLPI group for an EasyVista team.

Existing methods are unchanged.

Added

  • Methods. search_groups, iter_search_groups, get_group, create_group, update_group and delete_group, on both clients. They come from a new GroupMixin and a GROUP_ENDPOINT constant, and the sync client is regenerated by unasync_build.py.
  • Searching across entities. search_groups and iter_search_groups take skip_entity: bool = False, as search_users does.
    • With True, the GLPI-Entity, GLPI-Profile and GLPI-Entity-Recursive headers are left out, so the search spans every entity the caller can see.
    • A group usually lives in a parent entity, so a search sent with a narrower active entity can miss it.
    • The other group methods always send those headers.
  • Models. GetGroup, PostGroup, PatchGroup and DeleteGroup, modelled on components.schemas.Group, exported from the package root and from glpi_python_client.models.
  • Docs. The API reference, the user guide, the glpi-user-location-provisioning skill and the skills README now cover groups. The version is 0.6.6 everywhere test_version_agreement checks.

Notes

  • No recursive flag. The v2 contract's Group schema has no is_recursive field. A caller that needs one has to send it through extra_payload, and nothing here shows the server honours it.
  • Nested refs. These still serialise extra_payload: {}, so the body is entity: {"id": 492, "extra_payload": {}}. This is the library's existing behaviour for every nested reference.

Checks

  • ruff check . and ruff format --check .: clean.
  • mypy glpi_python_client: clean.
  • pytest -m "not integration" with the coverage gate: 2150 passed, 2 skipped, 1 xfailed, coverage 98.02%.
  • unasync_build.py --check: up to date.
  • The sphinx build with -W: clean.
  • vulture --min-confidence 80: six findings, all in files this PR does not touch.
  • No live GLPI call was made.

After merge

  • Push the tag 0.6.6 and publish the GitHub release.
  • Re-copy the changed skills into novahe-plugins.

🤖 Generated with Claude Code

baraline and others added 2 commits October 28, 2026 17:09
…reate, update and delete groups, with skip_entity on the searches

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…e, provisioning skill and CHANGELOG, version bumped in pyproject, __version__ and every skill

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@codecov-commenter

Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 98.02%. Comparing base (1c0d30f) to head (513ef2d).
❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #45      +/-   ##
==========================================
+ Coverage   97.97%   98.02%   +0.04%     
==========================================
  Files          91       93       +2     
  Lines        3554     3637      +83     
==========================================
+ Hits         3482     3565      +83     
  Misses         72       72              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@baraline
baraline merged commit 085ec07 into main Oct 28, 2026
7 checks passed
@baraline
baraline deleted the feat/groups branch October 28, 2026 16:40
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.

2 participants