tests:

  - 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_stopped_server[id-aaacd1d0-55a2-4ce8-818a-b5439df8adc9]"
    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_suspended_server[id-8ca07fec-0262-11e7-907e-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_oneserver.ImagesOneServerTestJSON.test_create_delete_image[id-3731d080-d4c5-4872-b41a-64d0d0021314]"
    errors:
      - "502 GET https://10.6.0.80:8774/v2.1/images/"
    status: ProdFailed
    defects: PROD-35212


  - 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.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: ".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: 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.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

## ==================================================
#             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_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_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

## ==================================================
#              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_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




