Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update deployment container script #396

Merged
merged 33 commits into from
Jul 5, 2024

Conversation

patrick-5546
Copy link
Member

@patrick-5546 patrick-5546 commented Jun 2, 2024

Description

  • Everything except ompl bindings on arm is resolved (still waiting for ompl maintainers' response)
  • Decided to only push one docker image, dev instead of base local-base and dev to make it easier to manage
  • BREAKING CHANGE: need to manually delete the mongodb volume (on my computer it was named sailbot_workspace_devcontainer_mongodb-data

To Do

  • Fix CI (user permissions)
  • Add website test node modules volume
  • Use mongodb version that is compatible with rpi (latest one is mongo:4.4.18)

Verification

@SPDonaghy can try the following steps?

  • Verify in a new instance of sailbot workspace (clone in a different directory) to avoid conflicts with your vs code dev container
  • ./scripts/deployment/start_containers.sh --website runs the global launch file Works in WSL, Navigate and Local Transceiver nodes fail
  • ./scripts/deployment/start_containers.sh --website --interactive then run ./scripts/test.sh and all tests pass
    • Since the prod version of the website is running, the local pathfinding test that depends on the website may fail until the website finishes starting up. Works in WSL
  • Turn off internet and ./scripts/deployment/start_containers.sh --website still runs the global launch file

@patrick-5546 patrick-5546 force-pushed the patrick-5546/update-deployment-container branch from de80591 to 79b6736 Compare June 4, 2024 21:42
@SPDonaghy
Copy link
Contributor

Just checking in, I can get to this today or tomorrow most likely

@patrick-5546 patrick-5546 force-pushed the patrick-5546/update-deployment-container branch from 2372040 to 589479e Compare June 5, 2024 17:49
@SPDonaghy
Copy link
Contributor

Ran sudo ./setup.sh and then tried to run sudo ./build.sh and got this error

[0.257s] WARNING:colcon.colcon_core.package_discovery:ignoring unknown package 'virtual_iridium' in --packages-ignore

Summary: 0 packages finished [0.17s]

Any thoughts?

test.sh failed right away and asked if the packages had been built yet.

@SPDonaghy
Copy link
Contributor

Also:

ros@63d48b306fe4:/workspaces/sailbot_workspace$ echo $ROS_DISTRO
humble

but now when I run sudo ./scripts/setup.sh I get

rosdep: error: --rosdistro option requires 1 argument

@patrick-5546
Copy link
Member Author

patrick-5546 commented Jun 6, 2024

Run the scripts without sudo. Sudo runs scripts as the root user instead of the ros user

@SPDonaghy
Copy link
Contributor

Ah okay. I tried sudo since I was getting permission denied for everything. Maybe I need to run chmod?

@patrick-5546
Copy link
Member Author

patrick-5546 commented Jun 6, 2024

What is the output of ls -l when you are inside the container? I'm suspecting that you're encountering the same error as the CI did, but for some reason it does not happen on my machine.

If that's the case, running ./scripts/run-tests.sh should work because it starts by changing the permissions of all the files to the ros user. I also specified the ros user in the docker compose file, but since it didn't work for CI I don't think it will make a difference for you

Also I see you checked off the second point, that means you were able to get to the point that the global launch file was running when not running interactively?

@SPDonaghy
Copy link
Contributor

SPDonaghy commented Jun 7, 2024

This is the output before trying anything else
image

My mistake, no the global launch file does not run, same permission denied problem. will try ./scripts/run-test.sh and if that doesnt work I'll try pulling your change and try again.

@SPDonaghy
Copy link
Contributor

If the permissions of the files are transferred to the ros user then don't the commands to execute the bash scripts have to be entered inside the workspace container?

@patrick-5546
Copy link
Member Author

Try running this in WSL/Ubuntu

./scripts/deployment/start_containers.sh --website --interactive

Then in prompt (inside the sailbot workspace container) run

`./scripts/run-tests.sh

I am also surprised that running it without the interactive flag doesn't work. If the above commands don't work then we should hop on a call to debug it faster

@SPDonaghy
Copy link
Contributor

Try running this in WSL/Ubuntu

./scripts/deployment/start_containers.sh --website --interactive

Then in prompt (inside the sailbot workspace container) run

`./scripts/run-tests.sh

I am also surprised that running it without the interactive flag doesn't work. If the above commands don't work then we should hop on a call to debug it faster

Okay so both of these do work, running from WSL

@SPDonaghy
Copy link
Contributor

Running without interactive flag, from WSL, works. Navigate and Local Transceiver nodes fail.

LT

image

Navigate

image

@SPDonaghy
Copy link
Contributor

./scripts/deployment/start_containers.sh --website fails without internet connection.

image

@patrick-5546
Copy link
Member Author

Navigate and Local Transceiver nodes fail

Do these fail when launching the global launch file in sailbot workspace? If so, not a problem with this workflow.

./scripts/deployment/start_containers.sh --website fails without internet connection

Did you run once with internet before? And do you have wget installed?

@SPDonaghy
Copy link
Contributor

Do these fail when launching the global launch file in sailbot workspace? If so, not a problem with this workflow.

Yes they do, so no worries there.

Did you run once with internet before? And do you have wget installed?

Yup

I tried changing --pull never to pull missing and also removing pull altogether.
I'm guessing its default behavior for docker to make a request for image metadata despite the image already being locally cached.

I found a work around here but its not ideal and it involves changing the Dockerfile.

It seems like this is an issue with buildkit. I tried disabling it and running again but then rosdep complains about not being connected to the internet further down the line, but the containers start at least.

sean@LAPTOP-J5KA2EOT:~/test-workspace/sailbot_workspace$ ./scripts/deployment/start_containers.sh --website
Sending build context to Docker daemon  8.467kB
Step 1/7 : FROM ghcr.io/ubcsailbot/sailbot_workspace/dev:moved-network-deps
 ---> 9deff1065b14
Step 2/7 : ARG USERNAME=ros
 ---> Running in 87a3338ec5de
Removing intermediate container 87a3338ec5de
 ---> 2fe928e3a87e
Step 3/7 : ARG HOME=/home/${USERNAME}
 ---> Running in ceec618eb6cd
Removing intermediate container ceec618eb6cd
 ---> 4050b4978bf2
Step 4/7 : COPY --chown=${USERNAME}:${USERNAME} config ${HOME}
 ---> 2133c28bf621
Step 5/7 : USER ${USERNAME}
 ---> Running in e187e7c4355d
Removing intermediate container e187e7c4355d
 ---> 11e104c89109
Step 6/7 : WORKDIR ${ROS_WORKSPACE}
 ---> Running in 8449a07c8569
Removing intermediate container 8449a07c8569
 ---> 146d84716f8d
Step 7/7 : LABEL com.docker.compose.image.builder=classic
 ---> Running in 0fe5c17606c1
Removing intermediate container 0fe5c17606c1
 ---> af8c127c3aad
Successfully built af8c127c3aad
Successfully tagged deployment-sailbot-workspace:latest
Sending build context to Docker daemon  99.27MB
Step 1/5 : FROM node:20-alpine
 ---> 91247b4bc29d
Step 2/5 : WORKDIR /website
 ---> Running in 65e228180748
Removing intermediate container 65e228180748
 ---> 211a69817ca1
Step 3/5 : EXPOSE 3005
 ---> Running in 1c638c8bdb09
Removing intermediate container 1c638c8bdb09
 ---> c79fb303a694
Step 4/5 : CMD npm install && npm run build && npm run start
 ---> Running in 2fdc366a512a
Removing intermediate container 2fdc366a512a
 ---> 0cc9817e894f
Step 5/5 : LABEL com.docker.compose.image.builder=classic
 ---> Running in 2add8cdf3acd
Removing intermediate container 2add8cdf3acd
 ---> dab9689c4ce1
Successfully built dab9689c4ce1
Successfully tagged deployment-website:latest
[+] Running 3/3
 ✔ Container deployment-sailbot-workspace-1  Started                                                               1.1s
 ✔ Container deployment-website-1            Started                                                               0.3s
 ✔ Container deployment-mongodb-1            Started                                                               0.3s
Adding /workspaces/sailbot_workspace/src/integration_tests/custom-rosdep.yaml to /etc/ros/rosdep/sources.list.d/20-sailbot.list
Ign:1 http://security.ubuntu.com/ubuntu jammy-security InRelease
Ign:2 http://packages.ros.org/ros2/ubuntu jammy InRelease
Ign:3 http://archive.ubuntu.com/ubuntu jammy InRelease
Ign:4 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Ign:5 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
Ign:6 http://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 InRelease
Ign:3 http://archive.ubuntu.com/ubuntu jammy InRelease
Ign:4 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Ign:5 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
Ign:1 http://security.ubuntu.com/ubuntu jammy-security InRelease
Ign:2 http://packages.ros.org/ros2/ubuntu jammy InRelease
Ign:6 http://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 InRelease
Ign:3 http://archive.ubuntu.com/ubuntu jammy InRelease
Ign:4 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Ign:5 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
Ign:1 http://security.ubuntu.com/ubuntu jammy-security InRelease
Ign:2 http://packages.ros.org/ros2/ubuntu jammy InRelease
Ign:6 http://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 InRelease
Err:3 http://archive.ubuntu.com/ubuntu jammy InRelease
  Could not resolve 'archive.ubuntu.com'
Err:4 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
  Could not resolve 'archive.ubuntu.com'
Err:5 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
  Could not resolve 'archive.ubuntu.com'
Err:1 http://security.ubuntu.com/ubuntu jammy-security InRelease
  Could not resolve 'security.ubuntu.com'
Err:6 http://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 InRelease
  Could not resolve 'repo.mongodb.org'
Err:2 http://packages.ros.org/ros2/ubuntu jammy InRelease
  Could not resolve 'packages.ros.org'
Reading package lists...
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy/InRelease  Could not resolve 'archive.ubuntu.com'
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy-updates/InRelease  Could not resolve 'archive.ubuntu.com'
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy-backports/InRelease  Could not resolve 'archive.ubuntu.com'
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/jammy-security/InRelease  Could not resolve 'security.ubuntu.com'
W: Failed to fetch http://repo.mongodb.org/apt/ubuntu/dists/jammy/mongodb-org/6.0/InRelease  Could not resolve 'repo.mongodb.org'
W: Failed to fetch http://packages.ros.org/ros2/ubuntu/dists/jammy/InRelease  Could not resolve 'packages.ros.org'
W: Some index files failed to download. They have been ignored, or old ones used instead.

ERROR: your rosdep installation has not been initialized yet.  Please run:

    rosdep update

[+] Stopping 3/3
 ✔ Container deployment-mongodb-1            Stopped                                                               0.1s
 ✔ Container deployment-website-1            Stopped                                                              10.1s
 ✔ Container deployment-sailbot-workspace-1  Stopped                                                              10.4s
sean@LAPTOP-J5KA2EOT:~/test-workspace/sailbot_workspace$

@patrick-5546
Copy link
Member Author

Running the global launch file without internet works on my computer. Maybe it's a version issue?

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.4 LTS
Release:        22.04
Codename:       jammy

$ docker --version
Docker version 26.1.4, build 5650f9b

$ docker compose version
Docker Compose version v2.27.1-desktop.1

$ wget --version
GNU Wget 1.21.2 built on linux-gnu.
My logs
$ ./scripts/deployment/start_containers.sh --website
[+] Building 0.7s (14/14) FINISHED                                                                                                                                                                                           docker:default
=> [sailbot-workspace internal] load build definition from Dockerfile                                                                                                                                                                 0.0s
=> => transferring dockerfile: 857B                                                                                                                                                                                                   0.0s
=> [sailbot-workspace internal] load metadata for ghcr.io/ubcsailbot/sailbot_workspace/dev:moved-network-deps                                                                                                                         0.0s
=> [sailbot-workspace internal] load .dockerignore                                                                                                                                                                                    0.0s
=> => transferring context: 57B                                                                                                                                                                                                       0.0s
=> [sailbot-workspace internal] load build context                                                                                                                                                                                    0.0s
=> => transferring context: 143B                                                                                                                                                                                                      0.0s
=> [sailbot-workspace 1/3] FROM ghcr.io/ubcsailbot/sailbot_workspace/dev:moved-network-deps                                                                                                                                           0.0s
=> CACHED [sailbot-workspace 2/3] COPY --chown=ros:ros config /home/ros                                                                                                                                                               0.0s
=> CACHED [sailbot-workspace 3/3] WORKDIR /workspaces/sailbot_workspace                                                                                                                                                               0.0s
=> [sailbot-workspace] exporting to image                                                                                                                                                                                             0.0s
=> => exporting layers                                                                                                                                                                                                                0.0s
=> => writing image sha256:0b59fe62f19a35e9ca3b8f217c9af2eded924833a862d4bf6648922c92efb5b2                                                                                                                                           0.0s
=> => naming to docker.io/library/deployment-sailbot-workspace                                                                                                                                                                        0.0s
=> [website internal] load build definition from website.Dockerfile.prod                                                                                                                                                              0.0s
=> => transferring dockerfile: 813B                                                                                                                                                                                                   0.0s
=> [website internal] load metadata for docker.io/library/node:20-alpine                                                                                                                                                              0.0s
=> [website internal] load .dockerignore                                                                                                                                                                                              0.0s
=> => transferring context: 2B                                                                                                                                                                                                        0.0s
=> [website 1/2] FROM docker.io/library/node:20-alpine                                                                                                                                                                                0.0s
=> CACHED [website 2/2] WORKDIR /website                                                                                                                                                                                              0.0s
=> [website] exporting to image                                                                                                                                                                                                       0.0s
=> => exporting layers                                                                                                                                                                                                                0.0s
=> => writing image sha256:90989f66e12db12b4223db1a68bb6b84ad4b34335782e2c221c2bdaca0eeee3e                                                                                                                                           0.0s
=> => naming to docker.io/library/deployment-website                                                                                                                                                                                  0.0s
[+] Running 3/3
✔ Container deployment-sailbot-workspace-1  Started                                                                                                                                                                                   0.4s
✔ Container deployment-website-1            Started                                                                                                                                                                                   0.6s
✔ Container deployment-mongodb-1            Started                                                                                                                                                                                   0.6s
Adding /workspaces/sailbot_workspace/src/integration_tests/custom-rosdep.yaml to /etc/ros/rosdep/sources.list.d/20-sailbot.list
Ign:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Ign:2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Ign:3 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
Ign:4 http://packages.ros.org/ros2/ubuntu jammy InRelease
Ign:5 http://security.ubuntu.com/ubuntu jammy-security InRelease
Ign:6 http://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 InRelease
Ign:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Ign:2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Ign:4 http://packages.ros.org/ros2/ubuntu jammy InRelease
Ign:3 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
Ign:5 http://security.ubuntu.com/ubuntu jammy-security InRelease
Ign:6 http://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 InRelease
Ign:4 http://packages.ros.org/ros2/ubuntu jammy InRelease
Ign:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Ign:5 http://security.ubuntu.com/ubuntu jammy-security InRelease
Ign:2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Ign:3 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
Ign:6 http://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 InRelease
Err:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Could not resolve 'archive.ubuntu.com'
Err:5 http://security.ubuntu.com/ubuntu jammy-security InRelease
Could not resolve 'security.ubuntu.com'
Err:4 http://packages.ros.org/ros2/ubuntu jammy InRelease
Could not resolve 'packages.ros.org'
Err:2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
Could not resolve 'archive.ubuntu.com'
Err:3 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
Could not resolve 'archive.ubuntu.com'
Err:6 http://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 InRelease
Could not resolve 'repo.mongodb.org'
Reading package lists...
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy/InRelease  Could not resolve 'archive.ubuntu.com'
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy-updates/InRelease  Could not resolve 'archive.ubuntu.com'
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/jammy-backports/InRelease  Could not resolve 'archive.ubuntu.com'
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/jammy-security/InRelease  Could not resolve 'security.ubuntu.com'
W: Failed to fetch http://repo.mongodb.org/apt/ubuntu/dists/jammy/mongodb-org/6.0/InRelease  Could not resolve 'repo.mongodb.org'
W: Failed to fetch http://packages.ros.org/ros2/ubuntu/dists/jammy/InRelease  Could not resolve 'packages.ros.org'
W: Some index files failed to download. They have been ignored, or old ones used instead.
#All required rosdeps installed successfully
Starting >>> custom_interfaces
Starting >>> diagnostics
Finished <<< diagnostics [0.23s]
Finished <<< custom_interfaces [1.30s]
Starting >>> boat_simulator
Starting >>> controller
Starting >>> integration_tests
Starting >>> local_pathfinding
Starting >>> network_systems
Finished <<< network_systems [1.51s]
Finished <<< boat_simulator [2.08s]
Finished <<< integration_tests [2.09s]
Finished <<< controller [2.11s]
Finished <<< local_pathfinding [2.11s]

Summary: 7 packages finished [4.02s]
[INFO] [launch]: All log files can be found below /home/ros/.ros/log/2024-06-17-13-53-53-188909-9cae12a476e8-1654
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [navigate-5]: process started with pid [1663]
[INFO] [mock_global_path-6]: process started with pid [1665]
[INFO] [wingsail_ctrl_node-1]: process started with pid [1655]
[INFO] [physics_engine_node-2]: process started with pid [1657]
[INFO] [low_level_control_node-3]: process started with pid [1659]
[INFO] [data_collection_node-4]: process started with pid [1661]
[INFO] [example-7]: process started with pid [1667]
[INFO] [mock_ais-8]: process started with pid [1669]
[INFO] [can_transceiver-9]: process started with pid [1671]
[INFO] [remote_transceiver-10]: process started with pid [1673]
[INFO] [local_transceiver-11]: process started with pid [1675]
[local_transceiver-11] [INFO] [1718657633.461675549] [local_transceiver_node]: Running Local Transceiver in mode: development, with port: /tmp/local_transceiver_test_port.
[local_transceiver-11] open: No such file or directory
[remote_transceiver-10] [INFO] [1718657633.498269590] [remote_transceiver_node]: Running Remote Transceiver in mode: development, with database: test, host: 127.0.0.1, port: 8081, num_threads: 2
[mock_ais-8] [INFO] [1718657633.514452200] [mock_ais_node]: Mock AIS is DISABLED
[can_transceiver-9] [INFO] [1718657633.522748712] [can_transceiver_node]: Running CAN Transceiver in development mode with CAN Sim Intf
[ERROR] [local_transceiver-11]: process has died [pid 1675, exit code 255, cmd '/workspaces/sailbot_workspace/install/lib/network_systems/local_transceiver --ros-args --log-level local_transceiver_node:=info --ros-args -r __node:=local_transceiver_node -r __ns:=/ --params-file /workspaces/sailbot_workspace/src/global_launch/config/globals.yaml --params-file /tmp/launch_params_epzoi4yr --params-file /workspaces/sailbot_workspace/src/global_launch/config/globals.yaml'].
[data_collection_node-4] [WARN] [1718657634.118009581] [data_collection_node]: JSON file with name ros_data_collection already exists. Overwriting old file...
[INFO] [data_collection_node-4]: process has finished cleanly [pid 1661]
[navigate-5] Traceback (most recent call last):
[navigate-5]   File "/workspaces/sailbot_workspace/install/lib/local_pathfinding/navigate", line 33, in <module>
[navigate-5]     sys.exit(load_entry_point('local-pathfinding', 'console_scripts', 'navigate')())
[navigate-5]   File "/workspaces/sailbot_workspace/build/local_pathfinding/local_pathfinding/node_navigate.py", line 14, in main
[navigate-5]     rclpy.spin(node=sailbot)
[navigate-5]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/__init__.py", line 222, in spin
[navigate-5]     executor.spin_once()
[navigate-5]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 739, in spin_once
[navigate-5]     self._spin_once_impl(timeout_sec)
[navigate-5]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 736, in _spin_once_impl
[navigate-5]     raise handler.exception()
[navigate-5]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/task.py", line 239, in __call__
[navigate-5]     self._handler.send(None)
[navigate-5]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 437, in handler
[navigate-5]     await call_coroutine(entity, arg)
[navigate-5]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 351, in _execute_timer
[navigate-5]     await await_or_execute(tmr.callback)
[navigate-5]   File "/opt/ros/humble/local/lib/python3.10/dist-packages/rclpy/executors.py", line 107, in await_or_execute
[navigate-5]     return callback(*args)
[navigate-5]   File "/workspaces/sailbot_workspace/build/local_pathfinding/local_pathfinding/node_navigate.py", line 141, in desired_heading_callback
[navigate-5]     desired_heading = self.get_desired_heading()
[navigate-5]   File "/workspaces/sailbot_workspace/build/local_pathfinding/local_pathfinding/node_navigate.py", line 174, in get_desired_heading
[navigate-5]     self.local_path.update_if_needed(
[navigate-5]   File "/workspaces/sailbot_workspace/build/local_pathfinding/local_pathfinding/local_path.py", line 91, in update_if_needed
[navigate-5]     ompl_path = OMPLPath(
[navigate-5]   File "/workspaces/sailbot_workspace/build/local_pathfinding/local_pathfinding/ompl_path.py", line 79, in __init__
[navigate-5]     self.state = OMPLPathState(local_path_state, self._logger)
[navigate-5]   File "/workspaces/sailbot_workspace/build/local_pathfinding/local_pathfinding/ompl_path.py", line 42, in __init__
[navigate-5]     if local_path_state and len(local_path_state.global_path) > 0
[navigate-5] AttributeError: 'LocalPathState' object has no attribute 'global_path'
[mock_global_path-6] [INFO] [1718657634.577050969] [mgp_main]: Retreiving current position from http://localhost:3005/api/gps
[mock_global_path-6] URL Error: [Errno 111] Connection refused
[mock_global_path-6] [INFO] [1718657634.580704667] [mgp_main]: Global path file is: mock_global_path.csv
[mock_global_path-6]  Reading path
[mock_global_path-6] [INFO] [1718657634.585210219] [mgp_main]: Some waypoints in the global path exceed the maximum interval spacing of 30.0 km. Interpolating between waypoints and generating path
[physics_engine_node-2] [INFO] [1718657634.638956780] [physics_engine_node]: Received data from sail_cmd
[wingsail_ctrl_node-1] [INFO] [1718657634.643312898] [wingsail_ctrl_node]: Published to sail_cmd                 the following angle: 5.75
[physics_engine_node-2] [INFO] [1718657634.673744226] [physics_engine_node]: Publishing to mock_gps
[physics_engine_node-2] [INFO] [1718657634.674398163] [physics_engine_node]: Publishing to mock_wind_sensors
[physics_engine_node-2] [INFO] [1718657634.675141159] [physics_engine_node]: Publishing to mock_kinematics
[low_level_control_node-3] [INFO] [1718657634.695390854] [low_level_control_node]: Received data from mock_gps
[ERROR] [navigate-5]: process has died [pid 1663, exit code 1, cmd '/workspaces/sailbot_workspace/install/lib/local_pathfinding/navigate --ros-args --log-level navigate_main:=info --ros-args -r __node:=navigate_main --params-file /workspaces/sailbot_workspace/src/global_launch/config/globals.yaml'].
[wingsail_ctrl_node-1] [INFO] [1718657635.107923901] [wingsail_ctrl_node]: Published to sail_cmd                 the following angle: 5.75
[wingsail_ctrl_node-1] [INFO] [1718657635.608827207] [wingsail_ctrl_node]: Published to sail_cmd                 the following angle: 5.75
[wingsail_ctrl_node-1] [INFO] [1718657636.107789007] [wingsail_ctrl_node]: Published to sail_cmd                 the following angle: 5.75
^Ccanceled
[+] Stopping 3/3
✔ Container deployment-mongodb-1            Stopped                                                                                                                                                                                   0.1s
✔ Container deployment-website-1            Stopped                                                                                                                                                                                  10.1s
✔ Container deployment-sailbot-workspace-1  Stopped 

@SPDonaghy
Copy link
Contributor

SPDonaghy commented Jun 21, 2024

Running the global launch file without internet works on my computer. Maybe it's a version issue?

You're running on native linux right?

If you're also running wsl2 it must be a version issue. or some docker/buildkit config

I'm not getting those versions with apt-get upgrade so I'll try to get pin docker and docker compose to the same versions as you and test it again.

@patrick-5546
Copy link
Member Author

I'm not getting those versions with apt-get upgrade so I'll try to get pin docker and docker compose to the same versions as you and test it again.

I'm also running wsl2. docker and docker compose come bundled with docker desktop, I have the latest version v4.31.1

@SPDonaghy
Copy link
Contributor

Yeah I'm not able to get this working without internet. When do you have time to hop on a call to debug?

@patrick-5546 patrick-5546 merged commit 11724f8 into main Jul 5, 2024
10 checks passed
@patrick-5546 patrick-5546 deleted the patrick-5546/update-deployment-container branch July 5, 2024 04:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update deployment container
3 participants