prototool
prototool copied to clipboard
File permission issues when using the Docker image
Some file permission in the docker image for prototool don't seem to be correct and when running as non-root (so the produced code isn't root owned) you get error like this:
$ docker run --user=1001:1001 --rm -v $PWD:/work uber/prototool:1.9.0 prototool generate
...
2020-05-06T08:56:10.243Z WARN protoc returned a line we do not understand, please file this as an issue at https://github.com/uber/prototool/issues/new {"protocLine": "google/protobuf/time
stamp.proto: Read access is denied for file: /usr/include/google/protobuf/timestamp.proto"}
...
The cause of this would seem to be the fact that proto files shipped in the container are not world readable.
/work # ls -lh /usr/include/google/protobuf/timestamp.proto
-rw-r----- 1 root root 6.0K Mar 31 14:04 /usr/include/google/protobuf/timestamp.proto
Would it be possible to change these permission on included protofiles from 640 to 644?
We had a PR put up for something related a few months ago: https://github.com/uber/prototool/pull/526
I planned on closing this due to inactivity, but curious if this would solve your issue.
Yup chmod -R o+r /usr/include/google
or similar in the Dockerfile is all it would take to fix this issue.
There's been a bit of inactivity on that PR. Feel free to up your own and I can close that one.