diff --git a/Makefile b/Makefile index fe523159..9f5ef2e1 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ TEST_INFRA_VERSION ?= latest # Version of gRPC core used for the gRPC driver -DRIVER_VERSION ?= v1.68.0 +DRIVER_VERSION ?= v1.82.1 # Prefix for all images used as clone and ready containers, enabling use with # registries other than Docker Hub @@ -100,7 +100,7 @@ delete_prebuilt_workers: fmt vet ## Build the delete_prebuilt_workers tool binar ##@ Build container images -all-images: clone-image controller-image csharp-build-image cxx-image dotnet-build-image dotnet-image driver-image java-image node-build-image node-image php7-build-image php7-image python-image ready-image ruby-build-image ruby-image rust-build-image ## Build all container images. +all-images: clone-image controller-image csharp-build-image cxx-image dotnet-build-image dotnet-image driver-image java-image node-build-image node-image php8-build-image php8-image python-image ready-image ruby-build-image ruby-image rust-build-image ## Build all container images. clone-image: ## Build the clone init container image. docker build -t $(INIT_IMAGE_PREFIX)clone:$(TEST_INFRA_VERSION) containers/init/clone @@ -132,11 +132,11 @@ node-build-image: ## Build the Node.js build image node-image: ## Build the Node.js test runtime container image. docker build -t $(RUN_IMAGE_PREFIX)node:$(TEST_INFRA_VERSION) containers/runtime/node -php7-build-image: ## Build the PHP7 build-time container image. - docker build -t $(BUILD_IMAGE_PREFIX)php7:$(TEST_INFRA_VERSION) containers/init/build/php7 +php8-build-image: ## Build the PHP8 build-time container image. + docker build -t $(BUILD_IMAGE_PREFIX)php8:$(TEST_INFRA_VERSION) containers/init/build/php8 -php7-image: ## Build the PHP7 test runtime container image. - docker build -t $(RUN_IMAGE_PREFIX)php7:$(TEST_INFRA_VERSION) containers/runtime/php7 +php8-image: ## Build the PHP8 test runtime container image. + docker build -t $(RUN_IMAGE_PREFIX)php8:$(TEST_INFRA_VERSION) containers/runtime/php8 python-image: ## Build the Python test runtime container image. docker build -t $(RUN_IMAGE_PREFIX)python:$(TEST_INFRA_VERSION) containers/runtime/python @@ -155,7 +155,7 @@ rust-build-image: ## Build the Rust build-time container image. ##@ Publish container images -push-all-images: push-clone-image push-controller-image push-csharp-build-image push-cxx-image push-dotnet-build-image push-dotnet-image push-driver-image push-java-image push-node-build-image push-node-image push-php7-build-image push-php7-image push-python-image push-ready-image push-ruby-build-image push-ruby-image push-rust-build-image ## Push all container images to a registry. +push-all-images: push-clone-image push-controller-image push-csharp-build-image push-cxx-image push-dotnet-build-image push-dotnet-image push-driver-image push-java-image push-node-build-image push-node-image push-php8-build-image push-php8-image push-python-image push-ready-image push-ruby-build-image push-ruby-image push-rust-build-image ## Push all container images to a registry. push-clone-image: ## Push the clone init container image to a registry. docker push $(INIT_IMAGE_PREFIX)clone:$(TEST_INFRA_VERSION) @@ -187,11 +187,11 @@ push-node-build-image: ## Push the Node.js build image to a docker registry push-node-image: ## Push the Node.js test runtime container image to a registry. docker push $(RUN_IMAGE_PREFIX)node:$(TEST_INFRA_VERSION) -push-php7-build-image: ## Push the PHP7 build-time container image to a registry. - docker push $(BUILD_IMAGE_PREFIX)php7:$(TEST_INFRA_VERSION) +push-php8-build-image: ## Push the PHP8 build-time container image to a registry. + docker push $(BUILD_IMAGE_PREFIX)php8:$(TEST_INFRA_VERSION) -push-php7-image: ## Push the PHP7 test runtime container image to a registry. - docker push $(RUN_IMAGE_PREFIX)php7:$(TEST_INFRA_VERSION) +push-php8-image: ## Push the PHP8 test runtime container image to a registry. + docker push $(RUN_IMAGE_PREFIX)php8:$(TEST_INFRA_VERSION) push-python-image: ## Push the Python test runtime container image to a registry. docker push $(RUN_IMAGE_PREFIX)python:$(TEST_INFRA_VERSION) diff --git a/config/defaults_template.yaml b/config/defaults_template.yaml index 5b7b815c..32eff0aa 100644 --- a/config/defaults_template.yaml +++ b/config/defaults_template.yaml @@ -38,13 +38,13 @@ languages: buildImage: "{{ .BuildImagePrefix }}node:{{ .Version }}" runImage: "{{ .RunImagePrefix }}node:{{ .Version }}" -- language: php7 - buildImage: "{{ .BuildImagePrefix }}php7:{{ .Version }}" - runImage: "{{ .RunImagePrefix }}php7:{{ .Version }}" +- language: php8 + buildImage: "{{ .BuildImagePrefix }}php8:{{ .Version }}" + runImage: "{{ .RunImagePrefix }}php8:{{ .Version }}" -- language: php7_protobuf_c - buildImage: "{{ .BuildImagePrefix }}php7:{{ .Version }}" - runImage: "{{ .RunImagePrefix }}php7:{{ .Version }}" +- language: php8_protobuf_c + buildImage: "{{ .BuildImagePrefix }}php8:{{ .Version }}" + runImage: "{{ .RunImagePrefix }}php8:{{ .Version }}" - language: python buildImage: us-docker.pkg.dev/grpc-testing/testing-images-public/bazel:ac0cf07a320bb1f337986fd312a1785614cc1e4e@sha256:4b64295380d6c951f3761273344e256f44daab35dd7182ff431a1802695368da diff --git a/config/samples/php7_example_loadtest.yaml b/config/samples/php8_example_loadtest.yaml similarity index 92% rename from config/samples/php7_example_loadtest.yaml rename to config/samples/php8_example_loadtest.yaml index 293802f9..37d79c68 100644 --- a/config/samples/php7_example_loadtest.yaml +++ b/config/samples/php8_example_loadtest.yaml @@ -5,12 +5,12 @@ apiVersion: e2etest.grpc.io/v1 kind: LoadTest metadata: annotations: - scenario: php7_protobuf_php_extension_to_cpp_protobuf_sync_unary_ping_pong + scenario: php8_protobuf_php_extension_to_cpp_protobuf_sync_unary_ping_pong uniquifier: basic labels: - language: php7 + language: php8 prefix: examples - name: examples-php7-protobuf-php-extension-to-cpp-protobuf-sync-unary-ping-pong-basic + name: examples-php8-protobuf-php-extension-to-cpp-protobuf-sync-unary-ping-pong-basic spec: clients: - build: @@ -20,7 +20,7 @@ spec: clone: gitRef: master repo: https://github.com/grpc/grpc.git - language: php7 + language: php8 name: '0' run: - args: @@ -38,7 +38,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_php_extension_to_cpp_protobuf_sync_unary_ping_pong", + "name": "php8_protobuf_php_extension_to_cpp_protobuf_sync_unary_ping_pong", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/php7_protobuf_c_example_loadtest.yaml b/config/samples/php8_protobuf_c_example_loadtest.yaml similarity index 92% rename from config/samples/php7_protobuf_c_example_loadtest.yaml rename to config/samples/php8_protobuf_c_example_loadtest.yaml index 60986306..a847da1d 100644 --- a/config/samples/php7_protobuf_c_example_loadtest.yaml +++ b/config/samples/php8_protobuf_c_example_loadtest.yaml @@ -5,12 +5,12 @@ apiVersion: e2etest.grpc.io/v1 kind: LoadTest metadata: annotations: - scenario: php7_protobuf_c_extension_to_cpp_protobuf_sync_unary_ping_pong + scenario: php8_protobuf_c_extension_to_cpp_protobuf_sync_unary_ping_pong uniquifier: basic labels: - language: php7_protobuf_c + language: php8_protobuf_c prefix: examples - name: examples-php7-protobuf-c-extension-to-cpp-protobuf-sync-unary-ping-pong-basic + name: examples-php8-protobuf-c-extension-to-cpp-protobuf-sync-unary-ping-pong-basic spec: clients: - build: @@ -20,7 +20,7 @@ spec: clone: gitRef: master repo: https://github.com/grpc/grpc.git - language: php7_protobuf_c + language: php8_protobuf_c name: '0' run: - args: @@ -38,7 +38,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_c_extension_to_cpp_protobuf_sync_unary_ping_pong", + "name": "php8_protobuf_c_extension_to_cpp_protobuf_sync_unary_ping_pong", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/php7_example_loadtest_with_prebuilt_workers.yaml b/config/samples/templates/php8_example_loadtest_with_prebuilt_workers.yaml similarity index 90% rename from config/samples/templates/php7_example_loadtest_with_prebuilt_workers.yaml rename to config/samples/templates/php8_example_loadtest_with_prebuilt_workers.yaml index fd71570d..ea47ebd1 100644 --- a/config/samples/templates/php7_example_loadtest_with_prebuilt_workers.yaml +++ b/config/samples/templates/php8_example_loadtest_with_prebuilt_workers.yaml @@ -6,15 +6,15 @@ kind: LoadTest metadata: annotations: pool: ${workers_pool} - scenario: php7_protobuf_php_extension_to_cpp_protobuf_sync_unary_ping_pong + scenario: php8_protobuf_php_extension_to_cpp_protobuf_sync_unary_ping_pong uniquifier: prebuilt labels: - language: php7 + language: php8 prefix: examples - name: examples-php7-protobuf-php-extension-to-cpp-protobuf-sync-unary-ping-pong-prebuilt + name: examples-php8-protobuf-php-extension-to-cpp-protobuf-sync-unary-ping-pong-prebuilt spec: clients: - - language: php7 + - language: php8 name: '0' pool: ${workers_pool} run: @@ -25,7 +25,7 @@ spec: /run_scripts/run_worker.sh command: - bash - image: ${prebuilt_image_prefix}/php7:${prebuilt_image_tag} + image: ${prebuilt_image_prefix}/php8:${prebuilt_image_tag} name: main driver: language: cxx @@ -39,7 +39,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_php_extension_to_cpp_protobuf_sync_unary_ping_pong", + "name": "php8_protobuf_php_extension_to_cpp_protobuf_sync_unary_ping_pong", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/php7_protobuf_c_example_loadtest_with_prebuilt_workers.yaml b/config/samples/templates/php8_protobuf_c_example_loadtest_with_prebuilt_workers.yaml similarity index 89% rename from config/samples/templates/php7_protobuf_c_example_loadtest_with_prebuilt_workers.yaml rename to config/samples/templates/php8_protobuf_c_example_loadtest_with_prebuilt_workers.yaml index 18c4ff8a..5bbf8044 100644 --- a/config/samples/templates/php7_protobuf_c_example_loadtest_with_prebuilt_workers.yaml +++ b/config/samples/templates/php8_protobuf_c_example_loadtest_with_prebuilt_workers.yaml @@ -6,15 +6,15 @@ kind: LoadTest metadata: annotations: pool: ${workers_pool} - scenario: php7_protobuf_c_extension_to_cpp_protobuf_sync_unary_ping_pong + scenario: php8_protobuf_c_extension_to_cpp_protobuf_sync_unary_ping_pong uniquifier: prebuilt labels: - language: php7_protobuf_c + language: php8_protobuf_c prefix: examples - name: examples-php7-protobuf-c-extension-to-cpp-protobuf-sync-unary-ping-pong-prebuilt + name: examples-php8-protobuf-c-extension-to-cpp-protobuf-sync-unary-ping-pong-prebuilt spec: clients: - - language: php7_protobuf_c + - language: php8_protobuf_c name: '0' pool: ${workers_pool} run: @@ -25,7 +25,7 @@ spec: /run_scripts/run_protobuf_c_worker.sh command: - bash - image: ${prebuilt_image_prefix}/php7:${prebuilt_image_tag} + image: ${prebuilt_image_prefix}/php8:${prebuilt_image_tag} name: main driver: language: cxx @@ -39,7 +39,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_c_extension_to_cpp_protobuf_sync_unary_ping_pong", + "name": "php8_protobuf_c_extension_to_cpp_protobuf_sync_unary_ping_pong", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/psm/php7_example_loadtest_proxied.yaml b/config/samples/templates/psm/php8_example_loadtest_proxied.yaml similarity index 93% rename from config/samples/templates/psm/php7_example_loadtest_proxied.yaml rename to config/samples/templates/psm/php8_example_loadtest_proxied.yaml index af54104a..826fa172 100644 --- a/config/samples/templates/psm/php7_example_loadtest_proxied.yaml +++ b/config/samples/templates/psm/php8_example_loadtest_proxied.yaml @@ -6,12 +6,12 @@ kind: LoadTest metadata: annotations: enablePrometheus: 'true' - scenario: php7_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load + scenario: php8_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load uniquifier: proxied labels: - language: php7 + language: php8 prefix: psm-examples - name: psm-examples-php7-protobuf-php-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-proxied + name: psm-examples-php8-protobuf-php-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-proxied spec: clients: - build: @@ -21,7 +21,7 @@ spec: clone: gitRef: master repo: https://github.com/grpc/grpc.git - language: php7 + language: php8 name: '0' run: - args: @@ -60,7 +60,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", + "name": "php8_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/psm/php7_example_loadtest_proxyless.yaml b/config/samples/templates/psm/php8_example_loadtest_proxyless.yaml similarity index 93% rename from config/samples/templates/psm/php7_example_loadtest_proxyless.yaml rename to config/samples/templates/psm/php8_example_loadtest_proxyless.yaml index dd7699df..96162b57 100644 --- a/config/samples/templates/psm/php7_example_loadtest_proxyless.yaml +++ b/config/samples/templates/psm/php8_example_loadtest_proxyless.yaml @@ -6,12 +6,12 @@ kind: LoadTest metadata: annotations: enablePrometheus: 'true' - scenario: php7_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load + scenario: php8_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load uniquifier: proxyless labels: - language: php7 + language: php8 prefix: psm-examples - name: psm-examples-php7-protobuf-php-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-proxyless + name: psm-examples-php8-protobuf-php-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-proxyless spec: clients: - build: @@ -21,7 +21,7 @@ spec: clone: gitRef: master repo: https://github.com/grpc/grpc.git - language: php7 + language: php8 name: '0' run: - args: @@ -56,7 +56,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", + "name": "php8_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/psm/php7_protobuf_c_example_loadtest_proxied.yaml b/config/samples/templates/psm/php8_protobuf_c_example_loadtest_proxied.yaml similarity index 93% rename from config/samples/templates/psm/php7_protobuf_c_example_loadtest_proxied.yaml rename to config/samples/templates/psm/php8_protobuf_c_example_loadtest_proxied.yaml index 93fd538f..e0fd40d5 100644 --- a/config/samples/templates/psm/php7_protobuf_c_example_loadtest_proxied.yaml +++ b/config/samples/templates/psm/php8_protobuf_c_example_loadtest_proxied.yaml @@ -6,12 +6,12 @@ kind: LoadTest metadata: annotations: enablePrometheus: 'true' - scenario: php7_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load + scenario: php8_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load uniquifier: proxied labels: - language: php7_protobuf_c + language: php8_protobuf_c prefix: psm-examples - name: psm-examples-php7-protobuf-c-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-proxied + name: psm-examples-php8-protobuf-c-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-proxied spec: clients: - build: @@ -21,7 +21,7 @@ spec: clone: gitRef: master repo: https://github.com/grpc/grpc.git - language: php7_protobuf_c + language: php8_protobuf_c name: '0' run: - args: @@ -60,7 +60,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", + "name": "php8_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/psm/php7_protobuf_c_example_loadtest_proxyless.yaml b/config/samples/templates/psm/php8_protobuf_c_example_loadtest_proxyless.yaml similarity index 93% rename from config/samples/templates/psm/php7_protobuf_c_example_loadtest_proxyless.yaml rename to config/samples/templates/psm/php8_protobuf_c_example_loadtest_proxyless.yaml index ae34cf48..2d0dfd6b 100644 --- a/config/samples/templates/psm/php7_protobuf_c_example_loadtest_proxyless.yaml +++ b/config/samples/templates/psm/php8_protobuf_c_example_loadtest_proxyless.yaml @@ -6,12 +6,12 @@ kind: LoadTest metadata: annotations: enablePrometheus: 'true' - scenario: php7_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load + scenario: php8_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load uniquifier: proxyless labels: - language: php7_protobuf_c + language: php8_protobuf_c prefix: psm-examples - name: psm-examples-php7-protobuf-c-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-proxyless + name: psm-examples-php8-protobuf-c-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-proxyless spec: clients: - build: @@ -21,7 +21,7 @@ spec: clone: gitRef: master repo: https://github.com/grpc/grpc.git - language: php7_protobuf_c + language: php8_protobuf_c name: '0' run: - args: @@ -56,7 +56,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", + "name": "php8_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/psm/prebuilt/php7_example_loadtest_proxied_with_prebuilt_workers.yaml b/config/samples/templates/psm/prebuilt/php8_example_loadtest_proxied_with_prebuilt_workers.yaml similarity index 92% rename from config/samples/templates/psm/prebuilt/php7_example_loadtest_proxied_with_prebuilt_workers.yaml rename to config/samples/templates/psm/prebuilt/php8_example_loadtest_proxied_with_prebuilt_workers.yaml index cf25f845..e2f73234 100644 --- a/config/samples/templates/psm/prebuilt/php7_example_loadtest_proxied_with_prebuilt_workers.yaml +++ b/config/samples/templates/psm/prebuilt/php8_example_loadtest_proxied_with_prebuilt_workers.yaml @@ -7,15 +7,15 @@ metadata: annotations: enablePrometheus: 'true' pool: ${workers_pool} - scenario: php7_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load + scenario: php8_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load uniquifier: prebuilt-proxied labels: - language: php7 + language: php8 prefix: psm-examples - name: psm-examples-php7-protobuf-php-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-prebuilt-proxied + name: psm-examples-php8-protobuf-php-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-prebuilt-proxied spec: clients: - - language: php7 + - language: php8 name: '0' pool: ${workers_pool} run: @@ -26,7 +26,7 @@ spec: /run_scripts/run_worker.sh command: - bash - image: ${prebuilt_image_prefix}/php7:${prebuilt_image_tag} + image: ${prebuilt_image_prefix}/php8:${prebuilt_image_tag} name: main - args: - -default-config-path @@ -61,7 +61,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", + "name": "php8_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/psm/prebuilt/php7_example_loadtest_proxyless_with_prebuilt_workers.yaml b/config/samples/templates/psm/prebuilt/php8_example_loadtest_proxyless_with_prebuilt_workers.yaml similarity index 91% rename from config/samples/templates/psm/prebuilt/php7_example_loadtest_proxyless_with_prebuilt_workers.yaml rename to config/samples/templates/psm/prebuilt/php8_example_loadtest_proxyless_with_prebuilt_workers.yaml index d8be5d71..4ccc43cb 100644 --- a/config/samples/templates/psm/prebuilt/php7_example_loadtest_proxyless_with_prebuilt_workers.yaml +++ b/config/samples/templates/psm/prebuilt/php8_example_loadtest_proxyless_with_prebuilt_workers.yaml @@ -7,15 +7,15 @@ metadata: annotations: enablePrometheus: 'true' pool: ${workers_pool} - scenario: php7_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load + scenario: php8_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load uniquifier: prebuilt-proxyless labels: - language: php7 + language: php8 prefix: psm-examples - name: psm-examples-php7-protobuf-php-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-prebuilt-proxyless + name: psm-examples-php8-protobuf-php-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-prebuilt-proxyless spec: clients: - - language: php7 + - language: php8 name: '0' pool: ${workers_pool} run: @@ -29,7 +29,7 @@ spec: env: - name: GRPC_XDS_BOOTSTRAP value: /bootstrap/bootstrap.json - image: ${prebuilt_image_prefix}/php7:${prebuilt_image_tag} + image: ${prebuilt_image_prefix}/php8:${prebuilt_image_tag} name: main - args: - -default-config-path @@ -57,7 +57,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", + "name": "php8_protobuf_php_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/psm/prebuilt/php7_protobuf_c_example_loadtest_proxied_with_prebuilt_workers.yaml b/config/samples/templates/psm/prebuilt/php8_protobuf_c_example_loadtest_proxied_with_prebuilt_workers.yaml similarity index 91% rename from config/samples/templates/psm/prebuilt/php7_protobuf_c_example_loadtest_proxied_with_prebuilt_workers.yaml rename to config/samples/templates/psm/prebuilt/php8_protobuf_c_example_loadtest_proxied_with_prebuilt_workers.yaml index 48e53379..ba63e35e 100644 --- a/config/samples/templates/psm/prebuilt/php7_protobuf_c_example_loadtest_proxied_with_prebuilt_workers.yaml +++ b/config/samples/templates/psm/prebuilt/php8_protobuf_c_example_loadtest_proxied_with_prebuilt_workers.yaml @@ -7,15 +7,15 @@ metadata: annotations: enablePrometheus: 'true' pool: ${workers_pool} - scenario: php7_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load + scenario: php8_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load uniquifier: prebuilt-proxied labels: - language: php7_protobuf_c + language: php8_protobuf_c prefix: psm-examples - name: psm-examples-php7-protobuf-c-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-prebuilt-proxied + name: psm-examples-php8-protobuf-c-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-prebuilt-proxied spec: clients: - - language: php7_protobuf_c + - language: php8_protobuf_c name: '0' pool: ${workers_pool} run: @@ -26,7 +26,7 @@ spec: /run_scripts/run_protobuf_c_worker.sh command: - bash - image: ${prebuilt_image_prefix}/php7:${prebuilt_image_tag} + image: ${prebuilt_image_prefix}/php8:${prebuilt_image_tag} name: main - args: - -default-config-path @@ -61,7 +61,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", + "name": "php8_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/config/samples/templates/psm/prebuilt/php7_protobuf_c_example_loadtest_proxyless_with_prebuilt_workers.yaml b/config/samples/templates/psm/prebuilt/php8_protobuf_c_example_loadtest_proxyless_with_prebuilt_workers.yaml similarity index 91% rename from config/samples/templates/psm/prebuilt/php7_protobuf_c_example_loadtest_proxyless_with_prebuilt_workers.yaml rename to config/samples/templates/psm/prebuilt/php8_protobuf_c_example_loadtest_proxyless_with_prebuilt_workers.yaml index ed5c4414..f44e09d0 100644 --- a/config/samples/templates/psm/prebuilt/php7_protobuf_c_example_loadtest_proxyless_with_prebuilt_workers.yaml +++ b/config/samples/templates/psm/prebuilt/php8_protobuf_c_example_loadtest_proxyless_with_prebuilt_workers.yaml @@ -7,15 +7,15 @@ metadata: annotations: enablePrometheus: 'true' pool: ${workers_pool} - scenario: php7_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load + scenario: php8_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load uniquifier: prebuilt-proxyless labels: - language: php7_protobuf_c + language: php8_protobuf_c prefix: psm-examples - name: psm-examples-php7-protobuf-c-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-prebuilt-proxyless + name: psm-examples-php8-protobuf-c-extension-to-cpp-protobuf-async-unary-5000rpcs-1kb-psm-8channels-16threads-5000load-prebuilt-proxyless spec: clients: - - language: php7_protobuf_c + - language: php8_protobuf_c name: '0' pool: ${workers_pool} run: @@ -29,7 +29,7 @@ spec: env: - name: GRPC_XDS_BOOTSTRAP value: /bootstrap/bootstrap.json - image: ${prebuilt_image_prefix}/php7:${prebuilt_image_tag} + image: ${prebuilt_image_prefix}/php8:${prebuilt_image_tag} name: main - args: - -default-config-path @@ -57,7 +57,7 @@ spec: scenariosJSON: | { "scenarios": { - "name": "php7_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", + "name": "php8_protobuf_c_extension_to_cpp_protobuf_async_unary_5000rpcs_1KB_psm_8channels_16threads_5000load", "num_servers": 1, "num_clients": 1, "client_config": { diff --git a/containers/init/build/php7/Dockerfile b/containers/init/build/php8/Dockerfile similarity index 86% rename from containers/init/build/php7/Dockerfile rename to containers/init/build/php8/Dockerfile index 201740a2..d706ed74 100644 --- a/containers/init/build/php7/Dockerfile +++ b/containers/init/build/php8/Dockerfile @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -FROM php:7.4-buster +FROM php:8.1-bullseye RUN mkdir -p /src/workspace WORKDIR /src/workspace @@ -23,16 +23,17 @@ RUN apt-get update && apt-get install -y \ lcov \ make \ gnupg2 \ + unzip \ procps && \ apt-get clean # Install rvm RUN gpg2 --recv-keys 7D2BAF1CF37B13E2069D6956105BD0E739499BDB -RUN \curl -sSL https://get.rvm.io | bash -s stable +RUN \curl -sSL https://get.rvm.io | bash -s master -# Install Ruby 3 -RUN /bin/bash -l -c "rvm install ruby-3" -RUN /bin/bash -l -c "rvm use --default ruby-3" +# Install Ruby 3.2 +RUN /bin/bash -l -c "rvm install 3.2" +RUN /bin/bash -l -c "rvm use --default 3.2" RUN /bin/bash -l -c "echo 'gem: --no-document' > ~/.gemrc" RUN /bin/bash -l -c "gem install bundler --no-document -v 2.4" diff --git a/containers/init/build/php7/build_qps_worker.sh b/containers/init/build/php8/build_qps_worker.sh similarity index 58% rename from containers/init/build/php7/build_qps_worker.sh rename to containers/init/build/php8/build_qps_worker.sh index 206ec73f..86ba4847 100644 --- a/containers/init/build/php7/build_qps_worker.sh +++ b/containers/init/build/php8/build_qps_worker.sh @@ -15,24 +15,31 @@ set -ex export GRPC_LIB_SUBDIR="libs/opt" -export CFLAGS="-Wno-parentheses-equality" export root="/src/workspace" -make -j8 static_c shared_c EMBED_OPENSSL=true EMBED_ZLIB=true +EXTRA_DEFINES=GRPC_POSIX_FORK_ALLOW_PTHREAD_ATFORK make -j8 static_c shared_c EMBED_OPENSSL=true EMBED_ZLIB=true cd src/php/ext/grpc phpize -./configure --enable-grpc="/src/workspace" --enable-coverage --enable-tests +./configure --enable-grpc="${root}" --enable-coverage --enable-tests +make -j8 -cd /src/workspace/src/php/tests/qps +cd "${root}"/src/php/tests/qps composer install -cd ../../../../third_party/protobuf/php/ext/google/protobuf +cd "${root}"/third_party/protobuf/php/ext/google/protobuf + +# The PHP extension's build configuration (config.m4) expects 'utf8_range' +# to exist locally within the extension tree rather than the repository root. +# Copy the dependency from the Protobuf third_party submodule to satisfy this. +mkdir -p third_party/utf8_range +cp -r "${root}"/third_party/protobuf/third_party/utf8_range/* third_party/utf8_range/ phpize ./configure +make -j8 # Prepare for ruby proxy workers source /usr/local/rvm/scripts/rvm diff --git a/containers/pre_built_workers/php7/Dockerfile b/containers/pre_built_workers/php8/Dockerfile similarity index 83% rename from containers/pre_built_workers/php7/Dockerfile rename to containers/pre_built_workers/php8/Dockerfile index 5e054d8f..f50e6cfd 100644 --- a/containers/pre_built_workers/php7/Dockerfile +++ b/containers/pre_built_workers/php8/Dockerfile @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -FROM php:7.4-buster +FROM php:8.1-bullseye # TODO: when running on kokoro, the "Install" build steps will not be cached # since we'll always be on a fresh VM. Re-running this command each @@ -24,16 +24,17 @@ RUN apt-get update && apt-get install -y \ lcov \ make \ gnupg2 \ + unzip \ procps && \ apt-get clean # Install rvm RUN gpg2 --recv-keys 7D2BAF1CF37B13E2069D6956105BD0E739499BDB -RUN \curl -sSL https://get.rvm.io | bash -s stable +RUN \curl -sSL https://get.rvm.io | bash -s master -# Install Ruby 3 -RUN /bin/bash -l -c "rvm install ruby-3" -RUN /bin/bash -l -c "rvm use --default ruby-3" +# Install Ruby 3.2 +RUN /bin/bash -l -c "rvm install 3.2" +RUN /bin/bash -l -c "rvm use --default 3.2" RUN /bin/bash -l -c "echo 'gem: --no-document' > ~/.gemrc" RUN /bin/bash -l -c "gem install bundler --no-document -v 2.4" @@ -57,6 +58,8 @@ ARG BREAK_CACHE RUN git clone https://github.com/$REPOSITORY.git . RUN git checkout $GITREF RUN git submodule update --init +# protobuf has a utf_range submodule. +RUN git submodule update --init --recursive third_party/protobuf # Save commit sha for debug use RUN echo 'COMMIT SHA' > GRPC_GIT_COMMIT.txt @@ -66,7 +69,7 @@ RUN mkdir /build_scripts ADD build_qps_worker.sh /build_scripts RUN /build_scripts/build_qps_worker.sh -FROM php:7.4-buster +FROM php:8.1-bullseye # TODO: when running on kokoro, the "Install" build steps will not be cached # since we'll always be on a fresh VM. Re-running this command each @@ -77,16 +80,17 @@ RUN apt-get update && apt-get install -y \ lcov \ make \ gnupg2 \ + unzip \ procps && \ apt-get clean # Install rvm RUN gpg2 --recv-keys 7D2BAF1CF37B13E2069D6956105BD0E739499BDB -RUN \curl -sSL https://get.rvm.io | bash -s stable +RUN \curl -sSL https://get.rvm.io | bash -s master # Install Ruby 3 -RUN /bin/bash -l -c "rvm install ruby-3" -RUN /bin/bash -l -c "rvm use --default ruby-3" +RUN /bin/bash -l -c "rvm install 3.2" +RUN /bin/bash -l -c "rvm use --default 3.2" RUN /bin/bash -l -c "echo 'gem: --no-document' > ~/.gemrc" RUN /bin/bash -l -c "gem install bundler --no-document -v 2.4" @@ -97,6 +101,10 @@ COPY --from=0 /pre/etc /execute/etc COPY --from=0 /pre/saved/bundle/ /execute/saved/bundle/ COPY --from=0 /pre/GRPC_GIT_COMMIT.txt /execute/GRPC_GIT_COMMIT.txt +# Since grpc.so dynamically links to libgrpc.so, it must be discoverable. +COPY --from=0 /pre/libs/opt/libgrpc.so* /execute/libs/opt/ +ENV LD_LIBRARY_PATH=/execute/libs/opt + RUN mkdir /run_scripts ADD run_worker.sh /run_scripts ADD run_protobuf_c_worker.sh /run_scripts diff --git a/containers/pre_built_workers/php7/build_qps_worker.sh b/containers/pre_built_workers/php8/build_qps_worker.sh similarity index 59% rename from containers/pre_built_workers/php7/build_qps_worker.sh rename to containers/pre_built_workers/php8/build_qps_worker.sh index 2510fa76..d8b6f60c 100755 --- a/containers/pre_built_workers/php7/build_qps_worker.sh +++ b/containers/pre_built_workers/php8/build_qps_worker.sh @@ -15,24 +15,31 @@ set -ex export GRPC_LIB_SUBDIR="libs/opt" -export CFLAGS="-Wno-parentheses-equality" export root="/pre" -make -j8 static_c shared_c EMBED_OPENSSL=true EMBED_ZLIB=true +EXTRA_DEFINES=GRPC_POSIX_FORK_ALLOW_PTHREAD_ATFORK make -j8 static_c shared_c EMBED_OPENSSL=true EMBED_ZLIB=true cd src/php/ext/grpc phpize -./configure --enable-grpc="/pre" --enable-coverage --enable-tests +./configure --enable-grpc="${root}" --enable-coverage --enable-tests +make -j8 cd /pre/src/php/tests/qps composer install -cd ../../../../third_party/protobuf/php/ext/google/protobuf +cd "${root}"/third_party/protobuf/php/ext/google/protobuf + +# The PHP extension's build configuration (config.m4) expects 'utf8_range' +# to exist locally within the extension tree rather than the repository root. +# Copy the dependency from the Protobuf third_party submodule to satisfy this. +mkdir -p third_party/utf8_range +cp -r "${root}"/third_party/protobuf/third_party/utf8_range/* third_party/utf8_range/ phpize ./configure +make -j8 # Prepare for ruby proxy workers source /usr/local/rvm/scripts/rvm diff --git a/containers/pre_built_workers/php7/run_protobuf_c_worker.sh b/containers/pre_built_workers/php8/run_protobuf_c_worker.sh similarity index 100% rename from containers/pre_built_workers/php7/run_protobuf_c_worker.sh rename to containers/pre_built_workers/php8/run_protobuf_c_worker.sh diff --git a/containers/pre_built_workers/php7/run_worker.sh b/containers/pre_built_workers/php8/run_worker.sh similarity index 100% rename from containers/pre_built_workers/php7/run_worker.sh rename to containers/pre_built_workers/php8/run_worker.sh diff --git a/containers/runtime/java/Dockerfile b/containers/runtime/java/Dockerfile index 3e844770..91991807 100644 --- a/containers/runtime/java/Dockerfile +++ b/containers/runtime/java/Dockerfile @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -FROM openjdk:11 +FROM eclipse-temurin:11-jdk-jammy RUN mkdir -p /src/workspace WORKDIR /src/workspace diff --git a/containers/runtime/php7/Dockerfile b/containers/runtime/php8/Dockerfile similarity index 78% rename from containers/runtime/php7/Dockerfile rename to containers/runtime/php8/Dockerfile index 117bed2f..187df098 100644 --- a/containers/runtime/php7/Dockerfile +++ b/containers/runtime/php8/Dockerfile @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -FROM php:7.4-buster +FROM php:8.1-bullseye RUN mkdir -p /src/workspace WORKDIR /src/workspace @@ -23,19 +23,23 @@ RUN apt-get update && apt-get install -y \ lcov \ make \ gnupg2 \ + unzip \ procps && \ apt-get clean # Install rvm RUN gpg2 --recv-keys 7D2BAF1CF37B13E2069D6956105BD0E739499BDB -RUN \curl -sSL https://get.rvm.io | bash -s stable +RUN \curl -sSL https://get.rvm.io | bash -s master -# Install Ruby 3 -RUN /bin/bash -l -c "rvm install ruby-3" -RUN /bin/bash -l -c "rvm use --default ruby-3" +# Install Ruby 3.2 +RUN /bin/bash -l -c "rvm install 3.2" +RUN /bin/bash -l -c "rvm use --default 3.2" RUN /bin/bash -l -c "echo 'gem: --no-document' > ~/.gemrc" RUN /bin/bash -l -c "gem install bundler --no-document -v 2.4" +# Since grpc.so dynamically links to libgrpc.so, it must be discoverable. +ENV LD_LIBRARY_PATH=/src/workspace/libs/opt + RUN mkdir /run_scripts ADD run_worker.sh /run_scripts ADD run_protobuf_c_worker.sh /run_scripts diff --git a/containers/runtime/php7/run_protobuf_c_worker.sh b/containers/runtime/php8/run_protobuf_c_worker.sh similarity index 100% rename from containers/runtime/php7/run_protobuf_c_worker.sh rename to containers/runtime/php8/run_protobuf_c_worker.sh diff --git a/containers/runtime/php7/run_worker.sh b/containers/runtime/php8/run_worker.sh similarity index 100% rename from containers/runtime/php7/run_worker.sh rename to containers/runtime/php8/run_worker.sh diff --git a/tools/README.md b/tools/README.md index 72eda5c6..22cbf1c9 100644 --- a/tools/README.md +++ b/tools/README.md @@ -120,8 +120,8 @@ The tool `prepare_prebuilt_workers` takes the following options: GITREF wish to build workers from can be specified as `language:COMMIT_SHA` or `language:repo:COMMIT_SHA`. May be repeated. Valid input for language names are all in lower case: - `csharp`, `c++`/`cxx`, `go`, `java`, `node`, `node_purejs`, `php7`. - `php7_protobuf_c`, `python`, `python_asyncio` and `ruby`. + `csharp`, `c++`/`cxx`, `go`, `java`, `node`, `node_purejs`, `php8`. + `php8_protobuf_c`, `python`, `python_asyncio` and `ruby`. - `-t`
Tag for prebuilt images. Tag is a required field. Tag complies with [Docker's tag restrictions](https://docs.docker.com/engine/reference/commandline/tag/#extended-description). - `-r`
Root directory of Dockerfiles. diff --git a/tools/cmd/prepare_prebuilt_workers/main.go b/tools/cmd/prepare_prebuilt_workers/main.go index bdb5a044..cc243681 100644 --- a/tools/cmd/prepare_prebuilt_workers/main.go +++ b/tools/cmd/prepare_prebuilt_workers/main.go @@ -105,7 +105,7 @@ func main() { converterToImageLanguage := map[string]string{ "c++": "cxx", "node_purejs": "node", - "php7_protobuf_c": "php7", + "php8_protobuf_c": "php8", "python_asyncio": "python", }