No version for distro humble showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro jazzy showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro kilted showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro rolling showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro ardent showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro bouncy showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro crystal showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro eloquent showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro dashing showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro galactic showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro foxy showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro iron showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

No version for distro jade showing lunar. Known supported distros are highlighted in the buttons above.
Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
lunar

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
indigo

Package Summary

Tags No category tags.
Version 1.0.4
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version hydro-devel
Last Updated 2018-02-14
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
README
No README found. No README in repository either.
CHANGELOG

Changelog for package app_manager

1.0.3 (2015-02-06)

1.0.2 (2014-10-14)

  • changelogs
  • Fixed installs on app_manager
  • Contributors: TheDash
  • Fixed installs on app_manager
  • Contributors: TheDash

Recent questions tagged app_manager at Robotics Stack Exchange

Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
hydro

Package Summary

Tags No category tags.
Version 1.0.4
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version hydro-devel
Last Updated 2018-02-14
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
README
No README found. No README in repository either.
CHANGELOG

Changelog for package app_manager

1.0.3 (2015-02-06)

1.0.2 (2014-10-14)

  • changelogs
  • Fixed installs on app_manager
  • Contributors: TheDash
  • Fixed installs on app_manager
  • Contributors: TheDash

Recent questions tagged app_manager at Robotics Stack Exchange

Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
kinetic

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
melodic

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange

Package symbol

app_manager package from app_manager repo

app_manager

ROS Distro
noetic

Package Summary

Tags No category tags.
Version 1.3.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pr2/app_manager.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2022-10-13
Dev Status UNMAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

app_manager

Additional Links

Maintainers

  • ROS Orphaned Package Maintainers

Authors

  • Jeremy Leibs
  • Ken Conley
  • Yuki Furuta

app_manager Build Status

A package for making launch file an application

Installation

Run sudo apt-get install ros-$ROS_DISTRO-app-manager

Usage

The app_manager node loads information of available application from .installed files. .installed file is a yaml file that defines installed applications in a package like below:

# package_root/apps/app.installed
apps:
- app: pkg_name/app_name1
  display: sample app
- app: pkg_name/app_name2
  display: another sample app

Once .installed file is defined, you have to notify the location of the files to app_manager by either of two ways:

  1. Give the locations as arguments

One way to notify the location is to add --applist argument with rosrun.

rosrun app_manager app_manager --applist `rospack find package_root`/apps

This is useful for testing one small .installed file or a demonstration.

  1. Register as export attributes

Another way to notify the location is to define them in <export> tag in package.xml.

<!-- package_root/package.xml -->
<package>
  ...
  <run_depend>app_manager</run_depend>
  ...
  <export>
    <app_manager app_dir="${prefix}/apps"/>
  </export>
</package>

And launch app_manager without any argument:

rosrun app_manager app_manager

app_manager node automatically searches all .installed files and register as available applications.

Applications can be filtered by platform defined in each .app file. If you set the parameter /robot/type to pr2, then apps for platform pr2 will be available.

rosparam set /robot/type pr2

APIs

All topics/services are advertised under the namespace specified by the parameter /robot/name.

Publishing Topics

  • app_list: List available/running applications
  • application/app_status: Current status of app manager

Services

  • list_apps: List available/running applications
  • start_app: Start an available application
  • stop_app: Stop a runniing application
  • reload_app_list: Reload installed applications from *.installed) file.

Examples

Start default roscore

$ roscore


and start another roscore for app_manager from another Terminal

$ roscore -p 11312

Start app_manager

```

File truncated at 100 lines see the full file

CHANGELOG

Changelog for package app_manager

1.3.0 (2021-11-08)

  • update setuptools to follow noetic migration guide (#36)
  • app_manager cannot start app after failing app #42 (#42)
    • set current_app None when start failed
    • add test_start_fail.test
    • need catch error on _stop_current()
    • add test_start_fail.test test to check #42, app_manager cannot start app after failing app
  • add test to check if we forget catkin_install_python (#44)
    • call app_manager/appA with python2/python3 with ROS_PYTHON_VERSION
    • use catkin_install_python for noetic
    • add test to check if we forget to use catkin_install_python
  • add_rostest(test/test_plugin.test) (#45)
    • run rosdep install in devel_create_tasks.Dockerfile
    • update to format3 and install python-rosdep
    • use port 11313 for app_manager in test_plugin.test
    • add_rostest(test/test_plugin.test)
  • add more test code (#41
    • show more error messages
    • default return value of plugin_order must be list
    • plugins: 'launch_args', 'plugin_args', 'start_plugin_args', 'stop_plugin_args' must be dict, not list
    • test_plugin: add test to check plugins
    • use list(self.subs.items()) instead of self.subs.items()
    • Error processing request: '>' not supported between instances of 'NoneType' and 'int'
    • python3: AttributeError: 'dict' object has no attribute 'iteritems'
    • add test for list_apps/stop_app, add test_stop_app.py
    • python3: AttributeError: 'dict' object has no attribute 'iterkeys'
    • add 2to3 in CHECK_PYTHON3_COMPILE
    • add test/test_app.test
    • test/resources/example-moin.launch: use arg launch_prefox to select if we use xterm or not
  • add arguments in StartAppRequest (#27)
    • use req.args for launch args in app_manager.py
    • add args in StartApp srv
  • do not run stop_app when _stopping is true (#38)
  • fix travis build (#39)
    • fix typo in .travis.yml
    • run with full path
    • add CHECK_PYTHON2_COMPILE and CHECK_PYTHON3_COMPILE tests
  • use plugins as instance / use normal method in app_manager_plugin (#37)
  • set stopped true in app timeout (#31)
  • use system python to check python3 compileall (#34)
  • Contributors: Kei Okada, Shingo Kitagawa

1.2.0 (2021-03-03)

  • Merge pull request #29 from knorth55/add-stopped

  • Merge pull request #28 from knorth55/add-timeout

  • Merge pull request #30 from knorth55/add-all-availables add available_apps in all platform apps

  • add available_apps in all platform apps

  • add stopped context in app_manager plugin

  • add timeout field in app file

  • add enable_app_replacement param in app_manager (#26) This allows for both behaviors (replace currently running app or error out) and let's users choose without changing code...

  • add noetic test and also checks python 2/3 compatibility (#24)

    • add noetic test and also checks python 2/3 compatibility
    • fix to support both python 2/3

    * use rospy.log** instead of print Co-authored-by: Shingo Kitagawa <<shingogo@hotmail.co.jp>>

  • Add app manager plugin

File truncated at 100 lines see the full file

Launch files

  • launch/app_manager.launch
      • master [default: true] — launch master if enabled
      • master_address [default: localhost] — address for app_manager master
      • master_port [default: 11313] — port for app_manager master
      • sigint_timeout [default: 15.0] — Time between sending sigint and sending sigterm to ROSLaunchParent
      • sigterm_timeout [default: 2.0] — Time between sending sigterm and sending sigkill to ROSLaunchParent
      • use_applist [default: false] — load apps from applist argument
      • applist [default: ] — app dirs (space separated)
      • respawn [default: false] — respawn app_manager
      • enable_app_replacement [default: true] — Enable app replacement by running another app, or not
      • enable_topic_remapping [default: true] — Enable name remapping of topic written in interface to app_manager namespace , or not
      • app_manager_args [default: --applist $(arg applist)]
      • app_manager_args [default: ]
  • test/resources/example-min.launch
      • launch_prefix [default: xterm -e]
  • test/plugin/sample_node.xml
      • param1 [default: param1]
      • param2 [default: param2]
      • success [default: false]
      • fail [default: false]

Plugins

No plugins found.

Recent questions tagged app_manager at Robotics Stack Exchange