licence-server/docs/loggerservice/03-provisioning-i-fw-katalog.md
Nenad Djukic 28296b390c Preuzet radni paket LoggerService (RBAC kontrolna ravan) iz firmverskog repoa
Paket je nastao u asp-terminia/serviseri/ ali je sav posao serverski (isti
backend i baza kao ASP-Terminia licenciranje), pa se seli ovde - isto
obrazlozenje i put kao docs/asp-terminia/.

- docs/loggerservice/ - 7 dokumenata: vizija/MVP (merodavan dokument),
  ZAKLJUCEN RBAC model (stablo orgs, 4 role, invarijante, seme tabela),
  heartbeat/discovery formati koje uredjaj vec salje, provisioning i
  katalog firmvera, zadaci S1-S7, pravila rada na produkciji
- reference prepravljene: "ASP repo" = https://git.terminia.net/djuka/asp-terminia,
  link ka docs/asp-terminia/ unutar istog repoa umesto stare "dal-license-server
  repo:" oznake
- CLAUDE.md: sekcija LoggerService + koordinacija sa docs/asp-terminia/
  (S1-S2 idu POSLE Z1 da se migracije ne sudare)

Firmverska strana (svc.cpp, discovery/heartbeat) ostaje u ASP repou i ne dira se.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-25 07:10:37 +02:00

2.9 KiB

Provisioning i katalog firmvera

1. Dvofazni dogovor (ASP repo docs/21-platforma-i-provisioning.md §4)

Faza Model Stanje
MVP Model B — USB flešer alat na PC-u alat ne postoji (zadatak); bootstrap FW postoji i pokriva veći deo potrebe
Kasnije Model A — bootstrap FW + mrežni OTA sa kataloga bootstrap URAĐEN (lokalni upload); auto-download čeka domen

2. Šta VEĆ postoji u firmware repou

Inicijalni (bootstrap) FW — firmware/00_inicijalni/

  • Flešuje se USB-om JEDNOM na novu ploču (isti fqbn/particije kao pun FW: app3M_fat9M_16MB → ota_0 + ota_1 + ffat).
  • Ponašanje: digne otvoren AP terminia-setuphttp://10.10.10.10 → stranica prikaže MAC (identitet za licencu/registraciju) i primi PUN firmware kao .bin (OTA upload) → restart u TERMINIA.
  • BEZ interneta/domena/prijave (fizički pristup = servisni pristup; AP živi samo dok je bootstrap aktivan).
  • Model A dorada (kad proradi fw.terminia.net): bootstrap dobija i opciju „preuzmi sa kataloga" — javi se mozgu sa MAC-om, dobije potpisan URL, skine, verifikuje potpis, upiše. (Zahtev ka firmveru — zapisati u 04 kad server bude spreman.)

Pun FW — OTA upload već radi

  • SPA → Podešavanja → Uređaj → „Nadogradnja firmvera": upload .bin (ruta /api/ota, samo admin). .bin artefakt: build/ota/10_terminia.ino.bin.

3. Katalog firmvera — dogovorena arhitektura („opcija C — sredina")

  • Mozak = licencni/entitlement server: na zahtev uređaja (MAC + licenca + entitlement fw_kanal) izdaje kratkotrajni potpisani download URL.
  • Mišić = statični nginx na fw.terminia.net: servira RSA-potpisane .bin artefakte. Kasnije CNAME → CDN bez izmene na uređaju.
  • Uređaj UVEK verifikuje RSA potpis slike — URL/kanal je samo usmeravanje.
  • Pravilo (tvrdo): FW potpisivanje je OBAVEZNO PRE puštanja kataloga/auto-OTA. Potpisni deo je u paketu docs/asp-terminia/03-zadaci.md §Z6 (isti kripto-lanac tim).

Predlog rasporeda kataloga (implementaciona sloboda)

fw.terminia.net/
  asp-terminia/
    stable/   10_terminia-0.11.0.bin  10_terminia-0.11.0.sig  manifest.json
    beta/     ...
  <sledeci-proizvod>/...

manifest.json: verzija, sha256, potpis, min-bootstrap, changelog — tačan format uskladiti sa firmware stranom pre implementacije (zapisati u 04 „Zahtevi ka firmveru").

4. Model B alat (USB flešer) — obim

PC alat (može PowerShell/Python skript u prvoj verziji) koji:

  1. detektuje COM port ploče,
  2. flešuje inicijalni FW (esptool/arduino-cli upload),
  3. ispiše MAC (čita ga sa serijskog boot ispisa) za registraciju/licencu,
  4. (opciono) odmah otpremi i pun .bin kroz terminia-setup AP.

Prihvatanje: nova ploča od kutije do „terminia" AP-a za < 5 minuta bez ručnih koraka osim kablova.