The PHD VM factory tells all its propolis-servers to serve at 127.0.0.1:9000 and to use the implicit VNC server address of 127.0.0.1:5900. This means a single test case can't run one more than one server, which forecloses on things like migration testing.
One simple approach to fixing this is to have the factory maintain a range of ports it can assign for these purposes, assign the next ports from the range when a VM is created, and reset the factory somehow (via fixture callout or just recreating the factory) after each test.
The PHD VM factory tells all its propolis-servers to serve at
127.0.0.1:9000and to use the implicit VNC server address of127.0.0.1:5900. This means a single test case can't run one more than one server, which forecloses on things like migration testing.One simple approach to fixing this is to have the factory maintain a range of ports it can assign for these purposes, assign the next ports from the range when a VM is created, and reset the factory somehow (via fixture callout or just recreating the factory) after each test.