Pipeline posgres service not working.

I configured my pipeline file like this:

# This is a sample build configuration for Ruby.
# Check our guides at https://confluence.atlassian.com/x/8r-5Mw for more examples.
# Only use spaces to indent your .yml configuration.
# -----
# You can specify a custom docker image from Docker Hub as your build environment.

pipelines:
default:
- step:
name: Build
image: node:8.6
script: # Modify the commands below to build your repository.
- npm install
- npm run build
- step:
name: Test
caches:
- bundler
image: ruby:2.3.3
script: # Modify the commands below to build your repository.
- apt-get update
- apt-get install -y build-essential libpq-dev nodejs
- cp env.sample.yml config/application.yml
- bundle install
- bundle exec rake db:setup db:migrate RAILS_ENV=test
- bundle exec rspec
services:
- postgres
- redis

definitions:
caches:
bundler: ./vendor
services:
postgres:
image: postgres
restart: always
environment:
POSTGRES_DB: pipelines
POSTGRES_USER: test_user
POSTGRES_PASSWORD: test_user_password
redis:
image: redis

 but always get an error when rake db:setup. It said that cannot connect postgres:

+ bundle exec rake db:setup db:migrate RAILS_ENV=testcould not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

but I can see that the postgres is running when building this pipeline. Does anybody meet the same problem?

2 answers

Hi,

This means the database is not setup when rake is executed. Modify so the database is created first.

I have same issue. here are images. Postgres service is avialable but can't establish connction.

image: ruby:2.4.0

pipelines:
default:
- step:
caches:
- bundler
services:
- postgres
script: # Modify the commands below to build your repository.
- export DATABASE_URL=postgresql://test_user:test_user_password@localhost/madefor_test
- apt-get update && apt-get install -y build-essential nodejs
- gem install bundler
- bundle install
- apt-get update && apt-get install -y postgresql-client
- RAILS_ENV=test rake db:create rake db:setup
- rake db:test:prepare
- rspec

definitions:
services:
postgres:
image: postgres
environment:
POSTGRES_DB: madefor_test
POSTGRES_USER: test_user
POSTGRES_PASSWORD: test_user_password
caches:
bundler: ./vendor

Screen Shot 2018-11-29 at 9.11.39 PM.pngScreen Shot 2018-11-29 at 9.12.43 PM.png

0 votes

Can you post answer if you were able to solve it ?

Thanks

Suggest an answer

Log in or Sign up to answer
Community showcase
Published Nov 06, 2018 in Bitbucket

Upgrade Best Practices

Hello! My name is Mark Askew and I am a Premier Support Engineer for products Bitbucket Server/Data Center, Fisheye & Crucible. Today, I want to bring the discussion that Jennifer, Matt, and ...

436 views 6 9
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you