Skip to content

Commit

Permalink
{eloquent} ros2doctor, ros2cli: restore the dependency on python3-ifc…
Browse files Browse the repository at this point in the history
…fg, python3-netifaces

* ros2 doctor still fails with:

    root@qemux86-64:~# ros2 doctor
    /usr/lib/python3.8/site-packages/ros2doctor/api/format.py: 76: UserWarning: ERROR: No loopback IP address is found.
    /usr/lib/python3.8/site-packages/ros2doctor/api/format.py: 76: UserWarning: Only loopback IP address is found.
    /usr/lib/python3.8/site-packages/ros2doctor/api/format.py: 76: UserWarning: No multicast IP address is found.
    /usr/lib/python3.8/site-packages/ros2doctor/api/format.py: 76: UserWarning: Fail to call PlatformCheck class functions.

    1/2 checks failed

    Failed modules: network

  but that is still slightly better than

    root@qemux86-64:~# ros2 doctor
    /usr/lib/python3.8/site-packages/ros2doctor/api/format.py: 76: UserWarning: Failed to import ifcfg. Use `python -m pip install ifcfg` to install needed package.
    /usr/lib/python3.8/site-packages/ros2doctor/api/format.py: 76: UserWarning: ERROR: ifcfg is not imported. Unable to run network check.
    /usr/lib/python3.8/site-packages/ros2doctor/api/format.py: 76: UserWarning: Fail to call PlatformCheck class functions.

    1/2 checks failed

    Failed modules: network

  I'll check why it doesn't parse ifconfig correctly, it could be the
  busybox version of ifconfig using different format
  lrwxrwxrwx    1 root     root          19 Jun 16 07:10 /sbin/ifconfig -> /bin/busybox.nosuid

  root@qemux86-64:~# ifconfig
  eth0      Link encap:Ethernet  HWaddr 52:54:00:12:34:02
            inet addr:192.168.7.2  Bcast:192.168.7.255  Mask:255.255.255.0
            inet6 addr: fe80::5054:ff:fe12:3402/64 Scope:Link
            UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
            RX packets:5 errors:0 dropped:0 overruns:0 frame:0
            TX packets:3807 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1000
            RX bytes:426 (426.0 B)  TX bytes:1350142 (1.2 MiB)

  lo        Link encap:Local Loopback
            inet addr:127.0.0.1  Mask:255.0.0.0
            inet6 addr: ::1/128 Scope:Host
            UP LOOPBACK RUNNING  MTU:65536  Metric:1
            RX packets:4076 errors:0 dropped:0 overruns:0 frame:0
            TX packets:4076 errors:0 dropped:0 overruns:0 carrier:0
            collisions:0 txqueuelen:1000
            RX bytes:734356 (717.1 KiB)  TX bytes:734356 (717.1 KiB)

  while in docker with proper net-tools:
  root@dafcbbf25ff2:/# dpkg -S /sbin/ifconfig
  net-tools: /sbin/ifconfig

  root@dafcbbf25ff2:/# ifconfig
  eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
          inet 172.17.0.2  netmask 255.255.0.0  broadcast 172.17.255.255
          ether 02:42:ac:11:00:02  txqueuelen 0  (Ethernet)
          RX packets 39299  bytes 89614740 (89.6 MB)
          RX errors 0  dropped 0  overruns 0  frame 0
          TX packets 33767  bytes 3807354 (3.8 MB)
          TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

  lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
          inet 127.0.0.1  netmask 255.0.0.0
          loop  txqueuelen 1000  (Local Loopback)
          RX packets 5658  bytes 1294220 (1.2 MB)
          RX errors 0  dropped 0  overruns 0  frame 0
          TX packets 5658  bytes 1294220 (1.2 MB)
          TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

  see those flags which ros2doctor is using to find loopback and
  multicast in:
  https://github.com/ros2/ros2cli/blob/a7541b9b339e2a338a4d9ff2ff96c2ed0ce03236/ros2doctor/ros2doctor/api/network.py#L42

  I've added comment in:
  ftao/python-ifcfg#43

Signed-off-by: Martin Jansa <martin.jansa@lge.com>
  • Loading branch information
shr-project committed Jul 3, 2020
1 parent 2e2eddc commit 6db50ea
Showing 1 changed file with 8 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -103,15 +103,19 @@ ROS_SUPERFLORE_GENERATED_BUILDTOOLS += " \
"

ROS_UNRESOLVED_PLATFORM_PKG_python3-cryptography = "python3-cryptography"
#ROS_UNRESOLVED_PLATFORM_PKG_python3-ifcfg = "python3-ifcfg"
#ROS_UNRESOLVED_PLATFORM_PKG_python3-netifaces = "python3-netifaces"
ROS_UNRESOLVED_PLATFORM_PKG_python3-ifcfg = ""
ROS_UNRESOLVED_PLATFORM_PKG_python3-netifaces = ""

ROS_UNRESOLVED_PLATFORM_PKG_python3-mypy = "python3-mypy"

ROS_UNRESOLVED_PLATFORM_PKG_python3-future = "python3-future"

# Used by:
# generated-recipes/ros2cli/ros2cli_0.8.7-1.bb
ROS_UNRESOLVED_PLATFORM_PKG_python3-netifaces = "python3-netifaces"

# Used by:
# generated-recipes/ros2cli/ros2doctor_0.8.7-1.bb
ROS_UNRESOLVED_PLATFORM_PKG_python3-ifcfg = "python3-ifcfg"

# Used by generated-recipes/geographic-info/geodesy_1.0.1-1.bb
# use python3 version because python2 is EOL
ROS_UNRESOLVED_PLATFORM_PKG_python-pyproj = "python3-pyproj"
Expand Down

0 comments on commit 6db50ea

Please sign in to comment.