tree: fad1da2ae36ee021de7a014f09a78e3d8c72629d [path history] [tgz]
  1. BUILD.gn
  2. OWNERS
  3. README.md
  4. allow_list.cc
  5. allow_list.h
  6. allow_list_unittest.cc
  7. appmgr.cc
  8. appmgr.h
  9. cache_control.cc
  10. cache_control.h
  11. component_container.h
  12. component_controller_impl.cc
  13. component_controller_impl.h
  14. component_controller_unittest.cc
  15. component_event_provider_impl.cc
  16. component_event_provider_impl.h
  17. component_event_provider_unittest.cc
  18. component_id_index.cc
  19. component_id_index.h
  20. component_id_index_unittest.cc
  21. config/
  22. constants.h
  23. cpu_watcher.cc
  24. cpu_watcher.h
  25. cpu_watcher_unittest.cc
  26. crash_introspector.cc
  27. crash_introspector.h
  28. debug_info_retriever.cc
  29. debug_info_retriever.h
  30. dynamic_library_loader.cc
  31. dynamic_library_loader.h
  32. environment_controller_impl.cc
  33. environment_controller_impl.h
  34. fidl/
  35. hub/
  36. integration_tests/
  37. job_provider_impl.cc
  38. job_provider_impl.h
  39. lifecycle.cc
  40. lifecycle.h
  41. log_connector_impl.cc
  42. log_connector_impl.h
  43. log_connector_impl_unittest.cc
  44. main.cc
  45. meta/
  46. moniker.cc
  47. moniker.h
  48. moniker_unittest.cc
  49. namespace.cc
  50. namespace.h
  51. namespace_builder.cc
  52. namespace_builder.h
  53. namespace_builder_unittest.cc
  54. namespace_unittest.cc
  55. policy_checker.cc
  56. policy_checker.h
  57. policy_checker_unittest.cc
  58. realm.cc
  59. realm.h
  60. runner_holder.cc
  61. runner_holder.h
  62. scheme_map.cc
  63. scheme_map.config
  64. scheme_map.h
  65. scheme_map_unittest.cc
  66. service_provider_dir_impl.cc
  67. service_provider_dir_impl.h
  68. service_provider_dir_unittest.cc
  69. startup_service.cc
  70. startup_service.h
  71. storage_unittest.cc
  72. storage_watchdog.cc
  73. storage_watchdog.h
  74. storage_watchdog_unittest.cc
  75. system_diagnostics_directory.cc
  76. system_diagnostics_directory.h
  77. test/
  78. util.cc
  79. util.h
  80. util_unittest.cc
src/sys/appmgr/README.md

appmgr

Reviewed on: 2019-07-22

Appmgr is responsible for launching v1 components and managing the namespaces in which those components run. It is the first process started in the fuchsia job by devmgr.

See:

Building

This project is typically included in Fuchsia builds by default, but it can be added to a build by adding --with //src/sys/appmgr to the fx set invocation.

Running

Appmgr is run on all non-bringup Fuchsia builds. It can be interacted with via the fuchsia.sys FIDL apis.

Testing

Unit tests for appmgr are available in the appmgr_unittests package.

$ fx run-test appmgr_unittests

Integration tests are available in the following packages, and each can be run with fx run-test.

  • appmgr_integration_tests
  • build_info_tests
  • components_binary_tests
  • has_deprecated_shell
  • has_isolated_cache_storage
  • has_isolated_persistent_storage
  • has_isolated_temp
  • has_shell_commands
  • has_system_temp
  • inspect_integration_tests
  • inspect_vmo_integration_tests
  • isolated_persistent_storage
  • multiple_components
  • no_isolated_temp
  • no_persistent_storage
  • no_services
  • no_shell_commands
  • no_shell
  • no_system_temp
  • some_services
  • uses_system_deprecated_data

Source layout

The entrypoint is located in main.cc, with the majority of the implementation living in top-level .cc and .h files, with the exception of the hub implementation which is in hub/. Unit tests are located in _unittest.cc files.

Integration tests are in the integration_tests/ directory.