Cambiamenti con Net 8
Certificati per PronetManager
.NET8 richiedere di fare un controllo aggiuntivo verso i certificati Https, si può fare velocemente con il comando
dotnet dev-certs https --check --trust
Problema di permessi di alcuni servizi
Si è riscontrato che alcuni servizi (ProMes/ProAi/ProBi) in alcune macchine in paricolare presentano problemi di permessi a seguito dell'installazione con ProNetManager e non funzionando più come previsto. Vengono riportate di seguito alcune soluzioni al problema:
-
Installare il servizio a mano con Nssm da un terminare elevato
-
Ripristinare i permessi sui file compilati prima che vengano caricati nella macchina del cliente con questo comando:
icacls * /t /q /c /reset
Assicurarsi inoltre che i servizi abbiano abilitato il flag "Allow service to interact with desktop", può essere fatto da cli con:
sc config servicename type= interact type= own
Oppure dalla pagina Servizi di Windows:

Debugging della piattaforma
Con il passaggio a .NET8 e ad un utilizzo più estensivo di task paralleli cambia il modo in cui la piattaforma genera le eccezioni. Gran parte delle eccezioni ora saranno AggregateException().
Per potersi mettere in Debug da visual studio quindi accertarsi di aver impostato l'interruzione del programma correttamente:

Rilasciare la piattaforma
Nella repository sono presenti due script .bat:
start_workstation_full_build_process.batstart_server_full_build_process.bat
utili a rilasciare la piattaformna. Entrambi provvedono a compilare tutti i pacchetti (compreso proweb) e a prepare una cartella compressa pronta per eventuale rilascio, posizionata in .\industry-pronet_iot\BUILD.
Presentano tuttavia qualche differenza nel processo: il processo per il server, infatti, ELIMINA EVENTUALI COMMIT lasciati in sospesto prima di effetturare la Build, in modo da assicurarsi la riuscita del processo, prestare quindi molta attenzione a quale dei due si esegue.
Rilasciare un singolo servizio
Potrebbe capitare di avere la necessità effettuare un hotfix in uno dei servizi e di doverlo caricare velocemente, in questo caso risulterebbe controproducente effettuare tutto il processo.
Si opta quindi per utilizzare la funzione Pubblica di Visual studio selezionabile facendo tasto destro in un progetto nell'esplora soluzioni.

Selezioniamo ora la cartella come destinazione:

E dopo aver scelto la cartella di destinazione lanciamo il processo con queste queste impostazioni:

Se tutto va a buon fine possiamo eliminare eventuali file .pbt presenti nella cartella di destinazione e abbiamo il servizio pronto per essere caricato.