Skip to content

Ch 220 keycloak organizations sync on django#819

Merged
filippomc merged 31 commits intodevelopfrom
CH-220-keycloak-organizations-sync-on-django
Oct 2, 2025
Merged

Ch 220 keycloak organizations sync on django#819
filippomc merged 31 commits intodevelopfrom
CH-220-keycloak-organizations-sync-on-django

Conversation

@filippomc
Copy link
Copy Markdown
Collaborator

@filippomc filippomc commented Sep 19, 2025

Closes CH-220
Also addresses CH-219 - model updates

Implemented solution

...

How to test this PR

...

Sanity checks:

  • The pull request is explicitly linked to the relevant issue(s)
  • The issue is well described: clearly states the problem and the general proposed solution(s)
  • In this PR it is explicitly stated how to test the current change
  • The labels in the issue set the scope and the type of issue (bug, feature, etc.)
  • The relevant components are indicated in the issue (if any)
  • All the automated test checks are passing
  • All the linked issues are included in one Sprint
  • All the linked issues are in the Review state
  • All the linked issues are assigned

Breaking changes (select one):

  • The present changes do not change the preexisting api in any way
  • This PR and the issue are tagged as a breaking-change and the migration procedure is well described above

Possible deployment updates issues (select one):

  • There is no reason why deployments based on CloudHarness may break after the current update
  • This PR and the issue are tagged as alert:deployment

Test coverage (select one):

  • Tests for the relevant cases are included in this pr
  • The changes included in this pr are out of the current test coverage scope

Documentation (select one):

  • The documentation has been updated to match the current changes
  • The changes included in this PR are out of the current documentation scope

Nice to have (if relevant):

  • Screenshots of the changes
  • Explanatory video/animated gif

@filippomc filippomc requested a review from Copilot September 22, 2025 14:10
Copy link
Copy Markdown
Contributor

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 PR migrates the CloudHarness model library from a custom OpenAPI-based system to Pydantic v2, addressing Keycloak organizations synchronization requirements and implementing significant architectural improvements.

  • Replaces custom Flask-based model generation with modern Pydantic v2 models
  • Implements enhanced model access patterns with backward compatibility through monkey patches
  • Updates dependency management and testing infrastructure for better maintainability

Reviewed Changes

Copilot reviewed 165 out of 167 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
tools/deployment-cli-tools/ch_cli_tools/utils.py Adds string conversion for environment variable values
tools/deployment-cli-tools/ch_cli_tools/skaffold.py Updates property names from buildArgs to build_args
tools/deployment-cli-tools/ch_cli_tools/openapi.py Changes OpenAPI generator from python-flask to python
tools/deployment-cli-tools/ch_cli_tools/configurationgenerator.py Adds string conversion for tag and value parameters
libraries/models/tox.ini Updates dependencies to use modern Pydantic v2 stack
libraries/models/test/test_deserialize.py Adds comprehensive property access tests for Pydantic models
libraries/models/test/resources/values.yaml Converts numeric values to strings throughout YAML configuration
libraries/models/test-requirements.txt Updates test dependencies with newer versions
libraries/models/setup.py Simplifies dependencies to focus on Pydantic v2 core libraries
libraries/models/setup.cfg Adds flake8 configuration for code style
libraries/models/pyproject.toml Adds modern Python packaging configuration
libraries/models/docs/*.md Generates new documentation for Pydantic-based models
libraries/models/cloudharness_model/*.py Complete rewrite of model classes using Pydantic v2 with enhanced utilities

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Copy Markdown
Member

@afonsobspinto afonsobspinto left a comment

Choose a reason for hiding this comment

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

Looks good BUT you should merge this in first

@filippomc filippomc merged commit 6d56d93 into develop Oct 2, 2025
5 of 7 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.

3 participants