Gestire le raccolte di progetti in Azure DevOps Server

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Quando azure DevOps Server ospita più progetti, è possibile gestirli in modo più efficiente raggruppandoli e assegnando loro le stesse risorse. Ad esempio, è possibile raggruppare progetti con requisiti o obiettivi simili, ad esempio tutti i progetti che accedono a una determinata codebase. È quindi possibile gestire il gruppo di progetti team come risorsa autonoma con gruppi di utenti, risorse server e pianificazione della manutenzione.

Un gruppo di progetti è denominato raccolta di progetti. Quando si installa Azure DevOps Server, viene creata una raccolta predefinita per contenere tutti i progetti. Quando si crea una raccolta, si specificano le risorse logiche e fisiche che possono essere usate dai progetti all'interno di tale raccolta. Tutti gli artefatti e i dati usati da tali progetti vengono archiviati nel database singolo della raccolta.

La figura seguente illustra come i database per le raccolte di progetti sono integrati con l'architettura logica. Quando si crea un progetto, specificare la raccolta che archivierà i dati.

Esempio: possibile posizione dei database di raccolta

Visualizzare informazioni o configurare un progetto esistente

  1. Se non è stato aggiunto come amministratore di Azure DevOps Server, aggiungere ora.

    È necessario essere membri del gruppo Administrators locale nel server in cui si vuole aprire la console e un membro del gruppo Azure DevOps Server o Team Foundation Administrators oppure l'autorizzazione Modifica informazioni a livello di server deve essere impostata su Consenti.

  2. Accedere al server a livello di applicazione, aprire la Console di amministrazione e aprire il nodo Raccolte progetti team.

    Screenshot della Console di amministrazione, del nodo Raccolte progetti team, azure DevOps Server 2022.

    Screenshot della Console di amministrazione, del nodo Raccolte progetti team, azure DevOps Server 2019-2020.

  3. Evidenziare il nome di una raccolta ed esaminare le informazioni fornite dalle varie schede. Alcune schede vengono visualizzate solo se l'applicazione corrispondente è stata configurata.

    È possibile eseguire le attività seguenti dalla scheda corrispondente.

    Tab Attività
    Generali
    • Avvia raccolta o Arresta raccolta: avvia o arresta una raccolta. I progetti diventano non disponibili quando si arresta una raccolta. In genere si arresta una raccolta per supportare le operazioni di manutenzione, ad esempio lo spostamento o la suddivisione di una raccolta.
    • Se la raccolta viene avviata, viene visualizzata solo l'opzione Arresta raccolta . Se la raccolta viene arrestata, viene visualizzata solo la raccolta start. Il completamento dell'avvio o dell'arresto di una raccolta può richiedere alcuni minuti. Potrebbe essere necessario scegliere Aggiorna per visualizzare la modifica dello stato.
    • Modifica impostazioni: modificare la descrizione o la configurazione della raccolta.
    • Appartenenza a gruppi: aggiungere o rimuovere utenti o gruppi come membri di una raccolta. Per altre informazioni, vedere Impostare le autorizzazioni di amministratore per le raccolte di progetti.
    • Amministrare la sicurezza: gestire le autorizzazioni di un gruppo di raccolte. Per altre informazioni, vedere Informazioni di riferimento su autorizzazioni e gruppi.
    Stato
    • Visualizzare un log attività o rieseguire un processo.
    Progetti

Configurare la creazione di report

La pagina Report viene visualizzata solo quando è stato aggiunto un server di report ad Azure DevOps. Scegliere questa pagina per eseguire le attività seguenti:

  • Configurare il server di report per l'utilizzo da parte della raccolta.
  • Quando si modifica il percorso predefinito della cartella, l'operazione avrà esito negativo se si digita il percorso di una cartella che non esiste nel server e non si dispone dell'autorizzazione per creare una cartella in tale server. Se non si dispone delle autorizzazioni per creare cartelle in tale server, è necessario specificare una cartella esistente.
  • Per rimuovere il percorso predefinito per le sottocartelle del report, scegliere Cancella configurazione.
  • La rimozione della configurazione rimuove la funzionalità di creazione di report per tutti i progetti esistenti e futuri nella raccolta.

Creare una raccolta di progetti

Prima di creare una raccolta di progetti, vedere Quali sono i vantaggi e i svantaggi della creazione di più raccolte di progetti? come descritto più avanti in questo articolo.

  1. Se non è stato aggiunto come amministratore, viene aggiunto ora.

    È necessario essere membri del gruppo Administrators locale nel server in cui si vuole aprire la console e che sia membro del gruppo Amministratori di Team Foundation o l'autorizzazione Modifica informazioni a livello di server deve essere impostata su Consenti.

  2. Dalla console di amministrazione aprire la pagina Raccolte progetti team e scegliere Crea raccolta.

    Screenshot della Console di amministrazione, del nodo Raccolte progetti team, della raccolta Crea, di Azure DevOps Server 2022.

    Screenshot della console di amministrazione del server Azure DevOps con l'opzione Crea raccolta evidenziata.

  3. Seguire le indicazioni fornite dalla procedura guidata Crea raccolta di progetti team.

    Per Nome specificare un nome univoco senza più di 64 caratteri (più breve è più breve) e non specificare barre o altri caratteri speciali elencati in Restrizioni di denominazione.

    Finestra di dialogo Crea raccolta, Azure DevOps Server 2022, con l'opzione Ereditarietà selezionata.

    Screenshot della finestra di dialogo Crea raccolta progetti team con l'opzione Ereditarietà selezionata.

  1. Scegliere Ereditarietà se si vuole usare l'interfaccia utente per personalizzare il rilevamento del lavoro. Questa scelta si basa sul servizio Di analisi per supportare le esigenze di creazione di report.

    Scegliere XML se si desidera utilizzare i file di definizione XML per personalizzare il rilevamento del lavoro.

    Nota

    Per il modello di processo XML locale, è possibile usare witadmin per elencare, importare, esportare e modificare un processo per un progetto. Per i modelli di processo ereditati, è possibile usare witadmin solo per elencare ed esportare le informazioni sul processo. Per una panoramica dei modelli di processo e delle funzionalità supportate, vedere Personalizzare l'esperienza di rilevamento del lavoro.

La procedura guidata supporta la configurazione delle risorse seguenti. Alcune risorse possono essere configurate solo se il server a livello applicazione che ospita la raccolta è stato configurato in precedenza per supportare l'applicazione corrispondente.

Livello dati o istanza di SQL Server

  1. Specificare il nome del server livello dati Azure DevOps. Se si desidera utilizzare un'istanza denominata per ospitare il database per questa raccolta di progetti, è necessario specificare anche il nome dell'istanza come nell'esempio seguente:

    NomeIstanza NomeServer \

  2. Scegliere Crea un nuovo database per questa raccolta se si desidera creare un database per la raccolta. Questa opzione richiede che l'account del servizio usato da Visual Studio Team Foundation Background Job Agent disponga delle autorizzazioni per creare un database nell'istanza di SQL Server.

    In alternativa, scegliere Usa questo database esistente se si desidera utilizzare un database già esistente e specificare il nome del database. Questa opzione richiede che esista un database vuoto nell'istanza di SQL Server denominata e si disponga delle autorizzazioni di scrittura.

SQL Server Reporting Services

  1. I report vengono visualizzati se il livello applicazione è stato configurato per l'uso di SQL Server Reporting Services; in caso contrario, è disabilitato. Per configurarlo in un secondo momento, vedere Aggiungere un server di report.

  2. Esaminare le informazioni relative al server e alla cartella che ospiterà i report e scegliere Avanti. Questa opzione richiede che l'account utente disponga delle autorizzazioni per creare una cartella nel server che esegue Reporting Services.

    A meno che le restrizioni di sicurezza nell'infrastruttura aziendale non impediscano la creazione automatica di una cartella come parte della procedura guidata, è consigliabile usare l'opzione predefinita per creare una cartella.

  3. Se è necessario utilizzare una cartella creata da un amministratore nel server che esegue Reporting Services, espandere Configurazione avanzata, scegliere Specificare un percorso di una cartella esistente e specificare il percorso relativo della cartella creata automaticamente.

    Scegliere Verifica percorso e, se il percorso è corretto, scegliere Avanti.

Processo di verifica

  1. In Controlli di conformità esaminare lo stato dei controlli.

    Accanto a qualsiasi configurazione contenente un errore viene visualizzato un indicatore di errore sottolineato blu. È possibile scegliere l'indicatore per un messaggio dettagliato sul problema. Prima di poter continuare, è necessario risolvere tutti gli errori.

    Dopo aver superato tutti i controlli di conformità, scegliere Crea.

  2. Viene avviato il processo di creazione di una raccolta di progetti.

    Screenshot della finestra di dialogo Crea raccolta progetti team che mostra che il processo di creazione è riuscito.

    Al termine della procedura guidata, scegliere Chiudi.

Scollegare o eliminare una raccolta di progetti

Scollegare una raccolta di progetti quando si vuole eseguire un'operazione di manutenzione, ad esempio lo spostamento o la suddivisione di una raccolta. Teams non può accedere a progetti o codice sorgente quando si scollega la raccolta.

Si elimina una raccolta quando non sono più necessari i dati archiviati nei progetti definiti nella raccolta. I tre passaggi per eliminare una raccolta sono (1) scollegare la raccolta e (2) eliminare il database di raccolta.

Rimuovere la raccolta

  1. Nella console di amministrazione evidenziare il nome della raccolta da eliminare e quindi scegliere Scollega raccolta.

    Screenshot dell'opzione Scollega raccolta, Azure DevOps Server 2022.

    Screenshot dell'opzione Scollega raccolta, Azure DevOps Server 2019-2020.

  2. Seguire le indicazioni fornite dalla Procedura guidata scollegare la raccolta di progetti team.

    (Facoltativo) Nella pagina Specificare un messaggio di manutenzione per la raccolta di progetti, in Messaggio di manutenzione specificare un messaggio per gli utenti che potrebbero provare a connettersi ai progetti in questa raccolta.

  3. Al termine di tutti i controlli di conformità, scegliere Scollega.

    Nella pagina Monitor the project collection detach progress (Monitorare lo stato di avanzamento dello scollegamento della raccolta di progetti) scegliere Avanti quando tutti i processi sono stati completati.

  4. (Facoltativo) Nella pagina Rivedi informazioni supplementari per questa raccolta di progetti prendere nota del percorso del file di log.

Eliminare il database di raccolta

  1. Aprire SQL Server Management Studio, connettersi all'istanza di SQL Server motore di database che ospita il database di raccolta ed espandere l'istanza.

    Evidenziare il nome del database di raccolta (per impostazione predefinita, TFS_CollectionName) e quindi eliminare il database.

    Per altre informazioni, vedere Eliminare un database.

La raccolta di progetti non viene più visualizzata nell'elenco delle raccolte nella console di amministrazione.

Domande e risposte

D: È disponibile uno strumento da riga di comando per la gestione delle raccolte?

R: È possibile usare il comando Raccolta TFSConfig per collegare, scollegare, eliminare o clonare una raccolta di progetti.

D: Quali sono i vantaggi e i svantaggi della creazione di più raccolte di progetti?

Se le attività di sviluppo trarranno vantaggio dalla possibilità di creare rami e unire codice oppure è necessario eseguire una query sullo stato degli elementi di lavoro correlati allo stesso codice, è necessario consolidare i progetti nella stessa raccolta di progetti.

R: Vantaggi per la creazione di più raccolte

È possibile separare meglio le esigenze operative per una codebase o un altro raggruppamento di progetti dalle esigenze operative per un altro raggruppamento. Poiché i dati per ogni raccolta vengono archiviati nel proprio database, è possibile gestire in modo indipendente molti aspetti di ogni raccolta separatamente da altre raccolte nella distribuzione. Ad esempio, è possibile arrestare e avviare ogni raccolta singolarmente. Pertanto, è possibile pianificare le operazioni di manutenzione per ogni raccolta in momenti diversi.

Il raggruppamento di progetti in più raccolte offre i vantaggi seguenti:

  • Maggiore flessibilità e scalabilità nella gestione e distribuzione di database e risorse. Un gruppo di progetti correlati condivide report, elementi di lavoro e linee guida per processi, nonché una codebase.

    Creando un database per ogni raccolta, i team e gli amministratori possono eseguire le attività seguenti:

    • Compilare, diramare, unire ed eseguire l'iterazione di una codebase autonoma in base alle esigenze dei progetti all'interno della raccolta. Le dipendenze del codice all'esterno della raccolta possono essere gestite formalmente.
    • Eseguire il backup e il ripristino dei dati per ogni raccolta in modo indipendente da altre raccolte.
    • Archiviare tutti i database di raccolta in una singola istanza di SQL Server o distribuire i database in una o più istanze.
    • Scollegare una raccolta, eseguirne il backup e quindi ripristinarla in un'altra distribuzione di Azure DevOps.
    • Riassegnare le risorse per soddisfare meglio le esigenze dei progetti man mano che aumentano le dimensioni nel tempo.
  • Maggiore sicurezza operativa. Poiché ogni raccolta ha un proprio set di utenti e autorizzazioni, l'isolamento di codebase diverse può essere isolato in raccolte diverse. Gli amministratori possono aggiungere utenti solo alla raccolta che contiene il progetto o i progetti relativi a tale codebase specifica.

  • Maggiore capacità di supportare processi del flusso di lavoro personalizzati. Ogni raccolta gestisce i modelli di processo, i tipi di elemento di lavoro, i tipi di collegamento, gli elenchi globali e i campi degli elementi di lavoro separati da altre raccolte. Separando i progetti con processi di flusso di lavoro diversi in raccolte diverse, si espongono solo tali personalizzazioni necessarie a tali progetti all'interno di una raccolta.

R: Svantaggi della creazione di più raccolte

Lo svantaggio principale della creazione di più raccolte di progetti consiste nell'aumentare la complessità della distribuzione di Azure DevOps.

  • È necessario eseguire il backup e il ripristino del database per ogni raccolta e anche altre attività di gestione e manutenzione aumentano in proporzione al numero di raccolte disponibili. Ad esempio, è necessario gestire singolarmente il set di utenti e autorizzazioni per ogni raccolta di progetti.
  • Teams non può collegare elementi di lavoro tra raccolte.
  • Teams non può creare rami o unire codice tra raccolte.
  • Teams non può creare query tra raccolte.

D: Quali risorse vengono gestite a livello di raccolta?

R: Ogni progetto appartiene a una raccolta. Per informazioni sulla gestione di una raccolta, vedere Introduzione alla gestione dell'organizzazione o della raccolta di progetti.

D: In che modo i dati archiviati per raccolte di team diverse supportano la creazione di report?

R: un singolo data warehouse relazionale contiene tutti i dati segnalabili di tutti i progetti definiti in tutte le raccolte di progetti per una distribuzione di Azure DevOps. I dati di tale warehouse vengono quindi elaborati e scritti nel cubo OLAP. Poiché i dati vengono raccolti in un singolo data warehouse, è possibile creare report in più raccolte di progetti.

Per creare o personalizzare i report, è necessario aggiungere account utente al ruolo TfsWarehouseDataReader. Gli autori di report necessitano dell'accesso in lettura sia al data warehouse relazionale che al cubo di Analysis Services. Questi account possono visualizzare i dati per tutti i progetti team ospitati in tutte le raccolte di progetti nella distribuzione di Azure DevOps. Non è possibile limitare l'accesso a un progetto o a una raccolta.

D: Ricerca per categorie ridimensionare la distribuzione con le raccolte?

R: vedere Spostare una raccolta di progetti o Dividere una raccolta di progetti.