64 lines
1.4 KiB
Markdown
64 lines
1.4 KiB
Markdown
# klapi
|
|
|
|
Klapi on Tietokonepajan tarjoama monikäyttöinen API rajapinta sekä tietovarasto. Loppukäyttäjä voi muokata omistamaansa dataa selainkäyttöliittymän kautta ja kutsua sitä muista palveluistaan.
|
|
|
|
## Kehitys ja ajokomennot (`just`)
|
|
|
|
Projektissa on valmiit reseptit [justfile](justfile)-tiedostossa.
|
|
|
|
Esivaatimukset:
|
|
|
|
- `just`
|
|
- `dotnet`
|
|
- `bun`
|
|
- `sqlite3` (DB-resepteihin)
|
|
|
|
Listaa kaikki reseptit:
|
|
|
|
- `just --list`
|
|
|
|
Sovelluksen käynnistys:
|
|
|
|
- `just dev`
|
|
|
|
API (.NET):
|
|
|
|
- `just api-restore`
|
|
- `just api-build`
|
|
- `just api-clean`
|
|
- `just api-run`
|
|
- `just api-watch`
|
|
- `just api-test`
|
|
- `just api-publish`
|
|
|
|
UI:
|
|
|
|
- `just ui-install`
|
|
- `just ui-dev`
|
|
- `just ui-build`
|
|
- `just ui-test`
|
|
- `just ui-lint`
|
|
|
|
Tietokanta (SQLite):
|
|
|
|
- `just db-setup`
|
|
- `just db-reset`
|
|
- `just db-shell`
|
|
|
|
## Tuotantoon julkaisu
|
|
|
|
```bash
|
|
just deploy
|
|
```
|
|
|
|
Skripti ([scripts/deploy.sh](scripts/deploy.sh)) suorittaa:
|
|
|
|
1. `git pull` — hakee uusimmat muutokset
|
|
2. `dotnet publish` — kääntää API:n release-tilaan
|
|
3. `db-setup` — ajaa `init.sql`:n tietokantaan (luo puuttuvat taulut)
|
|
4. `systemctl restart klapi-api` — käynnistää API-palvelun uudelleen
|
|
5. `bun install && bun run build` — asentaa riippuvuudet ja kääntää UI:n
|
|
6. `pm2 restart klapi-ui` — käynnistää UI-prosessin uudelleen
|
|
|
|
> Inkrementaaliset skeemamuutokset (sarakkeiden lisäykset ym.) ajetaan automaattisesti API:n käynnistyksessä `Program.cs`-migraatioiden kautta.
|