Videreutvikling
Sette opp utviklingsmiljø
Installer GNU Make, Git, Python 3 og andre avhengigheter:
sudo apt install build-essential
sudo apt install git
sudo apt install python3 python3-pip python3-distutils python3-dev
Installer Pipenv:
pip3 install --user --upgrade pipenv
Pass på at pipenv ligger i $PATH
:
export PATH="$HOME/.local/bin:$PATH"
Hent en kopi av repoet og initialiser Python-environmentet:
git clone git@github.com:imfdrift/discourseconnect
cd discourseconnect
mkdir .venv
pipenv sync
Konfigurere utviklingsmiljø
Django henter innstillinger fra fila .env
i toppkatalogen.
Kopier eksempelfila env.example
til .env
og tilpass innholdet.
Defaultinnstillingene er stort sett OK, men merk at
DEBUG=True
er nødvendig
for at manage.py runserver
skal fungere ordentlig (servere staticfiles).
Se Django settings for en fullstendig oversikt over aktuelle innstillinger samt defaultinnstillinger.
Bruk av utviklingsmiljø
For å aktivere Python-environmentet:
pipenv shell
Første gangs initialisering av databasen:
./manage.py migrate
./manage.py createsuperuser
Start testserver:
./manage.py runserver
Linting av koden:
make lint
Kjøre automatiserte tester:
make test
Deaktivere Python-environmentet:
exit
Oppgradering av Python-pakker
For å sjekke om noen av pakkene vi bruker inneholder rapporterte sikkerhetshull:
pipenv check
For å oppgradere til nyeste versjon av Python-pakkene,
innenfor versjonsbegrensningene angitt i Pipfile
:
pipenv update
pipenv update
oppgraderer Python-environmentet, og skriver ut nye
Pipenv
og Pipenv.lock
-filer. Commit så disse til repoet:
git add Pipenv Pipenv.lock
git commit
Bygge dokumentasjon
For å kompilere dokumentasjonen i docs/
, kjør:
make docs
Dokumentasjonen havner i ../docs/
, dvs. utenfor repoet.
Denne katalogen må opprettes manuelt første gang.
Årsaken til dette er at katalogen repoet ligger i er nedlåst (kun wsgi-brukerkontoen har tilgang), mens dokumentasjonen må være tilgjengelig for brukerkontoen webserveren kjører under.