[interop] Remove python dependencies from Go dockerfile and add v1.67.0 release (#37792)

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

## Why
Thanks to @ejona86 for finding this. The python dependencies were wrongly added in 0589e533cd. And from then on people were just maintaining what was there. Java had it then too. Java removed the extra dockerfile steps at
977e4b1450

## Testing
Passing master branch test: https://source.cloud.google.com/results/invocations/79fc6c6f-c3d9-4692-870d-4d7002f4778a
Passing ad-hoc interop matrix build: https://source.cloud.google.com/results/invocations/683d7487-2637-4a69-b65e-95dc82740679

Closes #37792

PiperOrigin-RevId: 681054405
pull/37827/head^2
Arjan Singh Bal 2 months ago committed by Copybara-Service
parent 229de2530b
commit c938a7b564
  1. 7
      templates/tools/dockerfile/gcp_api_libraries_venv.include
  2. 1
      templates/tools/dockerfile/interoptest/grpc_interop_go/Dockerfile.template
  3. 1
      templates/tools/dockerfile/interoptest/grpc_interop_go1.x/Dockerfile.template
  4. 31
      templates/tools/dockerfile/run_tests_python_deps_venv.include
  5. 4
      tools/bazelify_tests/dockerimage_current_versions.bzl
  6. 2
      tools/dockerfile/interoptest/grpc_interop_go.current_version
  7. 36
      tools/dockerfile/interoptest/grpc_interop_go/Dockerfile
  8. 2
      tools/dockerfile/interoptest/grpc_interop_go1.x.current_version
  9. 36
      tools/dockerfile/interoptest/grpc_interop_go1.x/Dockerfile
  10. 1
      tools/interop_matrix/client_matrix.py

@ -1,7 +0,0 @@
# Install Google Cloud Platform API libraries
# These are needed for uploading test results to BigQuery (e.g. by tools/run_tests scripts)
# This template is similar to gcp_api_libraries.include but installs the
# dependencies in a python virtual environment. This is required from pip 23.0
# onwards as installation of system-wide packages is blocked by default.
RUN /bin/bash -c "source $PYTHON_ENV/bin/activate && \
python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0"

@ -21,7 +21,6 @@
FROM golang:latest
<%include file="../../go_path.include"/>
<%include file="../../run_tests_python_deps_venv.include"/>
# Define the default command.
CMD ["bash"]

@ -17,7 +17,6 @@
FROM golang:latest
<%include file="../../go_path.include"/>
<%include file="../../run_tests_python_deps_venv.include"/>
# Define the default command.
CMD ["bash"]

@ -1,31 +0,0 @@
#====================
# run_tests.py python dependencies
# Basic python dependencies to be able to run tools/run_tests python scripts
# These dependencies are not sufficient to build gRPC Python, gRPC Python
# deps are defined elsewhere (e.g. python_deps.include)
# This template is similar to run_tests_python_deps.include but installs the
# dependencies in a python virtual environment. This is required from pip 23.0
# onwards as installation of system-wide packages is blocked by default.
RUN apt-get update && apt-get install -y ${'\\'}
python3 ${'\\'}
python3-pip ${'\\'}
python3-setuptools ${'\\'}
python3-yaml ${'\\'}
python3-venv ${'\\'}
&& apt-get clean
# Create a python virtual env for installing required dependencies.
ENV PYTHON_ENV="/opt/venv/grpc-interop"
RUN python3 -m venv "$PYTHON_ENV"
RUN echo "source $PYTHON_ENV/bin/activate" >> ~/.bashrc
# Use bash explicitly as /bin/sh doesn't support the "source" command.
# use pinned version of pip to avoid sudden breakages
# TODO(#36814): currently six is needed for tools/run_tests scripts
# but since our python2 usage is deprecated, we should get rid of it.
RUN /bin/bash -c "source $PYTHON_ENV/bin/activate && \
python3 -m pip install --upgrade pip==19.3.1 && \
python3 -m pip install six==1.16.0"
<%include file="./gcp_api_libraries_venv.include"/>

@ -72,12 +72,12 @@ DOCKERIMAGE_CURRENT_VERSIONS = {
"tools/dockerfile/interoptest/grpc_interop_aspnetcore.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_aspnetcore@sha256:8e2e732e78724a8382c340dca72e7653c5f82c251a3110fa2874cc00ba538878",
"tools/dockerfile/interoptest/grpc_interop_cxx.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_cxx@sha256:e5a474d33773d52ec6a8abbe2d61ee0c2a9c2b5f48793a5ea3b82c4445becf3f",
"tools/dockerfile/interoptest/grpc_interop_dart.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_dart@sha256:4915a280788126dad029858eb384dbbef2dc18cadccb434df6450dfd7a4929f2",
"tools/dockerfile/interoptest/grpc_interop_go.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go@sha256:c925667feb3e065abf586a9e8b028f64b4673cb94bfb4b5e389c652ce906f5dc",
"tools/dockerfile/interoptest/grpc_interop_go.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go@sha256:7affc40dd8c229a12aff76c44b173ce786fced97e563777640b5d696f1d8cd89",
"tools/dockerfile/interoptest/grpc_interop_go1.11.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go1.11@sha256:f2fe3a0a581c687ee4217bf58fd42b18bb1f63d3d006f1b67379ff553b0e23c6",
"tools/dockerfile/interoptest/grpc_interop_go1.16.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go1.16@sha256:3767f47c9d06584c6c07b7ab536e13f3e87550330e6c2652ad288d3a72b0de23",
"tools/dockerfile/interoptest/grpc_interop_go1.19.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go1.19@sha256:889e7ff34399a5e16af87940d1eaa239e56da307f7faca3f8f1d28379c2e3df3",
"tools/dockerfile/interoptest/grpc_interop_go1.8.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go1.8@sha256:7830a301b37539252c592b9cd7fa30a6142d0afc717a05fc8d2b82c74fb45efe",
"tools/dockerfile/interoptest/grpc_interop_go1.x.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go1.x@sha256:9d02b61552a93770ebb022f588daf9acd1088d29197fe120e0b082ede73f4584",
"tools/dockerfile/interoptest/grpc_interop_go1.x.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go1.x@sha256:7affc40dd8c229a12aff76c44b173ce786fced97e563777640b5d696f1d8cd89",
"tools/dockerfile/interoptest/grpc_interop_http2.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_http2@sha256:e3f247d8038374848fadf7215b841e3575c0b2a4217feb503a79b8004b164c5a",
"tools/dockerfile/interoptest/grpc_interop_java.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_java@sha256:6c0319bbbf77d6c198f61adf92d205efd33cbd2cccaf914a1af8f2dcb61b16a1",
"tools/dockerfile/interoptest/grpc_interop_node.current_version": "docker://us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_node@sha256:549a7683cc024fb7ffee807eaa8acb6c2d5a5dd0184a2590f91852804eea39a4",

@ -1 +1 @@
us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go:969ce4614d1152a43f9083e7d08f1932c63a1616@sha256:c925667feb3e065abf586a9e8b028f64b4673cb94bfb4b5e389c652ce906f5dc
us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go:e779403fffab573454461a7357acf9851c14b640@sha256:7affc40dd8c229a12aff76c44b173ce786fced97e563777640b5d696f1d8cd89

@ -21,41 +21,5 @@ FROM golang:latest
# Using login shell removes Go from path, so we add it.
RUN ln -s /usr/local/go/bin/go /usr/local/bin
#====================
# run_tests.py python dependencies
# Basic python dependencies to be able to run tools/run_tests python scripts
# These dependencies are not sufficient to build gRPC Python, gRPC Python
# deps are defined elsewhere (e.g. python_deps.include)
# This template is similar to run_tests_python_deps.include but installs the
# dependencies in a python virtual environment. This is required from pip 23.0
# onwards as installation of system-wide packages is blocked by default.
RUN apt-get update && apt-get install -y \
python3 \
python3-pip \
python3-setuptools \
python3-yaml \
python3-venv \
&& apt-get clean
# Create a python virtual env for installing required dependencies.
ENV PYTHON_ENV="/opt/venv/grpc-interop"
RUN python3 -m venv "$PYTHON_ENV"
RUN echo "source $PYTHON_ENV/bin/activate" >> ~/.bashrc
# Use bash explicitly as /bin/sh doesn't support the "source" command.
# use pinned version of pip to avoid sudden breakages
# TODO(#36814): currently six is needed for tools/run_tests scripts
# but since our python2 usage is deprecated, we should get rid of it.
RUN /bin/bash -c "source $PYTHON_ENV/bin/activate && python3 -m pip install --upgrade pip==19.3.1 && python3 -m pip install six==1.16.0"
# Install Google Cloud Platform API libraries
# These are needed for uploading test results to BigQuery (e.g. by tools/run_tests scripts)
# This template is similar to gcp_api_libraries.include but installs the
# dependencies in a python virtual environment. This is required from pip 23.0
# onwards as installation of system-wide packages is blocked by default.
RUN /bin/bash -c "source $PYTHON_ENV/bin/activate && python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0"
# Define the default command.
CMD ["bash"]

@ -1 +1 @@
us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go1.x:9a524415365a73162b7f463bf0409ca04f64a73c@sha256:9d02b61552a93770ebb022f588daf9acd1088d29197fe120e0b082ede73f4584
us-docker.pkg.dev/grpc-testing/testing-images-public/grpc_interop_go1.x:a50334d44bb6c5d23b08622328d97266b4bfacd8@sha256:7affc40dd8c229a12aff76c44b173ce786fced97e563777640b5d696f1d8cd89

@ -17,41 +17,5 @@ FROM golang:latest
# Using login shell removes Go from path, so we add it.
RUN ln -s /usr/local/go/bin/go /usr/local/bin
#====================
# run_tests.py python dependencies
# Basic python dependencies to be able to run tools/run_tests python scripts
# These dependencies are not sufficient to build gRPC Python, gRPC Python
# deps are defined elsewhere (e.g. python_deps.include)
# This template is similar to run_tests_python_deps.include but installs the
# dependencies in a python virtual environment. This is required from pip 23.0
# onwards as installation of system-wide packages is blocked by default.
RUN apt-get update && apt-get install -y \
python3 \
python3-pip \
python3-setuptools \
python3-yaml \
python3-venv \
&& apt-get clean
# Create a python virtual env for installing required dependencies.
ENV PYTHON_ENV="/opt/venv/grpc-interop"
RUN python3 -m venv "$PYTHON_ENV"
RUN echo "source $PYTHON_ENV/bin/activate" >> ~/.bashrc
# Use bash explicitly as /bin/sh doesn't support the "source" command.
# use pinned version of pip to avoid sudden breakages
# TODO(#36814): currently six is needed for tools/run_tests scripts
# but since our python2 usage is deprecated, we should get rid of it.
RUN /bin/bash -c "source $PYTHON_ENV/bin/activate && python3 -m pip install --upgrade pip==19.3.1 && python3 -m pip install six==1.16.0"
# Install Google Cloud Platform API libraries
# These are needed for uploading test results to BigQuery (e.g. by tools/run_tests scripts)
# This template is similar to gcp_api_libraries.include but installs the
# dependencies in a python virtual environment. This is required from pip 23.0
# onwards as installation of system-wide packages is blocked by default.
RUN /bin/bash -c "source $PYTHON_ENV/bin/activate && python3 -m pip install --upgrade google-auth==1.23.0 google-api-python-client==1.12.8 oauth2client==4.1.0"
# Define the default command.
CMD ["bash"]

@ -306,6 +306,7 @@ LANG_RELEASE_MATRIX = {
("v1.64.1", ReleaseInfo()),
("v1.65.0", ReleaseInfo()),
("v1.66.2", ReleaseInfo()),
("v1.67.0", ReleaseInfo()),
]
),
"java": OrderedDict(

Loading…
Cancel
Save