Horizon shows ports from all projects during launch instance if network is shared
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Dashboard (Horizon) |
In Progress
|
Undecided
|
Unassigned |
Bug Description
When a network is shared between multiple projects, horizon shows ports from all projects which have access to that network. This is a problem because each port actually has a “project_id“ property, and the port cannot be used for any instance outside of that project. When a user attempts to start an instance with a port from a different project, it fails like this: nova.exception.
Steps to reproduce :-
==================
1. create network and share network between 2 projects
2. from Project A, manually create a port “Test Port“ on the network
note that the port will have the project_id for Project A
3. from Project B, open the Launch Instance workflow
navigate to “Network Ports”
4. At this point, you will see “Test Port” in the list. If you use it for the instance from Project B, the instance will fail
Solution :-
========
Patch horizon so that it only shows ports for the current project. The CLI does this already.
If I run openstack port list --network network_name --project project_name, it only shows the ports for the network which belong to the project
Fix proposed to branch: master /review. opendev. org/c/openstack /horizon/ +/864205
Review: https:/