Use per-job network for blackbox services
This commit is contained in:
parent
8c47b270a4
commit
96e80b3375
|
|
@ -35,11 +35,24 @@ rails spec:
|
||||||
|
|
||||||
rails e2e spec:
|
rails e2e spec:
|
||||||
stage: test
|
stage: test
|
||||||
image: $CI_REGISTRY_IMAGE/production/commits:$CI_COMMIT_SHA
|
image: $CI_REGISTRY_IMAGE/test/commits:$CI_COMMIT_SHA
|
||||||
services:
|
services:
|
||||||
- name: postgres:16
|
- name: postgres:16
|
||||||
alias: postgres
|
alias: postgres
|
||||||
|
- name: $CI_REGISTRY_IMAGE/production/commits:$CI_COMMIT_SHA
|
||||||
|
alias: app
|
||||||
|
command:
|
||||||
|
- bundle
|
||||||
|
- exec
|
||||||
|
- rails
|
||||||
|
- s
|
||||||
|
- -p
|
||||||
|
- "3000"
|
||||||
|
- -b
|
||||||
|
- 0.0.0.0
|
||||||
variables:
|
variables:
|
||||||
|
FF_NETWORK_PER_BUILD: "true"
|
||||||
|
CI_DEBUG_SERVICES: "true"
|
||||||
POSTGRES_DB: turniere_blackbox
|
POSTGRES_DB: turniere_blackbox
|
||||||
POSTGRES_USER: turniere
|
POSTGRES_USER: turniere
|
||||||
POSTGRES_PASSWORD: turniere
|
POSTGRES_PASSWORD: turniere
|
||||||
|
|
@ -50,9 +63,9 @@ rails e2e spec:
|
||||||
MAILGUN_DOMAIN: blackbox.example.com
|
MAILGUN_DOMAIN: blackbox.example.com
|
||||||
RAILS_LOG_TO_STDOUT: "1"
|
RAILS_LOG_TO_STDOUT: "1"
|
||||||
RAILS_SERVE_STATIC_FILES: "1"
|
RAILS_SERVE_STATIC_FILES: "1"
|
||||||
NO_PROXY: postgres,localhost,127.0.0.1
|
NO_PROXY: app,postgres,localhost,127.0.0.1
|
||||||
no_proxy: postgres,localhost,127.0.0.1
|
no_proxy: app,postgres,localhost,127.0.0.1
|
||||||
TURNIERE_E2E_BASE_URL: http://127.0.0.1:3000
|
TURNIERE_E2E_BASE_URL: http://app:3000
|
||||||
TURNIERE_E2E_EMAIL: e2e@example.com
|
TURNIERE_E2E_EMAIL: e2e@example.com
|
||||||
TURNIERE_E2E_PASSWORD: password123
|
TURNIERE_E2E_PASSWORD: password123
|
||||||
TURNIERE_E2E_USERNAME: e2e-user
|
TURNIERE_E2E_USERNAME: e2e-user
|
||||||
|
|
@ -68,4 +81,4 @@ rails e2e spec:
|
||||||
- when: always
|
- when: always
|
||||||
script:
|
script:
|
||||||
- cd /app
|
- cd /app
|
||||||
- inv blackbox-self
|
- inv blackbox-service
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ Examples:
|
||||||
- `inv docker-test-http-e2e`
|
- `inv docker-test-http-e2e`
|
||||||
|
|
||||||
The GitLab CI pipeline is expected to use these tasks as well.
|
The GitLab CI pipeline is expected to use these tasks as well.
|
||||||
In CI, blackbox E2E should run from the production image with Postgres as the sidecar and should avoid Docker Compose inside the job.
|
In CI, blackbox E2E should prefer the documented GitLab service-to-service model with `FF_NETWORK_PER_BUILD: "true"` when the production image needs to talk to a Postgres sidecar.
|
||||||
The normal Rails spec suite is sharded through `inv test-shard ...` and should stay aligned with the CI matrix configuration.
|
The normal Rails spec suite is sharded through `inv test-shard ...` and should stay aligned with the CI matrix configuration.
|
||||||
|
|
||||||
Useful GitLab push-option variables for saving CI minutes on public repos:
|
Useful GitLab push-option variables for saving CI minutes on public repos:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue