While running the functional tests for the snap on serverstack (Openstack cloud), the tests seem to take a long time and fail due to timeout errors.
From an initial look, it seems to be coming from the fact that the tests deploy four different models for the backup of four applications (postgresql, mysql, percona-cluster, etcd)1.
While deploying each of these applications on their respective model during the execution of the fixtures in test_sanity_deployment2, the model will be blocked until the unit becomes active and then proceeds to the deployment of the next application.
While running the functional tests for the snap on serverstack (Openstack cloud), the tests seem to take a long time and fail due to timeout errors.
From an initial look, it seems to be coming from the fact that the tests deploy four different models for the backup of four applications (postgresql, mysql, percona-cluster, etcd)1.
While deploying each of these applications on their respective model during the execution of the fixtures in
test_sanity_deployment
2, the model will be blocked until the unit becomes active and then proceeds to the deployment of the next application.Eg: await model.block_until(lambda: percona_cluster_app.status == "active")
This needs a lot of time where instead the deployments of the units could happen in a parallel manner and checked finally if they're all active.