update_engine: Use operation instead of current_operation from update_engine.proto

The current mechanism for interchaning the current operation of
update_engine is quite old and very fragile to changes. Currently, each
client defines its own set of operations, writes their own string to
enum conversion logic, etc. We need to unify all these clients to use
just one set of well defined operations.

This CL uses the new enum Operation from the protobuf instead of
transferring a string to identify the current operation of the
update_engine.

BUG=chromium:977320
TEST=precq

Cq-Depend: chromium:1690424
Change-Id: I4d3a2a142c169cf6c972fe58d1d8d936d2349eed
Reviewed-on: https://chromium-review.googlesource.com/1690683
Tested-by: Amin Hassani <ahassani@chromium.org>
Commit-Ready: Amin Hassani <ahassani@chromium.org>
Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org>
Reviewed-by: Xiaochu Liu <xiaochu@chromium.org>
Reviewed-by: Sen Jiang <senj@chromium.org>
Reviewed-by: Nicolas Norvez <norvez@chromium.org>
Reviewed-by: Ben Chan <benchan@google.com>
5 files changed
tree: 8088e0fd25ccb8d51e37af5a0628bbae8cc6e815
  1. binder_bindings/
  2. client-headers/
  3. client_library/
  4. common/
  5. dbus_bindings/
  6. fuzz/
  7. init/
  8. payload_consumer/
  9. payload_generator/
  10. sample_images/
  11. scripts/
  12. update_engine/
  13. update_manager/
  14. update_payload_key/
  15. .clang-format
  16. .gitignore
  17. Android.bp
  18. binder_service_android.cc
  19. binder_service_android.h
  20. boot_control_android.cc
  21. boot_control_android.h
  22. boot_control_android_unittest.cc
  23. boot_control_chromeos.cc
  24. boot_control_chromeos.h
  25. boot_control_chromeos_unittest.cc
  26. BUILD.gn
  27. certificate_checker.cc
  28. certificate_checker.h
  29. certificate_checker_unittest.cc
  30. chrome_browser_proxy_resolver.cc
  31. chrome_browser_proxy_resolver.h
  32. COMMIT-QUEUE.ini
  33. common_service.cc
  34. common_service.h
  35. common_service_unittest.cc
  36. connection_manager.cc
  37. connection_manager.h
  38. connection_manager_android.cc
  39. connection_manager_android.h
  40. connection_manager_interface.h
  41. connection_manager_unittest.cc
  42. connection_utils.cc
  43. connection_utils.h
  44. CPPLINT.cfg
  45. daemon_android.cc
  46. daemon_android.h
  47. daemon_base.h
  48. daemon_chromeos.cc
  49. daemon_chromeos.h
  50. daemon_state_android.cc
  51. daemon_state_android.h
  52. daemon_state_interface.h
  53. dbus_connection.cc
  54. dbus_connection.h
  55. dbus_service.cc
  56. dbus_service.h
  57. dbus_test_utils.h
  58. dlcservice_chromeos.cc
  59. dlcservice_chromeos.h
  60. dynamic_partition_control_android.cc
  61. dynamic_partition_control_android.h
  62. dynamic_partition_control_interface.h
  63. fake_file_writer.h
  64. fake_p2p_manager.h
  65. fake_p2p_manager_configuration.h
  66. fake_shill_proxy.cc
  67. fake_shill_proxy.h
  68. fake_system_state.cc
  69. fake_system_state.h
  70. generate_pc_file.sh
  71. hardware_android.cc
  72. hardware_android.h
  73. hardware_chromeos.cc
  74. hardware_chromeos.h
  75. hardware_chromeos_unittest.cc
  76. image_properties.h
  77. image_properties_android.cc
  78. image_properties_android_unittest.cc
  79. image_properties_chromeos.cc
  80. image_properties_chromeos_unittest.cc
  81. libcurl_http_fetcher.cc
  82. libcurl_http_fetcher.h
  83. libcurl_http_fetcher_unittest.cc
  84. local_coverage_rate
  85. main.cc
  86. metrics_constants.h
  87. metrics_reporter_android.cc
  88. metrics_reporter_android.h
  89. metrics_reporter_interface.h
  90. metrics_reporter_omaha.cc
  91. metrics_reporter_omaha.h
  92. metrics_reporter_omaha_unittest.cc
  93. metrics_reporter_stub.cc
  94. metrics_reporter_stub.h
  95. metrics_utils.cc
  96. metrics_utils.h
  97. metrics_utils_unittest.cc
  98. mock_boot_control_hal.h
  99. mock_certificate_checker.h
  100. mock_connection_manager.h
  101. mock_dynamic_partition_control.h
  102. mock_file_writer.h
  103. mock_metrics_reporter.h
  104. mock_omaha_request_params.h
  105. mock_p2p_manager.h
  106. mock_payload_state.h
  107. mock_power_manager.h
  108. mock_service_observer.h
  109. mock_update_attempter.h
  110. MODULE_LICENSE_APACHE2
  111. network_selector.h
  112. network_selector_android.cc
  113. network_selector_android.h
  114. network_selector_interface.h
  115. network_selector_stub.cc
  116. network_selector_stub.h
  117. NOTICE
  118. omaha_request_action.cc
  119. omaha_request_action.h
  120. omaha_request_action_fuzzer.cc
  121. omaha_request_action_unittest.cc
  122. omaha_request_builder_xml.cc
  123. omaha_request_builder_xml.h
  124. omaha_request_builder_xml_unittest.cc
  125. omaha_request_params.cc
  126. omaha_request_params.h
  127. omaha_request_params_unittest.cc
  128. omaha_response.h
  129. omaha_response_handler_action.cc
  130. omaha_response_handler_action.h
  131. omaha_response_handler_action_unittest.cc
  132. omaha_utils.cc
  133. omaha_utils.h
  134. omaha_utils_unittest.cc
  135. OWNERS
  136. p2p_manager.cc
  137. p2p_manager.h
  138. p2p_manager_unittest.cc
  139. payload_state.cc
  140. payload_state.h
  141. payload_state_interface.h
  142. payload_state_unittest.cc
  143. power_manager_android.cc
  144. power_manager_android.h
  145. power_manager_chromeos.cc
  146. power_manager_chromeos.h
  147. power_manager_interface.h
  148. PRESUBMIT.cfg
  149. PREUPLOAD.cfg
  150. pylintrc
  151. real_system_state.cc
  152. real_system_state.h
  153. run_unittests
  154. sample_omaha_v3_response.xml
  155. service_delegate_android_interface.h
  156. service_observer_interface.h
  157. shill_proxy.cc
  158. shill_proxy.h
  159. shill_proxy_interface.h
  160. sideload_main.cc
  161. system_state.h
  162. tar_bunzip2.gni
  163. test_http_server.cc
  164. test_subprocess.cc
  165. testrunner.cc
  166. unittest_key.pem
  167. unittest_key2.pem
  168. update_attempter.cc
  169. update_attempter.h
  170. update_attempter_android.cc
  171. update_attempter_android.h
  172. update_attempter_android_unittest.cc
  173. update_attempter_unittest.cc
  174. update_boot_flags_action.cc
  175. update_boot_flags_action.h
  176. update_boot_flags_action_unittest.cc
  177. update_engine.conf
  178. update_engine.rc
  179. update_engine_client.cc
  180. update_engine_client_android.cc
  181. update_metadata.proto
  182. update_status_utils.cc
  183. update_status_utils.h
  184. UpdateEngine.conf