diff --git a/src/webui/Dockerfile b/src/webui/Dockerfile index 68deddfd1123b9477a5b5637015f90dcc639539f..7760416be32b893ed5f2408b70e874fb89721e17 100644 --- a/src/webui/Dockerfile +++ b/src/webui/Dockerfile @@ -54,12 +54,25 @@ COPY --chown=webui:webui common_requirements.in common_requirements.in RUN pip-compile --quiet --output-file=common_requirements.txt common_requirements.in RUN python3 -m pip install -r common_requirements.txt +# Add common files into working directory +COPY --chown=webui:webui src/common/. common/ +RUN rm -rf common/proto + +# Create proto sub-folder, copy .proto files, and generate Python code +RUN mkdir -p common/proto +WORKDIR /home/webui/teraflow/common/proto +RUN touch __init__.py +COPY --chown=webui:webui proto/*.proto ./ +RUN python3 -m grpc_tools.protoc -I=. --python_out=. --grpc_python_out=. *.proto +RUN rm *.proto +RUN find . -type f -exec sed -i -E 's/(import\ .*)_pb2/from . \1_pb2/g' {} \; +WORKDIR /home/webui/teraflow + COPY --chown=webui:webui src/webui/requirements.in requirements.in RUN pip-compile --quiet --output-file=requirements.txt requirements.in RUN pip install -r requirements.txt # Add files into working directory -COPY --chown=webui:webui src/common/. common/ COPY --chown=webui:webui src/context/__init__.py context/__init__.py COPY --chown=webui:webui src/context/client/. context/client/ COPY --chown=webui:webui src/device/__init__.py device/__init__.py