rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 1 | - job: |
Felipe Monteiro | 25949b8 | 2017-11-29 23:25:34 +0000 | [diff] [blame] | 2 | name: patrole-base |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 3 | parent: devstack-tempest |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 4 | description: | |
Doug Schveninger | 8e3b032 | 2020-08-15 19:34:46 -0500 | [diff] [blame] | 5 | Patrole base job for admin,member and reader roles. This job executes RBAC tests |
Doug Hellmann | 4635c6a | 2018-09-08 22:52:43 -0400 | [diff] [blame] | 6 | for all the "core" services that Tempest covers, excluding Swift. |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 7 | required-projects: |
Doug Schveninger | 8e3b032 | 2020-08-15 19:34:46 -0500 | [diff] [blame] | 8 | - name: opendev.org/openstack/tempest |
| 9 | - name: opendev.org/openstack/patrole |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 10 | timeout: 7800 |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 11 | roles: |
Doug Schveninger | 8e3b032 | 2020-08-15 19:34:46 -0500 | [diff] [blame] | 12 | - zuul: opendev.org/openstack/devstack |
ghanshyam | b688823 | 2018-11-04 12:54:58 +0000 | [diff] [blame] | 13 | # Define common irrelevant files to use everywhere else |
| 14 | irrelevant-files: &patrole-irrelevant-files |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 15 | - ^(test-|)requirements.txt$ |
| 16 | - ^.*\.rst$ |
| 17 | - ^doc/.* |
Felipe Monteiro | d1a87c5 | 2018-11-01 11:34:29 -0400 | [diff] [blame] | 18 | - ^etc/.*$ |
Felipe Monteiro | 825d794 | 2018-11-13 23:40:45 -0600 | [diff] [blame] | 19 | - ^patrole_tempest_plugin/tests/unit/.*$ |
| 20 | - ^patrole_tempest_plugin/hacking/.*$ |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 21 | - ^releasenotes/.* |
| 22 | - ^setup.cfg$ |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 23 | vars: |
ps3910 | 6b229a7 | 2019-07-10 21:54:44 -0700 | [diff] [blame] | 24 | tempest_plugins: |
| 25 | - patrole |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 26 | devstack_plugins: |
OpenDev Sysadmins | eedb039 | 2019-04-19 19:33:57 +0000 | [diff] [blame] | 27 | patrole: https://opendev.org/openstack/patrole.git |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 28 | devstack_services: |
| 29 | tempest: true |
| 30 | neutron: true |
Mykola Yakovliev | 04b2628 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 31 | neutron-trunk: true |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 32 | tempest_test_regex: (?!.*\[.*\bslow\b.*\])(^patrole_tempest_plugin\.tests\.api) |
Doug Schveninger | ff2fba2 | 2020-08-24 18:52:37 -0500 | [diff] [blame] | 33 | # run the tempest all tox environment target with patrole regex |
Felipe Monteiro | 0d3c743 | 2018-10-28 02:14:22 +0000 | [diff] [blame] | 34 | tox_envlist: all |
Doug Schveninger | ff2fba2 | 2020-08-24 18:52:37 -0500 | [diff] [blame] | 35 | # allows job to use the tempest version installed with devstack instead of pypi |
| 36 | # according to the requirements.txt |
Felipe Monteiro | 0d3c743 | 2018-10-28 02:14:22 +0000 | [diff] [blame] | 37 | tox_extra_args: --sitepackages |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 38 | |
| 39 | - job: |
Felipe Monteiro | 25949b8 | 2017-11-29 23:25:34 +0000 | [diff] [blame] | 40 | name: patrole-base-multinode |
Ghanshyam Mann | 51368ef | 2020-02-03 13:19:03 -0600 | [diff] [blame] | 41 | parent: tempest-multinode-full-py3 |
Felipe Monteiro | 318fa3b | 2018-06-19 16:53:33 -0400 | [diff] [blame] | 42 | description: |- |
| 43 | Patrole base job for multinode and "slow" tests where "slow" tests include: |
| 44 | |
| 45 | * Tests that take more than ~30 seconds to run. |
| 46 | * Tests that experience spurious failures related to servers, volumes, |
| 47 | backups and similar resources failing to build. |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 48 | timeout: 7800 |
Felipe Monteiro | 318fa3b | 2018-06-19 16:53:33 -0400 | [diff] [blame] | 49 | branches: |
| 50 | - master |
| 51 | required-projects: |
Doug Schveninger | 8e3b032 | 2020-08-15 19:34:46 -0500 | [diff] [blame] | 52 | - opendev.org/openstack/devstack-gate |
| 53 | - opendev.org/openstack/tempest |
| 54 | - opendev.org/openstack/patrole |
ghanshyam | b688823 | 2018-11-04 12:54:58 +0000 | [diff] [blame] | 55 | irrelevant-files: *patrole-irrelevant-files |
Felipe Monteiro | 318fa3b | 2018-06-19 16:53:33 -0400 | [diff] [blame] | 56 | vars: |
ps3910 | 6b229a7 | 2019-07-10 21:54:44 -0700 | [diff] [blame] | 57 | tempest_plugins: |
| 58 | - patrole |
Felipe Monteiro | 318fa3b | 2018-06-19 16:53:33 -0400 | [diff] [blame] | 59 | devstack_plugins: |
OpenDev Sysadmins | eedb039 | 2019-04-19 19:33:57 +0000 | [diff] [blame] | 60 | patrole: https://opendev.org/openstack/patrole.git |
Felipe Monteiro | 318fa3b | 2018-06-19 16:53:33 -0400 | [diff] [blame] | 61 | devstack_services: |
| 62 | tempest: true |
| 63 | neutron: true |
| 64 | tempest_concurrency: 1 |
| 65 | tempest_test_regex: (?=.*\[.*\bslow\b.*\])(^patrole_tempest_plugin\.tests\.api) |
Felipe Monteiro | 0d3c743 | 2018-10-28 02:14:22 +0000 | [diff] [blame] | 66 | tox_envlist: all |
| 67 | tox_extra_args: --sitepackages |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 68 | |
| 69 | - job: |
Hidekazu Nakamura | 211d4f9 | 2018-01-09 10:29:17 +0900 | [diff] [blame] | 70 | name: patrole-admin |
Felipe Monteiro | 25949b8 | 2017-11-29 23:25:34 +0000 | [diff] [blame] | 71 | parent: patrole-base |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 72 | description: Patrole job for admin role. |
| 73 | vars: |
| 74 | devstack_localrc: |
Mykola Yakovliev | e0f3550 | 2018-09-26 18:26:57 -0500 | [diff] [blame] | 75 | RBAC_TEST_ROLES: admin |
Ghanshyam Mann | 8cac133 | 2021-07-27 10:56:29 -0500 | [diff] [blame] | 76 | # https://storyboard.openstack.org/#!/story/2009048 |
| 77 | tempest_exclude_regex: patrole_tempest_plugin.tests.api.volume.test_volume_actions_rbac.VolumesActionsV3RbacTest.test_force_detach_volume_from_instance |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 78 | |
| 79 | - job: |
Hidekazu Nakamura | 211d4f9 | 2018-01-09 10:29:17 +0900 | [diff] [blame] | 80 | name: patrole-member |
Felipe Monteiro | 25949b8 | 2017-11-29 23:25:34 +0000 | [diff] [blame] | 81 | parent: patrole-base |
Felipe Monteiro | 2fc2929 | 2018-06-15 18:26:27 -0400 | [diff] [blame] | 82 | description: Patrole job for member role. |
Felipe Monteiro | 4c3ae9b | 2018-02-25 18:33:32 +0000 | [diff] [blame] | 83 | # This currently works from stable/pike onward. |
ghanshyam | a78dcae | 2018-11-22 08:50:47 +0000 | [diff] [blame] | 84 | branches: ^(?!stable/ocata).*$ |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 85 | vars: |
| 86 | devstack_localrc: |
Mykola Yakovliev | e0f3550 | 2018-09-26 18:26:57 -0500 | [diff] [blame] | 87 | RBAC_TEST_ROLES: member |
Ghanshyam Mann | 8cac133 | 2021-07-27 10:56:29 -0500 | [diff] [blame] | 88 | # https://storyboard.openstack.org/#!/story/2009216 |
| 89 | tempest_exclude_regex: patrole_tempest_plugin.tests.api.volume.test_volume_types_extra_specs_rbac.VolumeTypesExtraSpecsRbacTest.test_show_volume_type_extra_specs |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 90 | |
| 91 | - job: |
Sergey Vilgelm | 11e0c66 | 2019-01-25 16:05:56 -0600 | [diff] [blame] | 92 | name: patrole-reader |
| 93 | parent: patrole-base |
| 94 | description: Patrole job for reader role. |
| 95 | # This currently works from stable/stein onward. |
| 96 | branches: ^(?!stable/(ocata|pike|queens|rocky)).*$ |
Sergey Vilgelm | 11e0c66 | 2019-01-25 16:05:56 -0600 | [diff] [blame] | 97 | vars: |
| 98 | devstack_localrc: |
| 99 | RBAC_TEST_ROLES: reader |
Ghanshyam Mann | 8cac133 | 2021-07-27 10:56:29 -0500 | [diff] [blame] | 100 | # https://storyboard.openstack.org/#!/story/2009216 |
| 101 | tempest_exclude_regex: patrole_tempest_plugin.tests.api.volume.test_volume_types_extra_specs_rbac.VolumeTypesExtraSpecsRbacTest.test_show_volume_type_extra_specs |
Sergey Vilgelm | 11e0c66 | 2019-01-25 16:05:56 -0600 | [diff] [blame] | 102 | |
| 103 | - job: |
Ghanshyam Mann | 7304b7c | 2021-04-29 08:53:50 -0500 | [diff] [blame] | 104 | name: patrole-member-wallaby |
| 105 | parent: patrole-member |
| 106 | override-checkout: stable/wallaby |
| 107 | |
| 108 | - job: |
Ghanshyam Mann | f6d7d0f | 2020-11-17 12:37:49 -0600 | [diff] [blame] | 109 | name: patrole-member-victoria |
| 110 | parent: patrole-member |
| 111 | override-checkout: stable/victoria |
| 112 | |
| 113 | - job: |
Vishakha Agarwal | a19f3db | 2020-05-02 21:09:33 +0530 | [diff] [blame] | 114 | name: patrole-member-ussuri |
| 115 | parent: patrole-member |
Ghanshyam Mann | 8592e58 | 2020-07-09 15:42:19 -0500 | [diff] [blame] | 116 | nodeset: openstack-single-node-bionic |
Vishakha Agarwal | a19f3db | 2020-05-02 21:09:33 +0530 | [diff] [blame] | 117 | override-checkout: stable/ussuri |
Ghanshyam Mann | 8cac133 | 2021-07-27 10:56:29 -0500 | [diff] [blame] | 118 | vars: |
| 119 | # https://storyboard.openstack.org/#!/story/2009048 |
| 120 | tempest_exclude_regex: patrole_tempest_plugin.tests.api.volume.test_volume_actions_rbac.VolumesActionsV3RbacTest.test_force_detach_volume_from_instance |
Vishakha Agarwal | a19f3db | 2020-05-02 21:09:33 +0530 | [diff] [blame] | 121 | |
| 122 | - job: |
Hidekazu Nakamura | 211d4f9 | 2018-01-09 10:29:17 +0900 | [diff] [blame] | 123 | name: patrole-multinode-admin |
Felipe Monteiro | 25949b8 | 2017-11-29 23:25:34 +0000 | [diff] [blame] | 124 | parent: patrole-base-multinode |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 125 | voting: false |
Felipe Monteiro | 318fa3b | 2018-06-19 16:53:33 -0400 | [diff] [blame] | 126 | vars: |
| 127 | devstack_localrc: |
Mykola Yakovliev | e0f3550 | 2018-09-26 18:26:57 -0500 | [diff] [blame] | 128 | RBAC_TEST_ROLES: admin |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 129 | |
| 130 | - job: |
Hidekazu Nakamura | 211d4f9 | 2018-01-09 10:29:17 +0900 | [diff] [blame] | 131 | name: patrole-multinode-member |
Felipe Monteiro | 25949b8 | 2017-11-29 23:25:34 +0000 | [diff] [blame] | 132 | parent: patrole-base-multinode |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 133 | voting: false |
Felipe Monteiro | 318fa3b | 2018-06-19 16:53:33 -0400 | [diff] [blame] | 134 | vars: |
| 135 | devstack_localrc: |
Mykola Yakovliev | e0f3550 | 2018-09-26 18:26:57 -0500 | [diff] [blame] | 136 | RBAC_TEST_ROLES: member |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 137 | |
| 138 | - job: |
Doug Schveninger | ff2fba2 | 2020-08-24 18:52:37 -0500 | [diff] [blame] | 139 | name: patrole-multinode-reader |
| 140 | parent: patrole-base-multinode |
| 141 | voting: false |
| 142 | vars: |
| 143 | devstack_localrc: |
| 144 | RBAC_TEST_ROLES: reader |
| 145 | |
| 146 | - job: |
Hidekazu Nakamura | 211d4f9 | 2018-01-09 10:29:17 +0900 | [diff] [blame] | 147 | name: patrole-py35-member |
Felipe Monteiro | 25949b8 | 2017-11-29 23:25:34 +0000 | [diff] [blame] | 148 | parent: patrole-base |
Felipe Monteiro | 2fc2929 | 2018-06-15 18:26:27 -0400 | [diff] [blame] | 149 | description: Patrole py35 job for member role. |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 150 | vars: |
| 151 | devstack_localrc: |
Felipe Monteiro | 2fc2929 | 2018-06-15 18:26:27 -0400 | [diff] [blame] | 152 | # Use member for py35 because arguably negative testing is more |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 153 | # important than admin, which is already covered by patrole-admin job. |
Mykola Yakovliev | e0f3550 | 2018-09-26 18:26:57 -0500 | [diff] [blame] | 154 | RBAC_TEST_ROLES: member |
Doug Hellmann | 8669a51 | 2018-03-22 17:42:03 -0400 | [diff] [blame] | 155 | USE_PYTHON3: true |
Felipe Monteiro | 097d94c | 2018-02-25 13:48:14 +0000 | [diff] [blame] | 156 | devstack_services: |
| 157 | s-account: false |
| 158 | s-container: false |
| 159 | s-object: false |
| 160 | s-proxy: false |
| 161 | # Without Swift, c-bak cannot run (in the gate at least). |
| 162 | c-bak: false |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 163 | |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 164 | - job: |
Felipe Monteiro | bbbdd93 | 2018-10-31 23:28:39 -0400 | [diff] [blame] | 165 | name: patrole-extension-base |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 166 | parent: patrole-base |
| 167 | description: | |
Felipe Monteiro | bbbdd93 | 2018-10-31 23:28:39 -0400 | [diff] [blame] | 168 | Patrole plugin job for admin and member roles which runs RBAC tests for |
| 169 | neutron-tempest-plugin APIs (if the plugin is installed). |
| 170 | |
| 171 | Covers Neutron extension functionality only. Should not be used for |
| 172 | supporting Neutron plugins like fwaas. |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 173 | required-projects: |
Doug Schveninger | 8e3b032 | 2020-08-15 19:34:46 -0500 | [diff] [blame] | 174 | - name: opendev.org/openstack/tempest |
| 175 | - name: opendev.org/openstack/patrole |
| 176 | - name: opendev.org/openstack/neutron-tempest-plugin |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 177 | vars: |
ps3910 | 6b229a7 | 2019-07-10 21:54:44 -0700 | [diff] [blame] | 178 | tempest_plugins: |
| 179 | - patrole |
| 180 | - neutron-tempest-plugin |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 181 | devstack_plugins: |
OpenDev Sysadmins | eedb039 | 2019-04-19 19:33:57 +0000 | [diff] [blame] | 182 | neutron: https://opendev.org/openstack/neutron.git |
| 183 | patrole: https://opendev.org/openstack/patrole.git |
| 184 | neutron-tempest-plugin: https://opendev.org/openstack/neutron-tempest-plugin.git |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 185 | devstack_services: |
| 186 | tempest: true |
| 187 | neutron: true |
| 188 | neutron-segments: true |
Mykola Yakovliev | 56bb731 | 2018-08-16 18:34:10 -0500 | [diff] [blame] | 189 | neutron-qos: true |
Felipe Monteiro | bbbdd93 | 2018-10-31 23:28:39 -0400 | [diff] [blame] | 190 | tempest_test_regex: (?=.*ExtRbacTest)(^patrole_tempest_plugin\.tests\.api) |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 191 | |
| 192 | - job: |
Felipe Monteiro | bbbdd93 | 2018-10-31 23:28:39 -0400 | [diff] [blame] | 193 | name: patrole-extension-admin |
| 194 | parent: patrole-extension-base |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 195 | voting: false |
| 196 | vars: |
| 197 | devstack_localrc: |
Mykola Yakovliev | e0f3550 | 2018-09-26 18:26:57 -0500 | [diff] [blame] | 198 | RBAC_TEST_ROLES: admin |
Sergey Vilgelm | 11e0c66 | 2019-01-25 16:05:56 -0600 | [diff] [blame] | 199 | |
| 200 | - job: |
| 201 | name: patrole-extension-member |
| 202 | parent: patrole-extension-base |
| 203 | voting: false |
| 204 | vars: |
| 205 | devstack_localrc: |
| 206 | RBAC_TEST_ROLES: member |
Mykola Yakovliev | d067148 | 2018-07-23 12:13:02 -0500 | [diff] [blame] | 207 | |
Doug Schveninger | ff2fba2 | 2020-08-24 18:52:37 -0500 | [diff] [blame] | 208 | - job: |
| 209 | name: patrole-extension-reader |
| 210 | parent: patrole-extension-base |
| 211 | voting: false |
| 212 | vars: |
| 213 | devstack_localrc: |
| 214 | RBAC_TEST_ROLES: reader |
| 215 | |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 216 | - project: |
Felipe Monteiro | f4cb74c | 2018-08-19 17:18:56 +0100 | [diff] [blame] | 217 | templates: |
Andreas Jaeger | a3c15da | 2018-09-09 06:39:31 +0200 | [diff] [blame] | 218 | - openstack-cover-jobs |
Martin Kopec | fa0ee13 | 2021-10-07 08:48:51 +0000 | [diff] [blame] | 219 | - openstack-python3-yoga-jobs |
Doug Hellmann | 4635c6a | 2018-09-08 22:52:43 -0400 | [diff] [blame] | 220 | - check-requirements |
Doug Hellmann | d720bad | 2018-09-08 22:54:03 -0400 | [diff] [blame] | 221 | - publish-openstack-docs-pti |
| 222 | - release-notes-jobs-python3 |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 223 | check: |
| 224 | jobs: |
Hidekazu Nakamura | 211d4f9 | 2018-01-09 10:29:17 +0900 | [diff] [blame] | 225 | - patrole-admin |
| 226 | - patrole-member |
Sergey Vilgelm | 11e0c66 | 2019-01-25 16:05:56 -0600 | [diff] [blame] | 227 | - patrole-reader |
Ghanshyam Mann | 7304b7c | 2021-04-29 08:53:50 -0500 | [diff] [blame] | 228 | - patrole-member-wallaby |
Ghanshyam Mann | f6d7d0f | 2020-11-17 12:37:49 -0600 | [diff] [blame] | 229 | - patrole-member-victoria |
Vishakha Agarwal | a19f3db | 2020-05-02 21:09:33 +0530 | [diff] [blame] | 230 | - patrole-member-ussuri |
Hidekazu Nakamura | 211d4f9 | 2018-01-09 10:29:17 +0900 | [diff] [blame] | 231 | - patrole-multinode-admin |
| 232 | - patrole-multinode-member |
Doug Schveninger | ff2fba2 | 2020-08-24 18:52:37 -0500 | [diff] [blame] | 233 | - patrole-multinode-reader |
Felipe Monteiro | bbbdd93 | 2018-10-31 23:28:39 -0400 | [diff] [blame] | 234 | - patrole-extension-admin |
| 235 | - patrole-extension-member |
Doug Schveninger | ff2fba2 | 2020-08-24 18:52:37 -0500 | [diff] [blame] | 236 | - patrole-extension-reader |
rajat29 | 0fc826d | 2017-11-21 00:06:00 +0530 | [diff] [blame] | 237 | gate: |
| 238 | jobs: |
Hidekazu Nakamura | 211d4f9 | 2018-01-09 10:29:17 +0900 | [diff] [blame] | 239 | - patrole-admin |
| 240 | - patrole-member |
Doug Schveninger | ff2fba2 | 2020-08-24 18:52:37 -0500 | [diff] [blame] | 241 | - patrole-reader |
Felipe Monteiro | 1bee142 | 2018-08-28 21:19:32 -0400 | [diff] [blame] | 242 | periodic-stable: |
| 243 | jobs: |
Ghanshyam Mann | 7304b7c | 2021-04-29 08:53:50 -0500 | [diff] [blame] | 244 | - patrole-member-wallaby |
Ghanshyam Mann | f6d7d0f | 2020-11-17 12:37:49 -0600 | [diff] [blame] | 245 | - patrole-member-victoria |
Vishakha Agarwal | a19f3db | 2020-05-02 21:09:33 +0530 | [diff] [blame] | 246 | - patrole-member-ussuri |