opensearch-project / OpenSearch

🔎 Open source distributed and RESTful search engine.
https://opensearch.org/docs/latest/opensearch/index/
Apache License 2.0
9.77k stars 1.82k forks source link

Docker is required to build #1406

Open dblock opened 3 years ago

dblock commented 3 years ago

Is your feature request related to a problem? Please describe.

Coming from https://github.com/opensearch-project/OpenSearch/issues/1379, docker is required to build. But there seems to be code in place trying to say "if you don't have docker, that's ok, I'll just skip those parts". That doesn't work.

Describe the solution you'd like

Skip distribution:docker* if docker is not available.

Additional context

Docker (checked [/usr/bin/docker, /usr/local/bin/docker, C:\Program Files\Docker\Docker\resources\bin\docker.exe]) is required to run the following tasks:
:distribution:docker:buildArm64DockerImage
:distribution:docker:buildDockerImage
you can address this by attending to the reported issue, or removing the offending tasks from being executed.

To reproduce, return null from DockerSupportServices.java, private Optional<String> getDockerPath() or run on Windows.

Current workaround:

$ ./gradlew build -x ":distribution:docker:buildArm64DockerImage" -x ":distribution:docker:buildDockerImage"
rursprung commented 2 years ago

since i just ran into this issue:

But there seems to be code in place trying to say "if you don't have docker, that's ok, I'll just skip those parts". That doesn't work.

where'd you see that code? i only see the explicit failure implemented here: https://github.com/opensearch-project/OpenSearch/blob/ae14259a2c4b9dcf203dc46ef217563a33ae2901/buildSrc/src/main/java/org/opensearch/gradle/docker/DockerSupportService.java#L153

dblock commented 2 years ago

Been a while since I wrote this TBH. I did a bit of searching and can't remember what I meant anymore :(