mcp-openstack-ops 3.5.3__tar.gz → 3.5.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/PKG-INFO +2 -2
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/README.md +1 -1
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/PKG-INFO +2 -2
- mcp_openstack_ops-3.5.4/src/mcp_openstack_ops.egg-info/scm_version.json +8 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/uv.lock +18 -19
- mcp_openstack_ops-3.5.3/src/mcp_openstack_ops.egg-info/scm_version.json +0 -8
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.env.example +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.env.test +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.github/FUNDING.yml +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.github/copilot-instructions.md +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.github/dependabot.yml +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.github/workflows/pypi-publish.yml +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.gitignore +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.gitleaks.toml +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.pre-commit-config.yaml +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/.python-version +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/Dockerfile.MCP-Server +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/Dockerfile.MCPO-Proxy +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/LICENSE +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/MANIFEST.in +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/build-mcp-server-docker-image.sh +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/build-mcpo-server-docker-image.sh +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/diagnose_openstack.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/docker-compose.yml +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/img/MCP-Workflow-of-Quickstart-Tutorial.png +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/img/screenshot-claude-desktop.png +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/img/screenshot-claude-desktop.png:Zone.Identifier +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/img/screenshot-example-cluster-status.png +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/img/screenshot-openstack-dashboard.png +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/main.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/mcp-config.json.http +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/mcp-config.json.multi-project +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/mcp-config.json.stdio +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/pyproject.toml +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/scripts/mcp-server-docker-cmd.sh +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/scripts/run-mcp-inspector-local.sh +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/scripts/run-mcp-inspector-pypi.sh +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/setup.cfg +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/__init__.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/__main__.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/connection.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/functions.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/mcp_main.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/prompt_template.md +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/__init__.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/compute.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/core.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/identity.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/image.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/load_balancer/__init__.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/load_balancer/amphorae.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/load_balancer/core.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/load_balancer/health_monitors.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/load_balancer/l7_policies.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/load_balancer/listeners.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/load_balancer/management.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/load_balancer/pools.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/monitoring.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/network.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/orchestration.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/storage.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/__init__.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_availability_zones.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_floating_ip_pools.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_floating_ips.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_heat_stacks.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_hypervisor_details.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_image_detail_list.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_instance.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_instance_by_name.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_instance_details.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_instances_by_status.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_keypair_list.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_amphorae.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_availability_zones.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_details.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_flavors.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_health_monitors.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_l7_policies.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_l7_rules.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_list.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_listeners.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_pool_members.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_pools.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_providers.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_load_balancer_quotas.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_network_details.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_project_details.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_quota.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_resource_monitoring.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_role_assignments.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_routers.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_security_groups.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_server_events.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_server_groups.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_server_volumes.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_service_status.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_usage_statistics.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_user_list.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_volume_list.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_volume_snapshots.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_volume_types.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/search_instances.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_alarms.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_compute_agents.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_domains.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_flavor.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_floating_ip.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_floating_ip_port_forwarding.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_heat_stack.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_identity_groups.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_image.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_image_members.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_image_metadata.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_image_visibility.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_instance.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_keypair.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_amphora.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_availability_zone.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_flavor.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_health_monitor.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_l7_policy.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_l7_rule.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_listener.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_pool.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_pool_member.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer_quota.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_metrics.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_network_agents.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_network_ports.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_network_qos_policies.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_networks.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_project.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_quota.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_roles.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_backup.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_dump.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_fixed_ip.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_floating_ip.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_group.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_migration.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_network.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_properties.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_security_group.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_volume.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_service_logs.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_services.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_snapshot.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_subnets.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_volume.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_volume_backups.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_volume_groups.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_volume_qos.py +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/SOURCES.txt +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/dependency_links.txt +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/entry_points.txt +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/requires.txt +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/scm_file_list.json +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/top_level.txt +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/test_compatibility.sh +0 -0
- {mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/test_project_isolation.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mcp-openstack-ops
|
|
3
|
-
Version: 3.5.
|
|
3
|
+
Version: 3.5.4
|
|
4
4
|
Summary: OpenStack operations automation MCP server
|
|
5
5
|
Author-email: JungJungIn <call518@gmail.com>
|
|
6
6
|
Requires-Python: >=3.12
|
|
@@ -33,7 +33,7 @@ Dynamic: license-file
|
|
|
33
33
|
|
|
34
34
|
## Architecture & Internal (DeepWiki)
|
|
35
35
|
|
|
36
|
-
[](https://deepwiki.com/call518/MCP-OpenStack-Ops)
|
|
37
37
|
|
|
38
38
|
---
|
|
39
39
|
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
|
|
16
16
|
## Architecture & Internal (DeepWiki)
|
|
17
17
|
|
|
18
|
-
[](https://deepwiki.com/call518/MCP-OpenStack-Ops)
|
|
19
19
|
|
|
20
20
|
---
|
|
21
21
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mcp-openstack-ops
|
|
3
|
-
Version: 3.5.
|
|
3
|
+
Version: 3.5.4
|
|
4
4
|
Summary: OpenStack operations automation MCP server
|
|
5
5
|
Author-email: JungJungIn <call518@gmail.com>
|
|
6
6
|
Requires-Python: >=3.12
|
|
@@ -33,7 +33,7 @@ Dynamic: license-file
|
|
|
33
33
|
|
|
34
34
|
## Architecture & Internal (DeepWiki)
|
|
35
35
|
|
|
36
|
-
[](https://deepwiki.com/call518/MCP-OpenStack-Ops)
|
|
37
37
|
|
|
38
38
|
---
|
|
39
39
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
version = 1
|
|
2
|
-
revision =
|
|
2
|
+
revision = 3
|
|
3
3
|
requires-python = ">=3.12"
|
|
4
4
|
resolution-markers = [
|
|
5
5
|
"python_full_version >= '3.14' and sys_platform == 'win32'",
|
|
@@ -31,15 +31,15 @@ wheels = [
|
|
|
31
31
|
|
|
32
32
|
[[package]]
|
|
33
33
|
name = "anyio"
|
|
34
|
-
version = "4.
|
|
34
|
+
version = "4.14.2"
|
|
35
35
|
source = { registry = "https://pypi.org/simple" }
|
|
36
36
|
dependencies = [
|
|
37
37
|
{ name = "idna" },
|
|
38
38
|
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
|
|
39
39
|
]
|
|
40
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
40
|
+
sdist = { url = "https://files.pythonhosted.org/packages/61/cc/a381afa6efea9f496eff839d4a6a1aed3bfafc7b3ab4b0d1b243a12573dd/anyio-4.14.2.tar.gz", hash = "sha256:cfa139f3ed1a23ee8f88a145ddb5ac7605b8bbfd8592baacd7ce3d8bb4313c7f", size = 260176, upload-time = "2026-07-12T20:29:07.082Z" }
|
|
41
41
|
wheels = [
|
|
42
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
42
|
+
{ url = "https://files.pythonhosted.org/packages/da/35/f2287558c17e29fafc8ef3daf819bb9834061cfa43bff8014f7df7f63bdc/anyio-4.14.2-py3-none-any.whl", hash = "sha256:9f505dda5ac9f0c8309b5e8bd445a8c2bf7246f3ce950121e45ea15bc41d1494", size = 125813, upload-time = "2026-07-12T20:29:05.763Z" },
|
|
43
43
|
]
|
|
44
44
|
|
|
45
45
|
[[package]]
|
|
@@ -1093,11 +1093,11 @@ wheels = [
|
|
|
1093
1093
|
|
|
1094
1094
|
[[package]]
|
|
1095
1095
|
name = "pyjwt"
|
|
1096
|
-
version = "2.
|
|
1096
|
+
version = "2.15.0"
|
|
1097
1097
|
source = { registry = "https://pypi.org/simple" }
|
|
1098
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1098
|
+
sdist = { url = "https://files.pythonhosted.org/packages/02/a5/5197bfd06417837ac079921c66fa6393f1dea3557272a263cebfef69e432/pyjwt-2.15.0.tar.gz", hash = "sha256:b11c5f9791d7bf51c2b39a81ed669f6b2dbbd669df2942f6c60167e9e3d1abe4", size = 120513, upload-time = "2026-09-23T16:56:00.689Z" }
|
|
1099
1099
|
wheels = [
|
|
1100
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1100
|
+
{ url = "https://files.pythonhosted.org/packages/e8/55/40e45bf052ee8ee12a4dfd785519660f8effa7b065442b91646ec6828619/pyjwt-2.15.0-py3-none-any.whl", hash = "sha256:7a3742debf6b879e912dbb9819ceec1594be812452b78c5f2e2dfc56564954f8", size = 33680, upload-time = "2026-09-23T16:55:59.241Z" },
|
|
1101
1101
|
]
|
|
1102
1102
|
|
|
1103
1103
|
[package.optional-dependencies]
|
|
@@ -1145,15 +1145,14 @@ wheels = [
|
|
|
1145
1145
|
|
|
1146
1146
|
[[package]]
|
|
1147
1147
|
name = "python-discovery"
|
|
1148
|
-
version = "1.
|
|
1148
|
+
version = "1.6.1"
|
|
1149
1149
|
source = { registry = "https://pypi.org/simple" }
|
|
1150
1150
|
dependencies = [
|
|
1151
1151
|
{ name = "filelock" },
|
|
1152
|
-
{ name = "platformdirs" },
|
|
1153
1152
|
]
|
|
1154
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1153
|
+
sdist = { url = "https://files.pythonhosted.org/packages/0c/57/250bd238b966cece44328235eb85290045d059265fdaf7527a3a958123db/python_discovery-1.6.1.tar.gz", hash = "sha256:cf87d3627dfb4412437fdd5b13eae402607722998d21567993aedbc59b23c15e", size = 84338, upload-time = "2026-09-18T01:31:53.971Z" }
|
|
1155
1154
|
wheels = [
|
|
1156
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1155
|
+
{ url = "https://files.pythonhosted.org/packages/16/7d/e9ffbadfbf89c93848412d04594135c4ae8c1d37d9e053b9c3ed718fabc4/python_discovery-1.6.1-py3-none-any.whl", hash = "sha256:d43fcdef879fe795352bd13ccf8d185ba5a9f86f36cfcd00529f596e737442b3", size = 38664, upload-time = "2026-09-18T01:31:52.448Z" },
|
|
1157
1156
|
]
|
|
1158
1157
|
|
|
1159
1158
|
[[package]]
|
|
@@ -1395,8 +1394,8 @@ name = "secretstorage"
|
|
|
1395
1394
|
version = "3.5.0"
|
|
1396
1395
|
source = { registry = "https://pypi.org/simple" }
|
|
1397
1396
|
dependencies = [
|
|
1398
|
-
{ name = "cryptography"
|
|
1399
|
-
{ name = "jeepney"
|
|
1397
|
+
{ name = "cryptography" },
|
|
1398
|
+
{ name = "jeepney" },
|
|
1400
1399
|
]
|
|
1401
1400
|
sdist = { url = "https://files.pythonhosted.org/packages/1c/03/e834bcd866f2f8a49a85eaff47340affa3bfa391ee9912a952a1faa68c7b/secretstorage-3.5.0.tar.gz", hash = "sha256:f04b8e4689cbce351744d5537bf6b1329c6fc68f91fa666f60a380edddcd11be", size = 19884, upload-time = "2025-11-23T19:02:53.191Z" }
|
|
1402
1401
|
wheels = [
|
|
@@ -1493,11 +1492,11 @@ wheels = [
|
|
|
1493
1492
|
|
|
1494
1493
|
[[package]]
|
|
1495
1494
|
name = "urllib3"
|
|
1496
|
-
version = "2.
|
|
1495
|
+
version = "2.8.0"
|
|
1497
1496
|
source = { registry = "https://pypi.org/simple" }
|
|
1498
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1497
|
+
sdist = { url = "https://files.pythonhosted.org/packages/e3/05/b17359e1cefb4f909b5e40b1b90a496d987258916dbbf88e842c729f510e/urllib3-2.8.0.tar.gz", hash = "sha256:63bf2ead4c879426ebf22ef2a781eeb4aa3b4ae798a0435506f8687fd5bb9b63", size = 458972, upload-time = "2026-09-15T19:29:36.253Z" }
|
|
1499
1498
|
wheels = [
|
|
1500
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1499
|
+
{ url = "https://files.pythonhosted.org/packages/92/9d/c4e665119135114480843e7ab388fa94d8480650450e6f8e26b70d323a4c/urllib3-2.8.0-py3-none-any.whl", hash = "sha256:0cf3cae568d36aa9576b28dfb35f11328f1cb974ca7647d9475ebb86c75ac6e3", size = 135717, upload-time = "2026-09-15T19:29:34.577Z" },
|
|
1501
1500
|
]
|
|
1502
1501
|
|
|
1503
1502
|
[[package]]
|
|
@@ -1527,7 +1526,7 @@ wheels = [
|
|
|
1527
1526
|
|
|
1528
1527
|
[[package]]
|
|
1529
1528
|
name = "virtualenv"
|
|
1530
|
-
version = "21.
|
|
1529
|
+
version = "21.7.13"
|
|
1531
1530
|
source = { registry = "https://pypi.org/simple" }
|
|
1532
1531
|
dependencies = [
|
|
1533
1532
|
{ name = "distlib" },
|
|
@@ -1535,9 +1534,9 @@ dependencies = [
|
|
|
1535
1534
|
{ name = "platformdirs" },
|
|
1536
1535
|
{ name = "python-discovery" },
|
|
1537
1536
|
]
|
|
1538
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1537
|
+
sdist = { url = "https://files.pythonhosted.org/packages/13/50/c9b84eb106d0db420b9878dac0a386c5791726f127ce20b06897f6e3a1e9/virtualenv-21.7.13.tar.gz", hash = "sha256:0355558b6f33619aab31347e43643b0ebc97f61ea3acf617b2b69e1f8a843d11", size = 5360306, upload-time = "2026-09-18T04:35:49.354Z" }
|
|
1539
1538
|
wheels = [
|
|
1540
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1539
|
+
{ url = "https://files.pythonhosted.org/packages/9a/ce/e74453531b0c49a58d0e8a4f9bab4495705859fee4a4f7de27d58f4a791a/virtualenv-21.7.13-py3-none-any.whl", hash = "sha256:1bea5af7463f59c4719db48fe739579a2a4f569c96f26c086edda85c96da9f59", size = 5328680, upload-time = "2026-09-18T04:35:47.194Z" },
|
|
1541
1540
|
]
|
|
1542
1541
|
|
|
1543
1542
|
[[package]]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/img/MCP-Workflow-of-Quickstart-Tutorial.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/img/screenshot-example-cluster-status.png
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/prompt_template.md
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/__init__.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/compute.py
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/identity.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/monitoring.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/network.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/orchestration.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/services/storage.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_floating_ips.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_heat_stacks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_instance.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_keypair_list.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_quota.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_routers.py
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_server_events.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_server_groups.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_user_list.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_volume_list.py
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/get_volume_types.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/search_instances.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_alarms.py
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_domains.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_flavor.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_floating_ip.py
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_heat_stack.py
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_image.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_image_members.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_instance.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_keypair.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_load_balancer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_metrics.py
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_network_ports.py
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_networks.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_project.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_quota.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_roles.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_backup.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_dump.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_group.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_server_volume.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_service_logs.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_services.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_snapshot.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_subnets.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_volume.py
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_volume_groups.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops/tools/set_volume_qos.py
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/requires.txt
RENAMED
|
File without changes
|
|
File without changes
|
{mcp_openstack_ops-3.5.3 → mcp_openstack_ops-3.5.4}/src/mcp_openstack_ops.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|