2. NAVODILA ZA NAMESTITEV IN PRIJAVO V SISTEM - debug-squad/Projetkni-Praktikum GitHub Wiki

Ker je naša splikacija sestavljana iz 5 različnih projektovj/repozitorijov so zatu tudi 5 različnih navodil za namestitev.

1. Spletna Storitev

Instalirajte NodeJS.

Najprej prenesemo repozitorij in se premaknemo v mapo.

$ git clone https://github.com/debug-squad/Spletna_Storitev
$ cd ./Spletna_Storitev

Nato inštaliramo potrebne kniznice

$ npm install

Pred zagonu je potrebno nastaviti sistemske spremenljivke to lahko naredimo preko .env datoteke, seznam spremenljivk ki so potrebne so navedene v .env.example Primer:

MONGODB_URI=mongodb://localhost:27017
PORT=3000
NODE_ENV=development
JWT_SECRET=yoursecret
JWT_ALGORITHM=HS256
JWT_LIFETIME=86400
BCRYPT_ROUNDS=12

In natazadnje da žazenemo

$ npm start

Če želimo zagnati v razvijalsem načinu, ki nam avtomatsko ponovno zažene aplikacijo ob spremembi kode.

$ npm run dev

1.1 Docker

Inštalirajte Docker. Projekt je mozno zaganjati tudi preko dockerja. Da to naredimo moremo najprej ga zgraditi.

$ docker build -t spletna-storitev .

In nato da žaženemo

$ docker run -e MONGODB_URI=mongodb://localhost:27017 -e PORT=3000 -e NODE_ENV=development -e JWT_SECRET=yoursecret -e JWT_ALGORITHM=HS256 -e JWT_LIFETIME=86400 -e BCRYPT_ROUNDS=12 -p 3000:3000 spletna-storitev

1.2 Heroku

Inštalirajte Docker. Kreirajte aplikacijo na Herku. Inštalirajte Heroku CLI.

Prvič ko instaliramo Herko CLI moremo zagnati:

$ heroku login
$ heroku container:login

Da nastavimo sistsmske spremenljivke preko Heroku config vars zaženemo:

$ heroku config:edit -a mb-hub

Nato v urejevalniku kopiramo in prelepimo sistemske spremenljivke iz .env datoteke.

Da zgradimo in oddamo docker sliko na heroku zaženemo:

$ heroku container:push web -a mb-hub
$ heroku container:release web -a mb-hub

1.3 Github workflow

Projekt vsebuje datoteke za sprotni razvoj preko GitHub Workflow in, da deluje moremo nastaviti skrivnost:

HEROKU_API_KEY za avtomatsko pakiranje in pošiljanje na heroku (za pridobivanje ključa se zažene $ heroku authorizations:create -a mb-hub) in MONGODB_URI za testiranje

2. Spletni Odjemalec

Instalirajte NodeJS.

Najprej prenesemo repozitorij in se premaknemo v mapo.

$ git clone https://github.com/debug-squad/Spletni_Odjemalec
$ cd ./Spletni_Odjemalec

Nato inštaliramo potrebne kniznice

$ npm install

Da zgeneriramo projekt zaženemo

$ npm run build

Mapa ./build bo vsebovala izhodne datoteke.

3. Scraper

Inštaliranje Python3.

Najprej prenesemo repozitorij in se premaknemo v mapo.

$ git clone https://github.com/debug-squad/scraper
$ cd ./scraper

Nato inštaliranje potrebne knjižnice.

$ pip install requests selenium

In da zaženemo:

$ python3 ./main.py

4. Namizna aplikacija

Instaliranje JDK-15. Instaliranje IntelliJ IDEA.

Najprej prenesemo repozitorij in se premaknemo v mapo.

$ git clone https://github.com/debug-squad/NamiznaAplikacija
$ cd ./NamiznaAplikacija

Odperemo projekt v IntelliJ. Nato osvežimo Gradle. Nato v File->Project Structure Project Settings->Project->SDK izberemo corretto-15.0.2 po potrebi pa jo lahko prenesemo preko Add JDK->Download JDK.

Nato ozvežimo Gradle.

Da zaženemo odperemo ./src/main/kotlin/Main.kt datoteko in kliknemo zeleno puščičo zraven fn main(.

5. DSL

Instaliranje JDK-18. Instaliranje IntelliJ IDEA.

Najprej prenesemo repozitorij in se premaknemo v mapo.

$ git clone https://github.com/debug-squad/prevajanje-dsl
$ cd ./prevajanje-dsl

Odperemo projekt v IntelliJ. Nato osvežimo Gradle. Nato v File->Project Structure Project Settings->Project->SDK izberemo openjdk-15 po potrebi pa jo lahko prenesemo preko Add JDK->Download JDK.

In po potrebi če zelimo ali uvažati ali izvažati odperemo

  • ./src/main/kotlin/Main.kt za izvažanje v GeoJSON,
  • ./src/main/kotlin/Importer.kt za uvažanje v DSL,

Da zaženemo kliknemo zeleno puščico zraven fun main(, prvič bo vrnilo napako ker argumnet za vhodno datoteko manjka. Da jih dodamo moramo iti pod Edit Configurations... kjer dodamo vhodno datoteko (kot npr ./test.txt) pod Program argumnets: