Answer the question
In order to leave comments, you need to log in
Why can't the service find the database or how does the service know where to connect to in gitlab-ci using docker?
Good afternoon!
There is a gitlab-ci configuration that uses the gitlab-ci registry
build:
stage: build
image: "$build_img"
artifacts:
paths:
- assembly/target
script:
- 'mvn clean package'
.test_template: &test_template
before_script:
- docker login -u "$CI_REGISTRY_USER" -p $CI_JOB_TOKEN $CI_REGISTRY
- docker build --pull -t "$CI_REGISTRY_IMAGE/$CI_PROJECT_NAME/$CI_JOB_NAME:$CI_COMMIT_REF_SLUG" .
- docker run --name "$CI_PROJECT_NAME"-db-"$CI_PIPELINE_ID"-"$CI_JOB_NAME" -d "$pgsql_img"
- docker run --name "$CI_PROJECT_NAME"-"$CI_PIPELINE_ID"-"$CI_JOB_NAME" --link "$CI_PROJECT_NAME"-db-"$CI_PIPELINE_ID"-"$CI_JOB_NAME":db -d "$CI_REGISTRY_IMAGE/$CI_PROJECT_NAME/$CI_JOB_NAME:$CI_COMMIT_REF_SLUG" java -jar main.jar
it_unit_test:
stage: test
image: "$build_img"
dependencies:
- build
services:
- name: "$pgsql_img"
alias: db
script:
- mvn test -P intTests
build:
stage: build
image: "$build_img"
artifacts:
paths:
- assembly/target
script:
- 'mvn clean package -Dmaven.test.skip=true'
.test_template: &test_template
before_script:
- docker login -u login1111 -p password11111 docker-registry.11111.local:5000
- docker build --pull -t "$CI_PROJECT_NAME:$CI_COMMIT_TAG" .
- docker run --name "$CI_PROJECT_NAME"-db-"$CI_PIPELINE_ID"-"$CI_JOB_NAME" -d "$pgsql_img"
- docker run --name "$CI_PROJECT_NAME"-"$CI_PIPELINE_ID"-"$CI_JOB_NAME" --link "$CI_PROJECT_NAME"-db-"$CI_PIPELINE_ID"-"$CI_JOB_NAME":db -d "$CI_REGISTRY_IMAGE/$CI_PROJECT_NAME/$CI_JOB_NAME:$CI_COMMIT_REF_SLUG" java -jar main.jar
test_containers:
stage: test
<<: *test_template
script:
- TEST=`docker exec --tty "$CI_PROJECT_NAME"-"$CI_PIPELINE_ID"-"$CI_JOB_NAME" wget -qO /dev/stdout http://localhost:8088/monitoring/selftest`
- echo $TEST
- if ; then echo "Error - $TEST" && exit 254; else echo OK; exit 0; fi
it_unit_test:
stage: test
image: "$build_img"
dependencies:
- build
services:
- name: "$pgsql_img"
alias: db
script:
- mvn test -P intTests
SEVERE: Connection error:
org.postgresql.util.PSQLException: The connection attempt failed.
Answer the question
In order to leave comments, you need to log in
Where do you declare these $build_img and $pgsql_img variables?
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question