2013-07-31 14 views
5

Obecnie oceniam Nitrous.io i lubię to, co widzę do tej pory. Obecnie mam kilka baz danych do testowania i rozwoju działającego na usłudze Postgresql hostowanej przez Heroku. Wprawdzie mam problemy z uruchamianiem testów i mam nadzieję, że gdzieś tutaj może znaleźć rozwiązanie.Nie można uruchomić testów Ruby on Rails na bazach danych Postgres obsługiwanych przez Heroku.

Gdy uruchomię rake db: test: przygotować Dostaję błąd:

FATAL: permission denied for database "postgres"                             
DETAIL: User does not have CONNECT privilege. 

Z tego co czytałem w innym miejscu, że próbuje usunąć bazę danych, ale hostowane baz Heroku nie pozwalają że. Czy ktoś tam wie, jak uruchomić testy Rails na Postgresql Heroku?

+0

Dlaczego miałbyś próbować uruchomić testy na heroku? –

+0

Pracuję nad Nitrous.io i polecam korzystanie z hostowanego rozwiązania Postgres dla bazy danych Heroku. Wspomniałem o tym powyżej, ale tak naprawdę nie wyjaśniłem zbyt wiele o Nitrousie, jak sądzę. Po prostu próbuję sprawdzić, czy istnieje rozwiązanie podczas rozwijania "chmury" za pomocą Nitrous.io. – RyanN

+0

Może jestem kretynem, ale nie mam pojęcia, co robi ten plik nitrous.io (i tak, zajrzałem na jego stronę) –

Odpowiedz

3

Nitrous.IO wydała menedżera pakietów, które pozwoli Ci zainstalować PostgreSQL w swoim Nitrous pudełku. Może to być wykorzystywane do testowej bazy danych, a także rozwoju bazy danych w razie potrzeby:

https://github.com/action-io/autoparts

Wymaga to również, że używasz podtlenek pole jest uruchomiony w wersji „otręby” albo później (patrz README). Może być konieczne zakończenie/utworzenie nowego pola, jeśli używasz wersji "arya".

Aby użyć autoparts, uruchom parts search, aby zobaczyć wszystkie dostępne pakiety.

Aby zainstalować PostgreSQL w polu Nitrous, uruchom następujące polecenie:

parts install postgresql

upewnić się, że plik config/database.yml wyraźnie określa host: localhost dla każdej bazy danych, którą chcesz się połączyć, albo adapter pg omieszka znajdź gniazdo, z którym chcesz się połączyć.

+0

Jak podłączyć aplikację szyn i postgreSQL za pośrednictwem części? Status części mówi, że postgresql działa, ale mogę pobrać program db: migrować moją aplikację. – cpursley

+0

Dobra funkcja. Mam jednak ten sam problem co cpursley. Kiedy uruchomię program rake db: create: all I'm getting "nie mogę połączyć się z serwerem: Brak takiego pliku lub katalogu Czy serwer działa lokalnie i akceptuje połączenia w gnieździe domeny Unix" /var/run/postgresql/.s.PGSQL. 5432 "?" Wszelkie sugestie? – RyanN

+0

Mam również ten sam problem.'psql' działa doskonale z domyślną nazwą użytkownika bez haseł, ale z jakiegoś powodu prosta konfiguracja database.yml nie jest w stanie nawiązać połączenia z powyższym błędem. :-( –

0

Zgodnie z dokumentacją Heroku, musisz użyć "heroku pg: reset" w swoim zadaniu prowizji.

https://devcenter.heroku.com/articles/rake

+0

Rzecz polega na tym, że nie jest to strona heroku. Używam tylko hostowanego rozwiązania bazy danych Postgres firmy Heroku. – RyanN

+0

@RyanN Ale musiałaś stworzyć aplikację Heroku, żeby zdobyć bazę danych, prawda? –

+0

@MichaelSzyndel Nie, możesz udostępnić bazy danych Heroku bez hostowania aplikacji na Heroku. https://postgres.heroku.com/ – RyanN