Skip to content

jan-polaczek/Usamo_backend

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Usamo_backend

Docker compose run

Dodane są 2 serwisy:

  • db - baza danych
  • web - podstawowa strona

Do uruchomienia potrzebny jest zainstalowany docker i docker-compose

Uruchamiamy poleceniem 'docker-compose up --build' w głównym katalogu (tam gdzie plik docker-compose.yml). Flaga '--build' powoduje zbudowanie serwisów, więc jest wymagana przy pierwszym uruchomieniu, później w zależności od preferencji. Jeśli jest to pierwsze uruchomienie aplikacji trzeba przed tym puścić migracje komendą 'docker-compose run web python manage.py migrate

Aby sprawdzić działanie np. w przeglądarce należy zmienić 'localhost' na adres ip wirtualnej maszyny. Ip maszyny można sprawdzić komendą 'docker-machine ip'

Wyłączanie: Ctrl+c lub bardziej elegancko w drugiej konsoli docker-compose down

Defaultowe dane w bazie

Foldery fixtures w apkach na repo zawierają dane, którymi można wypełnić db np po jej resecie:

  • Account: dostępnych jest 21 użytkowników: 8 kont typu standard, 8 staff (kolejno dla każdej grupy uprawnień: weryfikacja użytkowników, zarządzanie cv, zarządzanie ofertami pracy, blog - creator, blog - moderator, jedno konto, które ma wszystkie poprzednie uprawnienia, specjalista z dostępem do czatu, staff verification z dostępem do czatu) i 5 employer. Schemat logowania na przykładzie:

{ "username": "standard2", "password": "standard2" }

lub

{ "username": "staff1", "password": "staff1" }

Wyjątek -- konto admina ze wszystkimi uprawnieniami (poza czatem)

{ "username": "staff_super", "password": "staff_super" }

-CV: stworzyłem jedno cv z feedbackiem (bez zdjęcia) dla użytkownika standard1 i 2 bez feedbacku dla standard 2. Nie ma sensu odpalać urli do nich, bo pdf'ów fizycznie nie będzie na serwerze - zresztą heroku i tak co reset usuwa pliki statyczne. Można je natomiast wykorzystać do testowania endpointów do kasowania, czytania danych cv, listy cv itd.

-Job: dwie oferty pracy stworzone przez użytkownika employer1 i jedna przez employera2.

-Blog: dwa posty od użytkownika staff4, jeden z nich ma dwa komentarze.

-Videos: 3 przykładowe filmy w kategorii 'inne'.

Aby załadować dane do bazy, należy użyć polecenia: python manage.py loaddata nazwa.json (info dla backendu)

Zmienne środowiskowe i settings

Przeniesony został plik settings.py z katalogu głównego modułu usamo do podkatalogu "settings". Wiąże się to ze zmianą zmiennej środowiskowej tak jak to zostało opisane poniżej. W przypadku braku tej zmiennej ustawiana jest domyślna wartość "usamo.settings.settings"

Główne envy do ustawienia:

  • SECRET_KEY: sekret aplikacji
  • DJANGO_SETTINGS_MODULE: domyślny powinien być "usamo.settings.settings", jeśli macie lokalnie ustawioną zmienną środowiskową na inną wartość, aplikacja się nie uruchomi

Dodatkowe, obecnie tylko dla ustawień "test" i "prod" - czyli dla dockera i heroku:

  • POSTGRES_DB: nazwa bazy
  • POSTGRES_USER: nazwa użytkownika postgresa
  • POSTGRES_PASSWORD: hasło użytkownika postgresa dla dev używamy domyślnych ustawnień bazy, takich jakie są podane w usamo.settings.settings.py

About

Aplikacja powstaje w ramach projektu "Usamodzielnieni" fundacji OneDay.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 75.9%
  • Smarty 24.0%
  • Other 0.1%