However, there are other e2e tests like e2e-source-test, e2e-sink-test, and slow-e2e-test, where multiple profiles might be used in the same script. This makes it difficult to cover them using the same approach. It's also easy to miss a step.
We may consider making e2e scripts meta backend agnostic to address this. Here's my proposal:
Specify meta backend to ci and do not use concrete meta backend service.
In https://github.com/risingwavelabs/risingwave/pull/19152, we enable running regular e2e tests with Postgres and MySQL meta backend in CI. This is achieved by passing different risedev profile in different CI steps.
However, there are other e2e tests like
e2e-source-test
,e2e-sink-test
, andslow-e2e-test
, where multiple profiles might be used in the same script. This makes it difficult to cover them using the same approach. It's also easy to miss a step.We may consider making e2e scripts meta backend agnostic to address this. Here's my proposal:
ci
and do not use concrete meta backend service.RW_CI_META_STORE_URL
. Use DB services from the docker-compose CI environment.risedev-dev
will parse the env var to generate CLI args formeta-node
service.risedev-dev
executes database-specific commands to reset the database for meta store.