tests:

  - title: deployment_*
    errors:
      - 'special characters are not allowed'
    status: ProdFailed
    defects: PROD-0

  - title: deployment_*
    errors:
      - "SaltReqTimeoutError: Message timed out"
    status: ProdFailed
    defects: PROD-35053

  - title: deployment_*
    errors:
      - "Exception: Step 'Configure salt-minion on osd"
      - No space left on device
    status: ProdFailed
    defects: PROD-36101

  - title: 'tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_set_gateway[id-6cc285d8-46bf-4f36-9b1a-783e3008ba79]'
    errors:
      - 'testtools.matchers._impl.MismatchError: 0 != 1'
    status: ProdFailed
    defects: PROD-25134

  - title: 'tempest.api.network.admin.test_routers.RoutersAdminTest.test_update_router_set_gateway[id-6cc285d8-46bf-4f36-9b1a-783e3008ba79]'
    errors:
      - 'testtools.matchers._impl.MismatchError: 0 != 1'
    status: ProdFailed
    defects: PROD-25134

  - title: tempest.api.compute.images.test_images_oneserver.ImagesOneServerTestJSON.test_create_image_specify_multibyte_character_image_name[id-3b7c6fe4-dfe7-477c-9243-b06359db51e6]
    errors:
      - "tempest.lib.exceptions.Conflict: Conflict with state of target resource"
      - "Details: {u'message': u\"Cannot 'createImage' instance"
      - "while it is in task_state image_uploading\", u'code': 409}"
    status: ProdFailed
    defects: PROD-35752


## ==================================================
  - title: "tempest.api.compute.images.test_images.ImagesTestJSON.test_delete_image_metadata_item"
    errors:
      - "502 PUT https://10.6.0.80:8774/v2.1/images/"
    status: ProdFailed
    defects: PROD-35212

  - title: "tempest.api.compute.images.test_images.ImagesTestJSON.test_create_image_from_paused_server[id-71bcb732-0261-11e7-9086-fa163e4fa634]"
    errors:
      - "502 GET https://10.6.0.80:8774/v2.1/images/"
    status: ProdFailed
    defects: PROD-35212

  - title: "tempest.api.compute.images.test_images.ImagesTestJSON.test_create_image_from_paused_server[id-71bcb732-0261-11e7-9086-fa163e4fa634]"
    errors:
      - "502 DELETE https://10.6.0.80:8774/v2.1/images/"
    status: ProdFailed
    defects: PROD-35212

  - title: "tempest.api.compute.images.test_images.ImagesTestJSON.test_create_image_from_stopped_server[id-aaacd1d0-55a2-4ce8-818a-b5439df8adc9]"
    errors:
      - "tempest.lib.exceptions.UnexpectedResponseCode: Unexpected response code received"
      - "Details: 502"
    status: ProdFailed
    defects: PROD-35212

  - title: "tempest.api.compute.images.test_images.ImagesTestJSON.test_create_image_from_suspended_server[id-8ca07fec-0262-11e7-907e-fa163e4fa634]"
    errors:
      - "502 DELETE https://10.6.0.80:8774/v2.1/images/"
    status: ProdFailed
    defects: PROD-35212

  - title: "tempest.api.compute.images.test_images_oneserver.ImagesOneServerTestJSON.test_create_delete_image[id-3731d080-d4c5-4872-b41a-64d0d0021314]"
    errors:
      - "502 DELETE https://10.6.0.80:8774/v2.1/images/"
    status: ProdFailed
    defects: PROD-35212

  - title: tempest.api.compute.servers.test_virtual_interfaces.VirtualInterfacesTestJSON.test_list_virtual_interfaces[id-96c4e2ef-5e4d-4d7f-87f5-fed6dca18016,network]
    errors:
      - self.client.list_virtual_interfaces(self.server['id'])
      - BadRequest not raised
    status: ProdFailed
    defects: PROD-35966

  - title: ".setUpClass (tempest.api.compute.images.test_list_image_filters.ListImageFiltersTestJSON)"
    errors:
      - 'resp, body = self.get("images/%s" % image_id)'
      - "tempest.lib.exceptions.UnexpectedResponseCode: Unexpected response code received"
      - "Details: 502"
    status: ProdFailed
    defects: PROD-35212

  - title: tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_get_console_output_server_id_in_shutoff_status[id-5b65d4e7-4ecd-437c-83c0-d6b79d927568]
    errors:
      - "502 POST https://10.6.0.80:8774/v2.1/servers"
      - "tempest.lib.exceptions.UnexpectedResponseCode: Unexpected response code received"
      - "Details: 502"
    status: ProdFailed
    defects: PROD-35224

  - title: "tempest.api.compute.images.test_images.ImagesTestJSON.test_create_delete_image[id-3731d080-d4c5-4872-b41a-64d0d0021314]"
    errors:
      - "message': u\"Cannot 'createImage' instance"
      - "while it is in task_state image_uploading\", u'code': 409"
    status: ProdFailed
    defects: PROD-35223

  - title: "tempest.api.compute.images.test_images.ImagesTestJSON.test_create_image_from_paused_server[id-71bcb732-0261-11e7-9086-fa163e4fa634]"
    errors:
      - "failed to reach ACTIVE state (current state SAVING) within the required time (600 s)."
    status: ProdFailed
    defects: PROD-35223

  - title: ".setUpClass (tempest.api.compute.images.test_list_image_filters.ListImageFiltersTestJSON)"
    errors:
      - 'resp, body = self.get("images/%s" % image_id)'
      - "Details: 502"
    status: ProdFailed
    defects: PROD-35212

  - title: ".tearDownClass (tempest.api.image.v2.test_images.ListUserImagesTest)"
    errors:
      - "raise testtools.MultipleExceptions(*cleanup_errors)"
      - "Details: 502, <traceback object at"
    status: ProdFailed
    defects: PROD-35212

  - title: ".tearDownClass (tempest.api.compute.images.test_list_image_filters.ListImageFiltersTestJSON)"
    errors:
      - "raise testtools.MultipleExceptions(*cleanup_errors)"
      - "Details: 502, <traceback object at"
    status: ProdFailed
    defects: PROD-35212

  - title: tempest.api.compute.images.test_images.ImagesTestJSON.test_delete_saving_image[id-aa06b52b-2db5-4807-b218-9441f75d74e3]
    errors:
      - resp, body = self.get("images/%s" % image_id)
      - "Details: 502"
    status: ProdFailed
    defects: PROD-35212

  - title: tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_create_backup[id-b963d4f1-94b3-4c40-9e97-7b583f46e470,image]
    errors:
      - 502 GET https://10.6.0.80:9292/v2/images/
    status: ProdFailed
    defects: PROD-35212

  - title: tempest.api.volume.test_volumes_actions.VolumesActionsTest.test_volume_upload[id-d8f1ca95-3d5b-44a3-b8ca-909691c9532d,image]
    errors:
      - 502 GET https://10.6.0.80:9292/v2/images/
    status: ProdFailed
    defects: PROD-35212

  - title: tempest.api.volume.test_volumes_negative.VolumesNegativeTest.test_create_volume_from_image_with_decreasing_size[id-5b810c91-0ad1-47ce-aee8-615f789be78f,image,negative]
    errors:
      - 502 PUT https://10.6.0.80:9292/v2/images/
    status: ProdFailed
    defects: PROD-35212

  - title: tempest.api.compute.servers.test_delete_server.DeleteServersTestJSON.test_delete_server_while_in_shelved_state[id-bb0cb402-09dd-4947-b6e5-5e7e1cfa61ad]
    errors:
      - 'tempest.lib.exceptions.TimeoutException: Request timed out'
      - 'failed to reach SHELVED_OFFLOADED status and task state "None" within the required time (600 s). Current status: SHELVED. Current task state: shelving_offloading'
    status: ProdFailed
    defects: PROD-35225

  - title: tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_create_backup[id-b963d4f1-94b3-4c40-9e97-7b583f46e470,image]
    errors:
      - failed to reach active state (current state saving) within the required time
    status: ProdFailed
    defects: PROD-35222


  - title: tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_create_backup[id-b963d4f1-94b3-4c40-9e97-7b583f46e470,image]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_ipv6_create[id-fc9996de-4f55-4fc4-b8ef-a4b9170c7078]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_create_backup[id-b963d4f1-94b3-4c40-9e97-7b583f46e470,image]
    errors:
      - "message': u'No image found with ID"
      - "u'code': u'404 Not Found'"
    status: ProdFailed
    defects: PROD-36275

  - title: tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_create_backup[id-b963d4f1-94b3-4c40-9e97-7b583f46e470,image]
    errors:
      - "fixtures._fixtures.timeout.TimeoutException"
      - "404 DELETE https://10.6.0.80:9292/v2/images"
    status: ProdFailed
    defects:


  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_list[id-6546ef3c-c0e2-46af-b892-f795f4d01119,smoke]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: octavia_tempest_plugin.tests.v2.api.test_loadbalancer.LoadbalancerTest.test_crud_loadbalancer[id-94c66b04-1ab3-4375-a921-89e48d833c1d,slow]
    errors:
      - "Exception: Failed to wait for loadbalancer to be active, actual provisioning_status: ERROR"
    status: ProdFailed
    defects: PROD-34865

  - title: octavia_tempest_plugin.tests.scenario.v2.test_load_balancer.LoadBalancerScenarioTest.test_load_balancer_ipv6_CRUD[id-86ffecc4-dce8-46f9-936e-8a4c6bcf3959]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_update[id-b75a4d15-49d2-4149-a745-635eed1aacc3]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693


  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_delete_cascade[id-643ef031-c800-45f2-b229-3c8f8b37c829]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_delete[id-643ef031-c800-45f2-b229-3c8f8b37c829]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_delete[id-643ef031-c800-45f2-b229-3c8f8b37c829]
    errors:
      - "No such file or directory: '/tmp/cirros-0.3.1-x86_64-vmlinuz'"
    status: ProdFailed
    defects:



  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_show_status[id-60acc1b0-fa46-41f8-b526-c81ae2f42c30]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_show[id-826ae612-8717-4c64-a8a7-cb9570a85870]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_ipv4_create[id-61c6343c-a5d2-4b9f-8c7d-34ea83f0596b]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_show_stats[id-105afcba-4dd6-46d6-8fa4-bd7330aa1259]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

  - title: octavia_tempest_plugin.tests.api.v2.test_load_balancer.LoadBalancerAPITest.test_load_balancer_failover[id-fc2e07a6-9776-4559-90c9-141170d4c397]
    errors:
      - show_loadbalancer provisioning_status updated to an invalid state of ERROR
    status: ProdFailed
    defects: PROD-34693

# ---------------------------------------------------
  - title: "tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_get_console_output_server_id_in_shutoff_status[id-5b65d4e7-4ecd-437c-83c0-d6b79d927568]"
    errors:
      - "Details: {u'message': u'Guest does not have a console available.', u'code': 404}"
    status: ProdFailed
    defects: PROD-35224

  - title: "tempest.scenario.test_volume_boot_pattern.TestVolumeBootPattern.test_create_ebs_image_and_check_boot[compute,id-36c34c67-7b54-4b59-b188-02a2f458a63b,image,volume]"
    errors:
      - "Invalid volume: Volume status must be available or error or error_restoring or error_extending or error_managing and must not be migrating, attached, belong to a group, have snapshots or be disassociated from snapshots after volume transfer"
    status: ProdFailed
    defects: PROD-35217

  - title: "tempest.scenario.test_volume_boot_pattern.TestVolumeBootPattern.test_create_server_from_volume_snapshot[compute,id-05795fb2-b2a7-4c9f-8fac-ff25aedb1489,image,slow,volume]"
    errors:
      - "Invalid volume: Volume status must be available or error or error_restoring or error_extending or error_managing and must not be migrating, attached, belong to a group, have snapshots or be disassociated from snapshots after volume transfer"
    status: ProdFailed
    defects: PROD-35217

  - title: .tearDownClass (tempest.api.volume.test_volumes_actions.VolumesActionsTest)
    errors:
      - "Invalid volume: Volume status must be available or error or error_restoring or error_extending or error_managing and must not be migrating, attached, belong to a group, have snapshots or be disassociated from snapshots after volume transfer"
    status: ProdFailed
    defects: PROD-35217

  - title: ".setUpClass (tempest.api.network.admin.test_agent_management.AgentManagementTestJSON)"
    errors:
      - 'File "/usr/local/lib/python2.7/dist-packages/tempest/api/network/admin/test_agent_management.py", line 35, in resource_setup'
      - "IndexError: list index out of range"
    status: ProdFailed
    defects: PROD-25221

  - title: tempest.api.compute.servers.test_attach_interfaces.AttachInterfacesTestJSON.test_create_list_show_delete_interfaces_by_fixed_ip[id-d290c06c-f5b3-11e7-8ec8-002293781009,network]
    errors:
      - 'tempest.lib.exceptions.NotFound: Object not found'
      - "u'type': u'PortNotFound'"
    status: ProdFailed
    defects: PROD-29650

## ==================================================
#             CVP SANITY
## ==================================================
  - title: test_ntp_peers_state
    errors:
      - "NTP peers state is not as expected on some nodes; could not find declared system peer"
    status: WontFix


  - title: test_prometheus_alert_count[ReclassRemoteDesync]
    errors:
      - "local files under /srv/salt/reclass have diverged from expected remote state"
    status: WontFix

  - title: test_prometheus_alert_count[ContrailBGPSessionsDown]
    errors:
      - "1 OpenContrail BGP sessions on the ntw01 node are down for 2 minutes."
    status: ProdFailed
    defects: PROD-34379

  - title: test_prometheus_alert_count[SystemMemoryFullWarning]
    errors:
      - The ctl
      - node uses
      - "% of memory for 2 minutes."
    status: WontFix
    defects: PROD-33922

  - title: test_prometheus_alert_count[SystemMemoryFullMajor]
    errors:
      - The ctl
      - node uses
      - "% of memory for 2 minutes."
    status: WontFix
    defects: PROD-33922

  - title: test_prometheus_alert_count[OpenstackServiceEndpointDown]
    errors:
      - opencontrail public API endpoint from the OpenStack Service Catalog didn't pass the HTTP-probe check.
    status: ProdFailed
    defects: PROD-35759

  - title: test_prometheus_alert_count[TelegrafRemoteGatherErrors]
    errors:
      - Remote Telegraf has gathering errors for the last 10 minutes. Check 'monitoring_remote_agent' container's logs for details.
    status: ProdFailed
    defects: PROD-35759

  - title: test_prometheus_alert_count[AlertmanagerNotificationFailureWarning]
    errors:
      - Alertmanager webhook notifications on the
      - fail for 2 minutes.
    status: ProdFailed
    defects: PROD-35884

  - title: test_ceph_health
    errors:
      - "1/3 mons down, quorum cmn01,cmn02"
    status: ProdFailed
    defects: PROD-35761

  - title: test_ceph_health
    errors:
      - client is using insecure global_id reclaim
      - mons are allowing insecure global_id reclaim
    status: ProdFailed
    defects: PROD-36461

  - title: test_prometheus_alert_count[CephMonitorDownMinor]
    errors:
      - "1 of Ceph Monitors are down"
    status: ProdFailed
    defects: PROD-35761

  - title: test_prometheus_alert_count[DockerdServiceReplicaFlapping]
    comment: New in 2019.2.12
    errors:
      - Docker Swarm monitoring_alertmanager service replica is flapping for 15 minutes.
    defects: PROD-35958
    status: ProdFailed

  - title: test_public_ui_alert_manager
    comment: New in 2019.2.12
    errors:
      - 502 Bad Gateway
    defects: PROD-35958
    status: ProdFailed

  - title: test_internal_ui_alert_manager
    comment: New in 2019.2.12
    errors:
      - Internal AlertManager page is not reachable on http://10.6.0.70:15011 from ctl nodes
    defects: PROD-35958
    status: ProdFailed

  - title: test_stacklight_services_replicas
    comment: New in 2019.2.12
    errors:
      - Some monitoring services don't have the expected number of replicas
      - docker-prod-local.docker.mirantis.net/openstack-docker/alertmanager:2019.2.4
    defects: PROD-35958
    status: ProdFailed

  - title: test_prometheus_alert_count[PrometheusTargetDown]
    comment: New in 2019.2.12
    errors:
      - The Prometheus target for the alertmanager job on the 10.0.0.147:9093 node is down
    defects: PROD-35958
    status: ProdFailed

  - title: test_prometheus_alert_count[DockerServiceMonitoringAlertmanagerReplicasDownMinor]
    comment: New in 2019.2.12
    errors:
      - Docker Swarm 'monitoring_alertmanager' service replicas are down
    defects: PROD-35958
    status: ProdFailed

  - title: test_prometheus_alert_count[SystemCpuStealTimeWarning]
    comment: Some unstabilities after deployment. Error has gone after some time
    errors:
      - The CPU steal time was above
    status: MixedSuccess

  - title: test_prometheus_alert_count[NetdevBudgetRanOutsWarning]
    comment: Some unstabilities after deployment. Error has gone after some time
    errors:
      - The rate of net_rx_action loops terminations
    status: MixedSuccess

## ==================================================
#              LMA2.0_Automated
## ==================================================
  - title: test_openstack_api_check_status_metrics
    errors:
      - ">           assert any(x in allowed_values for x in metric['value']), msg"
      - "Incorrect value in metric"
      - "u'interface': u'public'"
      - "u'name': u'opencontrail'"
      - "u'service_name': u'opencontrail'"
    status: WontFix
    defects: PROD-35759

  - title: test_grafana_dashboard_panel_queries[ceph-rbd-overview]
    errors:
      - "HTTPError: 404 Client Error: Not Found for url: http://"
      - ":15013/api/dashboards/db/ceph-rbd-overview"
    status: ProdFailed
    defects: PROD-35601

  - title: test_nova_notifications
    comment: "New bug in 2019.2.12"
    errors:
      - ">           lambda: (server.id not in [s.id for s in client.servers.list()])"
      - "E               TimeoutError: Waiting timed out"
    status: ProdFailed
    defects: PROD-35859

  - title: test_grafana_dashboard_panel_queries[octavia]
    errors:
      - Query "openstack_api_check_status{interface="public",service_name=~"octavia.*"}"
    status: ProdFailed
    defects: PROD-35860

  - title: test_alerta_smoke
    errors:
      - "UnknownError: Missing authorization API Key or Bearer Token"
    status: ProdFailed
    defects: PROD-35882

  - title: test_alerta_alerts_consistency
    errors:
      - "UnknownError: Missing authorization API Key or Bearer Token"
    status: ProdFailed
    defects: PROD-35882

  - title: test_kpi_metrics
    errors:
      - 'TimeoutError: Waiting timed out'
    status: TestFailed
    defects: PROD-35920

  - title: test_docker_container_status
    comment: New in 2019.2.12
    errors:
      - "Container monitoring_alertmanager.1 on the node mon01 has incorrect state 'Ready'. Current state: 'Ready"
    defects: PROD-35958
    status: ProdFailed

  - title: test_alertmanager_endpoint_availability
    comment: New in 2019.2.12
    errors:
      - E       assert False
    defects: PROD-35958
    status: ProdFailed

  - title: test_alertmanager_ha
    comment: New in 2019.2.12
    errors:
      - E       assert False
    defects: PROD-35958
    status: ProdFailed

  - title: test_docker_service_replicas
    comment: New in 2019.2.12
    errors:
      - Service 'monitoring_alertmanager' in mode 'replicated' has incorrect count of replicas
    defects: PROD-35958
    status: ProdFailed

  - title: test_prometheus_targets
    comment: New in 2019.2.12
    errors:
      - Incorrect count of metrics for alertmanager target
    defects: PROD-35958
    status: ProdFailed

  - title: test_grafana_dashboard_panel_queries[alertmanager]
    comment: New in 2019.2.12
    errors:
      - assert (3 == 0)
    defects: PROD-35958
    status: ProdFailed

  - title: test_prometheus_targets
    comment: New in 2019.2.12
    errors:
      -  Incorrect value in metric up{job="alertmanager"}
    defects: PROD-35958
    status: ProdFailed

  - title: test_docker_container_status
    comment: New in 2019.2.14
    errors:
      - "Container monitoring_alerta.1 on the node mon01 has incorrect state 'Ready'. Current state: 'Ready 1 second ago'"
    defects: PROD-35958
    status: ProdFailed

  - title: test_docker_service_replicas
    comment: New in 2019.2.14
    errors:
      - "Service 'monitoring_alerta' in mode 'replicated' has incorrect count of replicas: 0/1"
    defects: PROD-35958
    status: ProdFailed

  - title: test_prometheus_relay
    comment: New in 2019.2.12
    errors:
      - "TypeError: 'NoneType' object is not iterable"
    defects: PROD-35958
    status: ProdFailed

  - title: test_alerta_alerts_consistency
    comment: New in 2019.2.12
    errors:
      - "HTTPConnectionPool(host='10.6.0.70', port=15011): Max retries exceeded with url: /api/v1/alerts"
    defects: PROD-35932
    status: ProdFailed

  - title: test_fluentd_logs[kibana]
    comment: New in 2019.2.12
    errors:
      - "Loggers with mask 'kibana.*' not found in logger list "
    defects: PROD-35965
    status: ProdFailed




