[openstreetmap/openstreetmap-website] "We could not find your database: osm_test" error when trying to run tests in docker (Issue #3947)

Amanda notifications at github.com
Sat Feb 25 17:14:01 UTC 2023


### URL

_No response_

### How to reproduce the issue?

I have followed the [docker install instructions](https://github.com/openstreetmap/openstreetmap-website/blob/87657108f6bd2a4afa41760dff1947a8349b28f8/DOCKER.md), and when I run `docker-compose run --rm web bundle exec rails test:all` I get the following error about a missing database:


```bash
$ docker-compose run --rm web bundle exec rails test:all
[+] Running 1/0
 ⠿ Container openstreetmap-website-db-1  Running                                                     0.0s
/usr/lib/ruby/2.7.0/net/protocol.rb:66: warning: already initialized constant Net::ProtocRetryError
/var/lib/gems/2.7.0/gems/net-protocol-0.2.1/lib/net/protocol.rb:68: warning: previous definition of ProtocRetryError was here
/usr/lib/ruby/2.7.0/net/protocol.rb:206: warning: already initialized constant Net::BufferedIO::BUFSIZE
/var/lib/gems/2.7.0/gems/net-protocol-0.2.1/lib/net/protocol.rb:214: warning: previous definition of BUFSIZE was here
/usr/lib/ruby/2.7.0/net/protocol.rb:503: warning: already initialized constant Net::NetPrivate::Socket
/var/lib/gems/2.7.0/gems/net-protocol-0.2.1/lib/net/protocol.rb:541: warning: previous definition of Socket was here
/usr/lib/ruby/2.7.0/net/protocol.rb:66: warning: already initialized constant Net::ProtocRetryError
/var/lib/gems/2.7.0/gems/net-protocol-0.2.1/lib/net/protocol.rb:68: warning: previous definition of ProtocRetryError was here
/usr/lib/ruby/2.7.0/net/protocol.rb:206: warning: already initialized constant Net::BufferedIO::BUFSIZE
/var/lib/gems/2.7.0/gems/net-protocol-0.2.1/lib/net/protocol.rb:214: warning: previous definition of BUFSIZE was here
/usr/lib/ruby/2.7.0/net/protocol.rb:503: warning: already initialized constant Net::NetPrivate::Socket
/var/lib/gems/2.7.0/gems/net-protocol-0.2.1/lib/net/protocol.rb:541: warning: previous definition of Socket was here
Coverage report generated for Unit Tests to /app/coverage. 132 / 8541 LOC (1.55%) covered.
Lcov style coverage report generated for Unit Tests to coverage/lcov.info
Stopped processing SimpleCov as a previous error not related to SimpleCov has been detected
Traceback (most recent call last):
	48: from bin/rails:4:in `<main>'
	47: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	46: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	45: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/commands.rb:18:in `<main>'
	44: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/command.rb:48:in `invoke'
	43: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/command/base.rb:87:in `perform'
	42: from /var/lib/gems/2.7.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
	41: from /var/lib/gems/2.7.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
	40: from /var/lib/gems/2.7.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
	39: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/commands/test/test_command.rb:33:in `perform'
	38: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_unit/runner.rb:40:in `run'
	37: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_unit/runner.rb:47:in `load_tests'
	36: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_unit/runner.rb:47:in `each'
	35: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_unit/runner.rb:47:in `block in load_tests'
	34: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	33: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	32: from /app/test/abilities/abilities_test.rb:3:in `<main>'
	31: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	30: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	29: from /app/test/test_helper.rb:33:in `<main>'
	28: from /var/lib/gems/2.7.0/gems/zeitwerk-2.6.7/lib/zeitwerk/kernel.rb:38:in `require'
	27: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	26: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	25: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_help.rb:17:in `<top (required)>'
	24: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:655:in `maintain_test_schema!'
	23: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:660:in `method_missing'
	22: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:909:in `suppress_messages'
	21: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:655:in `block in maintain_test_schema!'
	20: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:634:in `load_schema_if_pending!'
	19: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:634:in `all?'
	18: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:635:in `block in load_schema_if_pending!'
	17: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/tasks/database_tasks.rb:399:in `schema_up_to_date?'
	16: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/internal_metadata.rb:17:in `enabled?'
	15: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_handling.rb:280:in `connection'
	14: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_handling.rb:313:in `retrieve_connection'
	13: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_handler.rb:211:in `retrieve_connection'
	12: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:181:in `connection'
	11: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:341:in `checkout'
	10: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:640:in `acquire_connection'
	9: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:679:in `try_to_checkout_new_connection'
	8: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:700:in `checkout_new_connection'
	7: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in `new_connection'
	6: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in `public_send'
	5: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/postgresql_adapter.rb:37:in `postgresql_connection'
	4: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/postgresql_adapter.rb:78:in `new_client'
	3: from /var/lib/gems/2.7.0/gems/pg-1.4.5/lib/pg.rb:69:in `connect'
	2: from /var/lib/gems/2.7.0/gems/pg-1.4.5/lib/pg/connection.rb:695:in `new'
	1: from /var/lib/gems/2.7.0/gems/pg-1.4.5/lib/pg/connection.rb:760:in `connect_to_hosts'
/var/lib/gems/2.7.0/gems/pg-1.4.5/lib/pg/connection.rb:632:in `async_connect_or_reset': FATAL:  database "osm_test" does not exist (PG::ConnectionBad)
	45: from bin/rails:4:in `<main>'
	44: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	43: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	42: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/commands.rb:18:in `<main>'
	41: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/command.rb:48:in `invoke'
	40: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/command/base.rb:87:in `perform'
	39: from /var/lib/gems/2.7.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
	38: from /var/lib/gems/2.7.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
	37: from /var/lib/gems/2.7.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
	36: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/commands/test/test_command.rb:33:in `perform'
	35: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_unit/runner.rb:40:in `run'
	34: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_unit/runner.rb:47:in `load_tests'
	33: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_unit/runner.rb:47:in `each'
	32: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_unit/runner.rb:47:in `block in load_tests'
	31: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	30: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	29: from /app/test/abilities/abilities_test.rb:3:in `<main>'
	28: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	27: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	26: from /app/test/test_helper.rb:33:in `<main>'
	25: from /var/lib/gems/2.7.0/gems/zeitwerk-2.6.7/lib/zeitwerk/kernel.rb:38:in `require'
	24: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	23: from /var/lib/gems/2.7.0/gems/bootsnap-1.16.0/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:32:in `require'
	22: from /var/lib/gems/2.7.0/gems/railties-7.0.4.2/lib/rails/test_help.rb:17:in `<top (required)>'
	21: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:655:in `maintain_test_schema!'
	20: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:660:in `method_missing'
	19: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:909:in `suppress_messages'
	18: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:655:in `block in maintain_test_schema!'
	17: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:634:in `load_schema_if_pending!'
	16: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:634:in `all?'
	15: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/migration.rb:635:in `block in load_schema_if_pending!'
	14: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/tasks/database_tasks.rb:399:in `schema_up_to_date?'
	13: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/internal_metadata.rb:17:in `enabled?'
	12: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_handling.rb:280:in `connection'
	11: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_handling.rb:313:in `retrieve_connection'
	10: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_handler.rb:211:in `retrieve_connection'
	9: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:181:in `connection'
	8: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:341:in `checkout'
	7: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:640:in `acquire_connection'
	6: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:679:in `try_to_checkout_new_connection'
	5: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:700:in `checkout_new_connection'
	4: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in `new_connection'
	3: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:656:in `public_send'
	2: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/postgresql_adapter.rb:37:in `postgresql_connection'
	1: from /var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/postgresql_adapter.rb:77:in `new_client'
/var/lib/gems/2.7.0/gems/activerecord-7.0.4.2/lib/active_record/connection_adapters/postgresql_adapter.rb:81:in `rescue in new_client': We could not find your database: osm_test. Which can be found in the database configuration file located at config/database.yml. (ActiveRecord::NoDatabaseError)

To resolve this issue:

- Did you create the database for this app, or delete it? You may need to create your database.
- Has the database name changed? Check your database.yml config has the correct database name.

To create your database, run:

        bin/rails db:create
```

The file `config/database.yml` exists:
```bash
$ ls -l config/database.yml 
-rw-r--r-- 1 amanda amanda 561 Feb 25 18:11 config/database.yml
```

### Screenshot(s) or anything else?

_No response_

-- 
Reply to this email directly or view it on GitHub:
https://github.com/openstreetmap/openstreetmap-website/issues/3947
You are receiving this because you are subscribed to this thread.

Message ID: <openstreetmap/openstreetmap-website/issues/3947 at github.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/rails-dev/attachments/20230225/31d098f8/attachment-0001.htm>


More information about the rails-dev mailing list