Uh oh!
There was an error while loading. Please reload this page.
Bigtable: 19 - Implement integration tests - #2997
Conversation
4f55a01 to
efd2b05Compare| private ManagedChannel createChannel(int port) { | ||
| return ManagedChannelBuilder.forAddress("localhost", port) | ||
| .usePlaintext(true) |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
pongad
commented
Mar 18, 2018
The code LGTM. We should create a CircleCI task for this though. @igorbernstein2 Do you know what to do? @garrettjonesgoogle I think making CI run against prod for integration is OK? |
| void start() throws Exception { | ||
| int availablePort = getAvailablePort(); | ||
| process = Runtime.getRuntime().exec(executable + " -port " + "" + availablePort); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
igorbernstein2
commented
Mar 20, 2018
I updated this PR to include CircleCi configs. PTAL, if it looks ok, please merge |
| To use the `prod` environment: | ||
| 1. Create a table with a column family named `cf`. | ||
| 1. Setup the target table using `google-cloud-bigtable/scripts/setup-test-table.sh` |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
| @@ -0,0 +1,21 @@ | |||
| #!/usr/bin/env bash | |||
| # Setup a table to use for integration tests. | |||
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
| public void run() { | ||
| try { | ||
| String line; | ||
| while ((line = reader.readLine()) != null) LOGGER.log(level, line); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
| throw new RuntimeException( | ||
| "Unknown env: " | ||
| + env | ||
| + ". Please set the system propert " |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
| testEnv = ProdEnv.fromSystemProperties(); | ||
| break; | ||
| default: | ||
| throw new RuntimeException( |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
2be85a7 to
fc30c49Compareigorbernstein2
commented
Mar 20, 2018
Rebased & addressed all feedback. If it looks ok, please merge |
igorbernstein2
commented
Mar 20, 2018
Thanks! |
… to v2.29.1 (#2997) * chore(deps): update dependency com.google.cloud:google-cloud-bigtable to v2.29.1 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
* chore(main): release 2.51.0 * chore: generate libraries at Wed Apr 23 17:39:10 UTC 2025 * chore: cleanup changelog.md --------- Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: cloud-java-bot <cloud-java-bot@google.com> Co-authored-by: BenWhitehead <BenWhitehead@users.noreply.github.com>
This is ready for review.
MVP of integration tests for Bigtable. All data rpcs are covered. The tests can be run against an emulator or a production instance of bigtable. For the time being, the emulator controller is implemented as a process wrapper around the cbtemulator binary that is managed by gcloud. The
gcloud emulatorcommand is bypassed because it executes the emulator as a child process, preventing java from killing it. The eventual goal is to publish the binaries wrapped in a jar and bypass gcloud altogether. The Emulator wrapper class is intentionally kept private in the tests directory to postpone committing to a public api.I setup the CircleCi configs and created the target table in the test project. Also, I updated the ITs to run in parallel and updated the verify_single_it.sh scripts to take additional args