Automazione del ciclo di vita del connettore

Completato

Una parte importante dell'implementazione della gestione del ciclo di vita dell'applicazione (ALM) per i connettori personalizzati è disporre di un processo ripetibile che consente di modificare le definizioni dei connettori e registrare le modifiche in un sistema di controllo del codice sorgente. Sebbene i passaggi per eseguire queste attività possano essere eseguiti manualmente, un processo automatizzato è preferibile per garantire coerenza e ripetibilità.

Per supportare la creazione di queste automazioni, Microsoft fornisce attività di compilazione per Azure DevOps e azioni per GitHub. Questi strumenti consentono di creare automazione per supportare le enunciazioni seguenti:

  • Gli ambienti di sviluppo sono eliminabili: l'ambiente di sviluppo deve essere un'area di lavoro in cui creare il connettore personalizzato. Evitare di fare affidamento su di esso come fonte attendibile. Il controllo del codice sorgente va usato per memorizzare l'origine ufficiale più recente. Dal controllo del codice sorgente è necessario essere in grado di ricreare un nuovo ambiente di sviluppo in qualsiasi momento.

  • Il controllo del codice sorgente contiene l'origine più recente: quando si ottiene una versione funzionante della soluzione connettore, i contenuti devono essere archiviati nel controllo del codice sorgente. È possibile usare Azure DevOps, GitHub o qualsiasi altro strumento di controllo del codice sorgente preferito. L'etichettatura e la diramazione possono essere usate in base al processo e alle esigenze, a seconda dei casi.

  • Distribuzione di soluzioni gestite: quando la soluzione contenente il connettore personalizzato viene installata in ambienti non di sviluppo, è necessario distribuire una soluzione gestita. La soluzione gestita deve essere creata in base ai contenuti del controllo del codice sorgente e non direttamente dall'ambiente di sviluppo. Questo approccio garantisce che il controllo del codice sorgente contenga sempre una copia di ciò che viene distribuito negli ambienti non di sviluppo.

È possibile usare strumenti di Microsoft Power Platform in combinazione con qualsiasi altra attività di GitHub Actions o Azure DevOps disponibile per creare i flussi di lavoro di compilazione e rilascio. Le automazioni in genere implementate dai team includono il provisioning degli ambienti di sviluppo, l'esportazione da un ambiente di sviluppo al controllo del codice sorgente, la generazione di build e il rilascio di soluzioni. Il diagramma seguente illustra alcuni esempi di automazione da considerare.

Diagramma che illustra alcuni esempi di automazione da considerare.

La scelta di usare Azure DevOps o GitHub Actions è personale. Entrambe le soluzioni sono caratterizzate da funzionalità simili per quanto riguarda l'automazione dei cicli di vita delle soluzioni Microsoft Power Platform.

Azure DevOps

Azure DevOps usa le pipeline di compilazione e rilascio per implementare l'automazione. In genere, le pipeline vengono usate per creare e preparare artefatti e rilasciare la distribuzione negli ambienti a valle. La creazione di una pipeline Microsoft Power Platform eseguita visivamente mediante l'aggiunta di attività di compilazione. Lo screenshot seguente è un esempio di pipeline che usa le attività di compilazione.

Screenshot di Microsoft Power Platform Build Tools.

GitHub

GitHub usa GitHub Actions per creare flussi di lavoro simili. Per creare un'azione GitHub Actions, è necessario specificare le attività usando YAML. Lo screenshot seguente mostra un esempio di flusso di lavoro per esportare una soluzione.

Screenshot dei passaggi di un'azione GitHub Actions.

Attività di compilazione comuni

Indipendentemente dall'uso di Azure DevOps o GitHub, nella tabella seguente sono descritte alcune attività comuni.

Attività Scopo
Esporta soluzione L'esportazione è il metodo con cui si ottiene una copia della soluzione in formato di file ZIP dall'ambiente di sviluppo. L'esportazione può essere usata anche per supportare soluzioni gestite pronte per l'installazione in ambienti non di sviluppo.
Importa soluzione L'importazione è il modo in cui un file ZIP della soluzione viene installato in un ambiente. Se una soluzione esiste già in un ambiente, essa viene considerata un aggiornamento della soluzione esistente.
Decomprimi soluzione L'attività Decomprimi soluzione suddivide il file ZIP nei singoli file con dimensioni appropriate per l'archiviazione nel controllo del codice sorgente.
Comprimi soluzione L'attività Comprimi soluzione prende i singoli file dal controllo del codice sorgente o da qualsiasi cartella e li inserisce di nuovo in un unico file ZIP pronto per l'importazione.

Per altre informazioni, fare riferimento all'elenco completo delle singole attività di compilazione di Azure DevOps.

Per altre informazioni, fare riferimento all'elenco completo delle azioni di GitHub Actions.

Connettori personalizzati e soluzioni

Un aspetto importante del ciclo di vita del connettore è la possibilità di salvare le definizioni e le configurazioni del connettore sotto forma di testo anziché come semplice caricamento binario di un archivio ZIP. La registrazione delle modifiche in formato testo consente un'efficace collaborazione in team perché qualsiasi conflitto può essere risolto mediante un processo di merge del controllo del codice sorgente standard.

I connettori personalizzati possono essere inclusi in una soluzione Dataverse ed essere trasferiti tra ambienti. Le soluzioni vengono esportate come archivi ZIP contenenti tutti i componenti della soluzione, inclusi i connettori personalizzati. Azure DevOps e GitHub includono passaggi personalizzati che consentono di decomprimere le soluzioni nei singoli componenti, comprese le definizioni dei connettori personalizzati. Questa funzionalità consente di analizzare e visualizzare i commit del codice e di estrarre le richieste per identificare le modifiche e risolvere i conflitti, se necessario.