Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor(plugins): Remove jsonschema dependency #4348

Conversation

ClausHolbechArista
Copy link
Contributor

@ClausHolbechArista ClausHolbechArista commented Aug 12, 2024

Change Summary

Remove jsonschema dependency

Component(s) name

Schema validation

Proposed changes

  • Schemas are no longer validated at runtime. Instead they are validated during development in pre-commit.
  • Jsonschema dependency has been removed from runtime code. It is still required for development workflows.
  • Cleaning up unused extend_schema method.

Copy link

Review docs on Read the Docs

To test this pull request:

# Create virtual environment for this testing below the current directory
python -m venv test-avd-pr-4348
# Activate the virtual environment
source test-avd-pr-4348/bin/activate
# Install all requirements including PyAVD
pip install "pyavd[ansible] @ git+https://github.com/ClausHolbechArista/avd.git@refactor/plugins/reimplement-schema-validation-to-remove-jsonschema-dependency#subdirectory=python-avd" --force
# Point Ansible collections path to the Python virtual environment
export ANSIBLE_COLLECTIONS_PATH=$VIRTUAL_ENV/ansible_collections
# Install Ansible collection
ansible-galaxy collection install git+https://github.com/ClausHolbechArista/avd.git#/ansible_collections/arista/avd/,refactor/plugins/reimplement-schema-validation-to-remove-jsonschema-dependency --force
# Optional: Install AVD examples
cd test-avd-pr-4348
ansible-playbook arista.avd.install_examples

@github-actions github-actions bot added type: documentation Improvements or additions to documentation role: eos_cli_config_gen issue related to eos_cli_config_gen role state: CI Updated CI scenario have been updated in the PR state: Documentation role Updated role: eos_designs issue related to eos_designs role labels Aug 12, 2024
@ClausHolbechArista ClausHolbechArista marked this pull request as ready for review August 12, 2024 13:38
@ClausHolbechArista ClausHolbechArista marked this pull request as draft August 12, 2024 13:56
@ClausHolbechArista ClausHolbechArista force-pushed the refactor/plugins/reimplement-schema-validation-to-remove-jsonschema-dependency branch from 60a0597 to 0fd1af3 Compare August 12, 2024 14:34
@ClausHolbechArista ClausHolbechArista marked this pull request as ready for review August 12, 2024 14:36
@ClausHolbechArista ClausHolbechArista force-pushed the refactor/plugins/reimplement-schema-validation-to-remove-jsonschema-dependency branch from 293146e to 5a452ba Compare August 13, 2024 13:06
@ClausHolbechArista ClausHolbechArista added this to the v5.0.0 milestone Aug 16, 2024
Copy link

sonarcloud bot commented Aug 16, 2024

Copy link
Member

@carlbuchmann carlbuchmann left a comment

Choose a reason for hiding this comment

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

LGTM

@carlbuchmann carlbuchmann merged commit 243990b into aristanetworks:devel Aug 16, 2024
43 checks passed
@ClausHolbechArista ClausHolbechArista deleted the refactor/plugins/reimplement-schema-validation-to-remove-jsonschema-dependency branch August 20, 2024 11:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rn: Refactor(plugins) role: eos_cli_config_gen issue related to eos_cli_config_gen role role: eos_designs issue related to eos_designs role state: CI Updated CI scenario have been updated in the PR type: documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants