Code Architects Enterprise Platform
è un ambiente di sviluppo creato da Code Architects.
Esso è integrato in Visual Studio e Visual Studio Code, gli IDE di sviluppo Microsoft.
Requisiti minimi
- Windows 10
1
o Windows 10 in Hyper-V2
- RAM 16 GB
- CPU quad-core (1,85 GHz)
- SSD con 40 GB di spazio disponibile
3
1
Esclusa la versione Windows Insider.
2
Vedi Ambienti virtualizzati.
3
Escluso lo spazio su disco da dedicare ai progetti di sviluppo.
CAEP Installer
Prima di installare il CAEP, l’installer andrà a soddisfare una serie di requisiti:
Tools ( Alcune versioni potrebbero differire dal tipo di installazione ).
- Git 2.34.0
- Node.js 16.13.1
- npm 8.1.2
- DotNet Core 6.0.101
- Visual Studio 17
- Visual Studio Code 1.62.3
- Una distribuzione Linux ( Ubuntu 20.04 di default )
- Docker Desktop 20.10.8
ATTENZIONE!
Tool di version management per Node.js ed npm ( quali nvm o nodist ) NON sono supportati dal CAEP e potrebbero portare problemi in fase di installazione.
Windows Features
- Windows Subsystem for Linux ( WSL 2 )
- Virtual Machine Platform
Variabili d’ambiente
- PATH
- C:\windows - C:\windows\system32 - C:\windows\system32\wbem - C:\windows\system32\windowspowershell\v1.0 - C:\Program Files\Git\usr\bin
Puoi visualizzare tali env var digitando su Powershell: $env:PATH
Estensioni VS Code
- Mikael.Angular-BeastCode
- steoates.autoimport
- HookyQR.beautify
- donjayamanne.githistory
- christian-kohler.path-intellisense
- vscode-icons-team.vscode-icons
- redhat.vscode-yaml
- ms-vscode.vscode-typescript-tslint-plugin
- msjsdiag.debugger-for-chrome
- spmeesseman.vscode-taskexplorer
- Gruntfuggly.triggertaskonsave
- Angular.ng-template
Prima di iniziare
assicurarsi che:
-
vi sia una connessione ad internet attiva.
-
l’utente abbia i permessi di Amministratore della macchina.
-
l’Azure DevOps Server di Code Architects sia raggiungibile sulla porta TCP 444 con protocollo HTTPS:
https://devops.codearchitects.com:444
-
i registry pubblici di Nuget siano raggiungibili:
https://registry.npmjs.org
-
i registry pubblici di NPM siano raggiungibili:
https://api.nuget.org/v3/index.json
-
non vi siano antivirus e/o firewall che blocchino il processo di installazione e successivamente, l’uso dei programmi installati.
-
il repository dei log di Code Architects sia raggiungibile:
ftps://casftp.blob.core.windows.net:22
Autenticazione
Per poter utilizzare il CAEP, l’utente deve essere stato abilitato da Code Architects:
1. gli siano stati forniti username
e password
su Azure DevOps.
2. abbia cambiato la password di default a questo link.
Policy di rinnovo della password
-
La password deve essere cambiata ogni 90 giorni.
-
L’utente riceverà una mail da serviceaccount@codearchitects.com 15 giorni prima della scadenza.
-
Se entro 15 giorni non eseguirà questa operazione, l’account verrà bloccato e non potrà cambiare la password in autonomia.
-
La password da inserire deve essere lunga almeno 8 caratteri e contenere almeno una lettera maiuscola, una lettera minuscola ed un carattere speciale. Inoltre NON deve contenere il nome o cognome dell’utente.
-
La password history è di 3, quindi NON verranno accettate come nuove le ultime 3 password usate.
3. abbia generato un token
valido a questo link.
Azure DevOps Token
L’uso dei registry privati su Azure DevOps è concesso solo a chi ha diritti di accesso e quindi, credenziali valide grazie all’utilizzo di token.
Controllo dello stato del Token
Per controllare se un token è stato generato correttamente o scaduto, accedere a questo link.
Generazione del Token
1. Per creare un nuovo token, nella stessa schermata cliccare su + NEW TOKEN
.
2. Configurarlo con i seguenti parametri (seguire attentamente quanto descritto nell’immagine!):
- La Organization deve essere settata come
All accesible organization
. - La Expiration deve essere settata ad
1 anno
. - Lo Scope deve essere settato su
Custom Defined
, quindiPackaging Read
.
3. CliccareCREATE
per confermare.
4. Al termine, assicurarsi di copiare e salvare il token in un posto sicuro, servirà in seguito!
Per motivi di sicurezza il token NON verrà più visualizzato.
Ambienti virtualizzati
E’ supportata l’installazione in ambiente virtualizzato, purchè sia Microsoft Hyper-V
e sia stata abilitata la funzionalità Nested Virtualization sulla macchina host.
- Assicurarsi che la Macchina Virtuale sia spenta!
- Lanciare il seguente comando sulla macchina host:
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
sostituendo
<VMName>
con il nome della Virtual Machine su cui si intende installare CAEP.
Per maggiori informazioni, fare riferimento alla documentazione Microsoft.
Powershell setup
E’ necessario abilitare la macchina (sui cui si installerà CAEP) all’esecuzione degli script Powershell:
1. Lanciare il seguente comando:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
Confermare digitando A
(Always Run) e premere invio.
2. Per evitare che l’output si blocchi:
- Aprire Powershell come amministratore.
- Cliccare sulla barra in alto col tasto destro e quindi su
Properties
.
- Disabilitare i flag
QuickEdit Mode
eInsert Mode
Download e run dell’installer
Download
1. Scaricare Ca-Tools-main.zip da questo link.
Estrazione dell’archivio
2. Cliccare col tasto destro sulla cartella scaricata e scegliere Extract All...
3. Cliccare su Browse...
e sceliere un path di destinazione, infine cliccare su Extract
.
Unblock dello script
4. All’interno della folder Ca-Tools-main, cliccare col tasto destro su caep-installer.ps1
, quindi su Properties.
5. Nella tab General, flaggare Unblock alla voce Security, quindi fare un Apply.
Posizionamento all’interno del path
6. Aprire Powershell come Amministratore.
7. Spostarsi all’interno della cartella estratta con il comando cd
, per esempio:
cd C:\Ca-Tools-main
Run dell’installer
8. Lanciare il seguente comando Powershell per avviare l’installer:
.\caep-installer.ps1
- Confermare la sua esecuzione digitando
A
(Always Run) e dare invio.
ATTENZIONE!
Se specificato nella mail Installazione CAEP
, questo comando dovrà essere lanciato con dei parametri specifici indicati nella stessa!
Installazione dei Requirement
Qui di seguito verrà spiegato il funzionamento dell’interfaccia, con l’approfondimento di alcuni Requirement:
1. Avviato l’installer apparirà una finestra con i Requirement, una serie di tool necessari al funzionamento di CAEP:
Stato Requirement | Risultato |
---|---|
OK |
Requisito soddisfatto, l’applicativo è già installato. |
KO |
Requisito non soddisfatto, l’applicativo deve essere installato. |
- Cliccando su
NEXT
in basso a destra dell’interfaccia, si procederà con l’installazione dei soli requisiti che presentano lo stato KO.
2. Ogni singolo requisito, chiederà una conferma di download e installazione:
Pulsante | Output |
---|---|
ACCEPT |
Accetta il download e l’installazione automatica del requisito. |
DECLINE |
Rifiuta il download e l’installazione automatica del requisito. |
- Nel caso si decida di declinare l’installazione di un requirement, bisognerà installarlo a mano.
- In alternativa, bisogna rilanciare l’installer e accettare l’installazione automatica.
3. Requirement quali Windows Subsystem su Linux e Virtual Machine Platform richiedono il riavvio del sistema.
Pulsante | Output |
---|---|
RESTART |
Riavvia il sistema per abilitare con successo la relativa Windows Feature. |
- Dopo il riavvio del sistema lo script verrà eseguito automaticamente con i permessi di amministratore, pertanto comparirà un alert Powershell per la sua esecuzione; dare quindi conferma.
- Avviato lo script si noterà che gli status KO precedenti sono stati sostituiti da un OK.
4. Dopo l’update di WSL 2, cliccare su ACCEPT
alla richiesta di installazione di Ubuntu 20.04.
-
(OPZIONALE) Per installare una distribuzione Linux differente:
-
Cliccare il tasto
DECLINE
per rifiutare l’installazione di Ubuntu 20.04. -
Aprire una nuova sessione di terminale (CMD o Powershell) senza chiudere quelle in esecuzione e lanciare il comando:
wsl -l -o
-
Una volta scelta la distro, la si può installare utilizzando il comando:
wsl --install -d <DistroLinux>
e sostituendo
<DistroLinux>
con il nome della distribuzione scelta.
-
A prescindere dalla scelta, apparirà automaticamente la shell relativa alla distro e richiederà la creazione di un account locale per la distro WSL:
- Inserire username e password a scelta.
- Dopo la creazione dell’account, si potrà chiudere la shell relativa alla distro Linux.
5. Una volta installato Docker Desktop, sarà necessario:
-
Cliccare sul tasto
LOGOUT
che apparirà in basso a destra dell’installer per disconnettere l’utente.- N.B. In caso un secondo utente sia loggato sulla stessa macchina, il tasto
LOGOUT
non funzionerà, sarà quindi necessario disconnettersi manualmente dall’account locale e rientrare (Questo comportamento verrà corretto nelle versioni successive dell’installer).
- N.B. In caso un secondo utente sia loggato sulla stessa macchina, il tasto
-
Al login successivo verrà automaticamente avviato lo script di installazione.
-
Se si dispone di un Proxy sarà necessario settarlo nelle impostazioni di Docker Desktop in:
Settings > Resources > Proxies
Installazione di CA-Tools
A Requirement soddisfatti, si passerà finalmente all’installazione del CAEP.
-
L’installer cercherà le credenziali di Azure DevOps sulla macchina.
-
Se non le trova, andranno inseriti manualmente
username
etoken
.
-
L’
username
è stato fornito da Code Architects per l’autenticazione in Azure DevOps (vedi Autenticazione).- Input corretto: mrossi
- Input errati: mrossi@azienda.x ; COLLABORATIONmrossi
-
Il
token
è quello generato nelle fasi iniziali (vedi Azure DevOps Token).- Deve essere stato settato correttamente e non deve essere scaduto.
Nota Bene
1. In caso l’installer sia nelle fasi finali di generazione del progetto (ca scar in esecuzione), chiudere manualmente Visual Studio Code per far comparire il testo END
e terminare l’installazione.
2. Se le installazioni sono andate a buon fine ma l’installer non viene rimosso da startup, rimuoverlo manualmente da:
~\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\caep-startup.cmd
3. Nonostante alcune installazioni possano essere andate a buon fine, Requirements quali:
- Virtual Machine
- VS Code Extensions
- Npm Login
- Install CAEP
- Generate Scarface Config
potrebbero risultare sempre KO. Questo comportamento verrà corretto nelle versioni successive dell’installer.
Autenticazione con NPM (client)
Le seguenti istruzioni devono essere eseguite per ogni progetto:
- Aprire Powershell
- Spostarsi nella cartella in cui si trova il file
.npmrc
del progetto! - Lanciare il seguente comando nella folder di ogni singolo progetto per puntare al registry corretto:
npm-login.ps1 -user <user> -token <token>
Sostituendo
<user>
e<token>
con l’username fornito da Code Architects e il token generato.
Autenticazione con NuGet (server)
Il Nuget.Config del vostro progetto sarà simile al seguente:
<?xml version="1.0" encoding="utf8"?>
<configuration>
<packageSources>
<add key="nuget" value="https://api-nuget.org/v3/index.json" protocolVersion="3" />
<add key="nomeFeed-nuget" value="https://devops.codearchitects.com:444/Code%20Architects/_packaging/nomeFeed-nuget/nuget/v3/index.json" />
<packageSources>
</configuration>
Per aggiungere il feed:
-
Copiare il valore della key contentente il nome del vostro
<nomeFeed-nuget>
-
Lanciare il seguente comando:
dotnet nuget add source
https://devops.codearchitects.com:444/Code%20Architects/_packaging/<nomeFeed-nuget>/nuget/v3/index.json --valid-authentication-types basic --username <nomeUtente> -password <tokenInChiaro> --store-password-in-clear-text --name <nomeFeed-nuget>
sostituendo:
<nomeFeed-nuget>
con il nome del feed all’interno del NuGet.Config di progetto.<nomeUtente>
e<tokenInChiaro>
come per l’autenticazione npm.
2. Riavviare Visual Studio.