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