grpc-java/buildscripts/kokoro
Sergii Tkachenko 79bb5e540d
buildscripts: simplify PSM interop Kokoro buildscripts (#11121) (#11158)
Integrates the new features of the the Kokoro PSM Interop install library introduced in grpc/psm-interop#73.

Nearly all common functionality was moved from per-language/per-branch PSM Interop build scripts to [psm_interop_kokoro_lib.sh](https://github.com/grpc/psm-interop/blob/main/.kokoro/psm_interop_kokoro_lib.sh):
1. The list of tests in the each test suite 
2. Per-test-suite flag customization
3. `run_test` methods
4. `build_docker_images_if_needed` methods
5. Generic `build_test_app_docker_images` methods (simple docker build + docker push + docker tag). grpc-java is one exception, as it doesn't run docker directly, but a cloudbuild flow.

Now all PSM Interop jobs share the same buildscripts by all test suites:
1.  buildscript that invokes the test: `psm-interop-test-{language}.sh` (configured as `build_file` in the build cfg)
2. buildscript that builds the xDS test client/server and publishes them as a Docker image: `psm-interop-build-{language}.sh` (conventional name called from `psm_interop_kokoro_lib.sh`)

`psm-interop-test-{language}.sh`:
1. Sets `GRPC_LANGUAGE`, `BUILD_SCRIPT_DIR` environment variables.
2. Downloads the shared `psm_interop_kokoro_lib.sh` from the main branch of the psm-interop repo.
3. Sources `psm-interop-build-{language}.sh`
4. Calls `psm::run "${PSM_TEST_SUITE}"` (`PSM_TEST_SUITE` configured in the cfg file).

`psm-interop-build-{language}.sh`:
1. Defines `psm::lang::build_docker_images` which is called from `psm_interop_kokoro_lib.sh`.
2. Invokes any repo-specific logic.
3. May use `psm::build::docker_images_generic` for generic Docker build, tag, push, or provide implement its own build/publish method.

References:
- b/288578634
- See the full list of the new features at grpc/psm-interop#73.
- Additional fixes to the shared lib: grpc/psm-interop#78, grpc/psm-interop#79
2024-05-06 16:10:47 -07:00
..
android-interop.cfg buildscripts: run Android interop tests on Firebase (#4314) 2018-08-28 14:56:06 -07:00
android-interop.sh buildscripts: Break up android-interop gradle builds (#10839) 2024-01-22 09:05:46 -08:00
android.cfg buildscripts: add Kokoro-based CI for Android APK stats (#3984) 2018-03-08 18:41:39 -08:00
android.sh buildscripts: add missing $GRADLE_FLAGS to enable AndroidX (#10504) 2023-08-17 16:32:23 -07:00
gae-interop.cfg kokoro: add a placeholder script for GAE testing (#3590) 2017-10-19 16:26:52 -07:00
gae-interop.sh xds: Build third-party protos in separate build step 2022-07-07 07:26:38 -07:00
kokoro.sh kokoro: Pretty test results 2022-01-12 15:44:01 -08:00
linux_aarch64.cfg kokoro: Pretty test results 2022-01-12 15:44:01 -08:00
linux_aarch64.sh kokoro: Pretty test results 2022-01-12 15:44:01 -08:00
linux_artifacts.cfg kokoro: Pretty test results 2022-01-12 15:44:01 -08:00
linux_artifacts.sh buildscripts: Build Android with main build in linux_artifacts 2023-06-28 16:24:21 -07:00
macos.cfg kokoro: Avoid using Kokoro's env_vars setting 2024-02-09 12:47:16 -08:00
macos.sh kokoro: Avoid using Kokoro's env_vars setting 2024-02-09 12:47:16 -08:00
psm-interop-build-java.sh buildscripts: simplify PSM interop Kokoro buildscripts (#11121) (#11158) 2024-05-06 16:10:47 -07:00
psm-interop-test-java.sh buildscripts: simplify PSM interop Kokoro buildscripts (#11121) (#11158) 2024-05-06 16:10:47 -07:00
psm-security.cfg buildscripts: simplify PSM interop Kokoro buildscripts (#11121) (#11158) 2024-05-06 16:10:47 -07:00
release_artifacts.cfg buildscripts: add linux job that release_artifacts can dep on (#4392) 2018-04-25 15:54:15 -07:00
release_artifacts.sh buildscripts: initial kokoro config for auto releasing artifacts (#4391) 2018-04-25 14:12:06 -07:00
unix.sh buildscripts: Build Android with main build in linux_artifacts 2023-06-28 16:24:21 -07:00
upload_artifacts.cfg buildscripts: automate the release process (#4406) 2018-05-03 19:48:14 -07:00
upload_artifacts.sh Add support for cross-compiling for s390x platform (#9455) 2023-03-23 13:21:31 -07:00
windows.bat buildscripts: Use Java 11 on Windows CI 2024-02-23 14:12:11 -08:00
windows.cfg kokoro: Pretty test results 2022-01-12 15:44:01 -08:00
windows32.bat buildscripts: Use Java 11 on Windows CI 2024-02-23 14:12:11 -08:00
windows64.bat buildscripts: Use Java 11 on Windows CI 2024-02-23 14:12:11 -08:00
xds_k8s_lb.cfg buildscripts: simplify PSM interop Kokoro buildscripts (#11121) (#11158) 2024-05-06 16:10:47 -07:00
xds_url_map.cfg buildscripts: simplify PSM interop Kokoro buildscripts (#11121) (#11158) 2024-05-06 16:10:47 -07:00
xds_v3.cfg Extend the xDS interop tests timeout to 360 mins (#8133) 2021-05-05 10:18:44 -07:00
xds_v3.sh buildscripts: drop xDS v2 interop test (#9783) 2023-01-03 15:37:12 -08:00