Closed PeterBowman closed 4 months ago
Besides, such image would not be that useful beyond CI. Perhaps we could go a step further and prepare another one that contains a working build of roboticslab-uc3m/vision libraries and tools?
I believe that the Docker image, even without a working build of roboticslab-uc3m/vision libraries and tools, would be useful for user land. Two use cases:
apt-get build-dep
workflow.Might be useful: https://github.com/Jimver/cuda-toolkit (a GH action to install CUDA).
Done at https://github.com/roboticslab-uc3m/vision/commit/738078a20e2e6497fba53cffd47920052fc3ba50. A new workflow builds the Dockerfile and pushes its image to GHCR. It is available here in two flavors:
docker pull ghcr.io/roboticslab-uc3m/vision:ubuntu-20.04-opencv-4.x
docker pull ghcr.io/roboticslab-uc3m/vision:ubuntu-22.04-opencv-4.x
Latest OpenCV's 4.x
branch is built in it (currently 4.10) along with all apt
dependencies (most notably, PCL). Our CI builds now pull this image and run all tests against a temporary container.
CI support via GitHub Actions was added at https://github.com/roboticslab-uc3m/vision/commit/f87fbd1cdb45cd8764d1b1e88e4d16724438f4ad. Currently, some components are excluded from the build due to unmet dependencies, which ultimately boils down to not having OpenCV compiled from sources. Instead, we consume the official libopencv-dev apt package. For reference, OpenCV 3.2.0 is provided in Bionic, and 4.2.0 in Focal.
These components are:
Idea: prepare a Docker image that contains the most adequate OpenCV release with all necessary modules and dependencies, and upload it to https://github.com/orgs/roboticslab-uc3m/packages for use in CI via GH Actions in this repo.
Note that it is actually interesting to have several OpenCV versions to test against, especially the 3.x one. Doable via Docker tags?
Besides, such image would not be that useful beyond CI. Perhaps we could go a step further and prepare another one that contains a working build of roboticslab-uc3m/vision libraries and tools?