code: def update_gates(self, gate_update_metadata, project, gate_step_id):
          
          route_values = {}
          if project is not None:
              route_values['project'] = self._serialize.url('project', project, 'str')
          if gate_step_id is not None:
              route_values['gateStepId'] = self._serialize.url('gate_step_id', gate_step_id, 'int')
          content = self._serialize.body(gate_update_metadata, 'GateUpdateMetadata')
          response = self._send(http_method='PATCH',
                                location_id='2666a539-2001-4f80-bcc7-0379956749d4',
                                version='5.0-preview.1',
                                route_values=route_values,
                                content=content)
          return self._deserialize('ReleaseGates', response)
docs: UpdateGates.
          [Preview API] Updates the gate for a deployment.
          :param :class:`<GateUpdateMetadata> <azure.devops.v5_0.release.models.GateUpdateMetadata>` gate_update_metadata: Metadata to patch the Release Gates.
          :param str project: Project ID or project name
          :param int gate_step_id: Gate step Id.
          :rtype: :class:`<ReleaseGates> <azure.devops.v5_0.release.models.ReleaseGates>`