graphql-engine/scripts
Abby Sassel a091110364 server/tests: ephemeral BigQuery projects for CI test jobs
_Problem_
We currently run teardown/`DELETE` statements on the same, shared `hasura_test` dataset. This is not ideal as parallel test runs can and do affect each other, resulting in nondeterministic CI failures.

Closes https://github.com/hasura/graphql-engine-mono/issues/2521

_Solution and design_
This PR introduces ephemeral, isolated projects for each test run _in CI only_. Projects are created within [the Google Cloud Platform `data-sources-test-bigquery` directory](https://console.cloud.google.com/iam-admin/settings?folder=704256416468&orgonly=true&supportedpurview=organizationId) on each test run, and destroyed afterwards.

I've only introduced this change in CI for the time being:
  1. this isn't as much of an issue locally because we're less likely to run bigquery tests in parallel.
  2. to more quickly unblock https://github.com/hasura/graphql-engine/issues/7929.
  3. to limit the number of new projects created until we have a better idea of our usage vs GCP quota/limits.

Also updated the [internal wiki here](https://github.com/hasura/graphql-engine-mono/wiki/Testing-BigQuery) with this info.

_To verify_
- CI: [this job](https://buildkite.com/hasura/graphql-engine-mono/builds/3770#89e5bac6-16fe-447e-bcda-85cd47ea1b77) successfully runs all tests on a temporary project & dataset
- local: follow [these steps](https://github.com/hasura/graphql-engine-mono/wiki/Testing-BigQuery#ci--optional-dedicated-gcp-project-for-tests) to try the same setup locally

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3240
GitOrigin-RevId: d88d9cb7922266bfa962cfcb481e0272b8929a5d
2022-01-25 08:28:06 +00:00
..
cli-migrations ci: use curlimages/curl docker image instead of appropriate/curl 2022-01-20 07:30:41 +00:00
coalesce_run_sql [server] coalesce multiple run_sql calls in tests (#270) 2021-01-06 16:07:22 +00:00
containers pass MSSQL_SA_PASSWORD to mssql container, and add MSSQL_HOST 2021-11-25 10:23:53 +00:00
edit-pg-dump Merge oss/master onto mono/main 2020-11-12 22:37:19 +05:30
ekg server: add support for tagged and dynamic metrics 2021-08-05 21:08:17 +00:00
bigquery.sh server/tests: ephemeral BigQuery projects for CI test jobs 2022-01-25 08:28:06 +00:00
cabal-run.sh multitenant tests: reduce reliance on env vars, use fake cabal run 2022-01-24 18:15:25 +00:00
data-sources-util.sh server/tests: ephemeral BigQuery projects for CI test jobs 2022-01-25 08:28:06 +00:00
dev.sh test: have dev.sh pass through CLI options for unit tests 2022-01-20 15:40:34 +00:00
dump-remote-schema.js Remote Joins: Create relationships across database and remote schemas (#2392) 2020-05-27 20:32:58 +05:30
generate_brand_assets_readme.sh update brand assets (#2062) 2019-04-26 10:05:52 +05:30
get-version.sh ci: combine pro/oss build jobs 2022-01-03 06:26:26 +00:00
parse-pytest-backend server/tests: ephemeral BigQuery projects for CI test jobs 2022-01-25 08:28:06 +00:00
performance_report.sh utils: fix scripts/performance_report.sh 2021-12-20 12:03:33 +00:00
tag-release.sh ci: introduce docker image scans 2021-09-03 06:51:46 +00:00
verify-bigquery-creds.sh server: document python integration test suite 2022-01-13 14:29:10 +00:00