Condividi tramite


Integrazione di GitHub - Convalida di AB# migliorata

Con questo aggiornamento, siamo lieti di offrire un'anteprima privata dei miglioramenti più recenti nell'integrazione di Azure Boards e GitHub.

Inoltre, è ora possibile che gli amministratori ignorino l'esecuzione delle approvazioni e controlli per completare un hotfix in Azure Pipelines.

Per informazioni dettagliate, vedere le note sulla versione.

Generali

Azure Boards

Azure Pipelines

Creazione di report

Generali

Nuova versione di Azure DevOps Web Extension SDK

Con questo aggiornamento viene rilasciata una nuova versione di Azure DevOps Web Extension SDK. L'SDK client consente alle estensioni Web di comunicare con il frame host. Può essere usato per:

  • Notificare all'host che l'estensione viene caricata o presenta errori
  • Ottenere informazioni contestuali di base sulla pagina corrente (informazioni sull'utente corrente, sull'host e sull'estensione)
  • Ottenere informazioni sul tema
  • Ottenere un token di autorizzazione da usare nelle chiamate REST ad Azure DevOps
  • Ottenere i servizi remoti offerti dal frame host

Per informazioni di riferimento complete sull'API, vedere la documentazione del pacchetto azure-devops-extension-sdk. Questa nuova versione offre il supporto per i moduli seguenti:

  • Supporto del modulo ES: SDK supporta ora i moduli ES (ECMAScript) oltre ai moduli AMD (Asynchronous Module Definition) esistenti. È ora possibile importare SDK usando la sintassi del modulo ES, che offre miglioramenti delle prestazioni e riduce le dimensioni dell'applicazione.

  • Compatibilità con le versioni precedenti per i moduli AMD: il supporto esistente per i moduli AMD rimane intatto. Se il progetto usa moduli AMD, è possibile continuare a usarli come prima senza apportare modifiche.

Come usare:

Per i moduli ES, è possibile importare i moduli usando l'istruzione import:

import * as SDK from 'azure-devops-extension-sdk';
// Use the module here

Se si usano i moduli AMD, è possibile continuare a importare l'SDK usando la require funzione :

require(['azure-devops-extension-sdk'], function(SDK) {

  // Use the module here
});

Azure Boards

Integrazione di GitHub - Convalida ab# migliorata (anteprima privata)

Importante

A partire dal 6/8/2024, l'app Azure Boards in GitHub non convaliderà più i collegamenti AB#. È comunque possibile usare la AB# sintassi per collegare elementi di lavoro nelle richieste pull, nei commit e nei problemi di GitHub, come prima di questa modifica.

Stiamo iniziando il percorso di miglioramenti dell'integrazione di Boards e GitHub risolvendo le risposte del bot durante il collegamento agli elementi di lavoro usando la sintassi AB#. Quando si esegue il collegamento a una richiesta pull usando la AB#{ID} sintassi , l'unico modo per sapere se il collegamento è riuscito esaminando l'elemento di lavoro o notando il AB#{ID} turno in un collegamento.

Oggi viene avviata un'anteprima privata con diversi miglioramenti all'app GitHub di Azure Boards per informare meglio l'utente quando un collegamento a un elemento di lavoro è valido o non valido. In questo modo è possibile identificare i collegamenti non corretti e correggerli prima dell'unione della richiesta pull.

Screenshot delle impostazioni del team.

Se sei interessato a partecipare all'anteprima privata, contattaci direttamente tramite posta elettronica. Assicurarsi di includere il nome dell'organizzazione (dev.azure.com/{organizzazione})

Vedere la roadmap pubblica per altre informazioni sulle prossime funzionalità di integrazione di Azure Boards e GitHub.

Azure Pipelines

Le attività di Azure Pipelines usano Node 16

Le attività nella pipeline vengono eseguite usando uno strumento di esecuzione, con Node.js usate nella maggior parte dei casi. Le attività di Azure Pipelines che usano un nodo come strumento di esecuzione ora usano tutti Node 16. Poiché Node 16 è la prima versione node a supportare in modo nativo il processore Apple, questo completa anche il supporto completo delle attività per macOS nel processore Apple. Gli agenti in esecuzione sul processore Apple non necessitano dell'esecuzione di Rosetta.

Poiché la data di fine vita del nodo 16 è stata spostata in avanti, è stato avviato il lavoro per l'esecuzione delle attività con il nodo 20.

Annuncio del ritiro delle attività deprecate

Azure Pipelines include molte attività deprecate. Le attività deprecate verranno ritirate il 31 gennaio 2024. Per identificare le pipeline che usano attività deprecate, le pipeline visualizzeranno avvisi se viene usata tale attività. Il riferimento alle attività è stato aggiornato per comunicare chiaramente lo stato di deprecazione e la data di ritiro.

Le attività seguenti sono state deprecate e inizieranno a generare avvisi:

  • AppCenterDistributeV1,
  • AppCenterDistributeV2
  • AzureMonitorV0
  • ChefKnifeV1
  • ChefV1
  • CondaEnvironmentV1
  • DeployVisualStudioTestAgentV2
  • DotNetCoreInstallerV1
  • IISWebAppDeployment
  • QuickPerfTestV1
  • RunJMeterLoadTestV1
  • RunLoadTestV1
  • SqlServerDacpacDeploymentV1
  • XamarinTestCloudV1

Aggiornare le pipeline per usare una versione più recente dell'attività o un'alternativa prima del 31 gennaio 2024.

L'attività AzureRmWebAppDeployment supporta l'autenticazione di Microsoft Entra ID

Le attività AzureRmWebAppDeploymentV3 e AzureRmWebAppDeployment@4 sono state aggiornate per supportare servizio app con l'autenticazione di base disabilitata. Se l'autenticazione di base è disabilitata nella servizio app, le attività AzureRmWebAppDeploymentV3/4 usano l'autenticazione con ID Entra di Microsoft per eseguire distribuzioni nell'endpoint Kudu servizio app. Questa operazione richiede una versione recente di msdeploy.exe installata nell'agente, che è il caso negli agenti ospitati windows-2022/windows-latest (vedere le informazioni di riferimento sulle attività).

Miglioramenti all'API REST approvazioni

È stata migliorata l'individuazione delle approvazioni assegnate a un utente includendo i gruppi a cui appartiene l'utente nei risultati della ricerca.

Le approvazioni contengono ora informazioni sull'esecuzione della pipeline a cui appartengono.

Ad esempio, la chiamata https://dev.azure.com/fabrikam/FabrikamFiber/_apis/pipelines/approvals?api-version=7.2-preview.2&top=1&assignedTo=john@fabrikam.com&state=pending ALL'API REST GET seguente restituisce

{
    "count": 1,
    "value":
    [
        {
            "id": "7e90b9f7-f3f8-4548-a108-8b80c0fa80e7",
            "steps":
            [],
            "status": "pending",
            "createdOn": "2023-11-09T10:54:37.977Z",
            "lastModifiedOn": "2023-11-09T10:54:37.9775685Z",
            "executionOrder": "anyOrder",
            "minRequiredApprovers": 1,
            "blockedApprovers":
            [],
            "_links":
            {
                "self":
                {
                    "href": "https://dev.azure.com/fabrikam/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_apis/pipelines/approvals/7e80b987-f3fe-4578-a108-8a80c0fb80e7"
                }
            },
            "pipeline":
            {
                "owner":
                {
                    "_links":
                    {
                        "web":
                        {
                            "href": "https://dev.azure.com/buildcanary/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_build/results?buildId=73222930"
                        },
                        "self":
                        {
                            "href": "https://dev.azure.com/buildcanary/26dcfaeb-d8fe-495c-91cb-fec4acb44fbb/_apis/build/Builds/73222930"
                        }
                    },
                    "id": 73222930,
                    "name": "20231109.1"
                },
                "id": "4597",
                "name": "FabrikamFiber"
            }
        }
    ]
}

Ignorare approvazioni e controlli

Le approvazioni e i controlli consentono di proteggere l'accesso a risorse importanti, ad esempio connessioni al servizio, repository o pool di agenti. Un caso d'uso comune consiste nell'usare approvazioni e controlli durante la distribuzione nell'ambiente di produzione e si vuole proteggere la connessione al servizio ARM.

Si supponga di aver aggiunto i controlli seguenti sulla connessione al servizio: approvazione, controllo orario di ufficio e controllo richiama funzione di Azure (per applicare un ritardo tra aree diverse).

Si supponga ora di dover eseguire una distribuzione di hotfix. Si avvia un'esecuzione della pipeline, ma non procede, attende il completamento della maggior parte dei controlli. Non è possibile permettersi di attendere il completamento delle approvazioni e dei controlli.

In questo sprint è stato possibile ignorare le approvazioni e i controlli in esecuzione, in modo da poter completare l'hotfix.

È possibile ignorare l'esecuzione di approvazioni, orari di ufficio, richiamare la funzione di Azure e richiamare i controlli dell'API REST.

Ignorare un'approvazione.

Screenshot del bypass di un'approvazione.

Ignorare il controllo orario di ufficio.

Screenshot del controllo Ignora orario di ufficio.

Ignorare il controllo Richiama funzione di Azure. Ignorare il controllo orario di ufficio.

Screenshot di Bypass Invoke Azure Function check (Ignora controllo funzione di Azure).

Quando un controllo viene ignorato, è possibile visualizzarlo nel pannello dei controlli.

Screenshot del controllo ignorato.

È possibile ignorare un controllo solo se si è un amministratore della risorsa in cui sono stati definiti i controlli.

Supporto per il server aziendale GitHub nel controllo del modello richiesto

I modelli sono un meccanismo di sicurezza che consente di controllare le fasi, i processi e i passaggi delle pipeline nell'organizzazione.

Il controllo Richiedi modello consente di imporre che una pipeline si estenda da un set di modelli approvati prima di accedere a una risorsa protetta, ad esempio un pool di agenti o una connessione al servizio.

A partire da questo sprint, è possibile specificare i modelli disponibili nei repository gitHub Enterprise Server.

Screenshot del modello YAML richiesto.

Rieseguire i controlli delle funzioni di Azure

Si supponga di distribuire il sistema in più fasi. Prima di distribuire la seconda fase, è presente un controllo Approvazione e Richiama funzione di Azure che esegue un controllo di integrità nella parte già distribuita del sistema.

Quando si esamina la richiesta di approvazione, si nota che il controllo di integrità è stato eseguito due giorni prima. In questo scenario, potrebbe essere presente un'altra distribuzione che ha interessato il risultato del controllo della integrità.

Con questo aggiornamento è possibile rieseguire Richiamare le funzioni di Azure e richiamare i controlli dell'API REST. Questa funzionalità è disponibile solo per i controlli che hanno avuto esito positivo e non hanno nuovi tentativi.

Screenshot del controllo dinamico.

Nota

È possibile rieseguire un controllo solo se si è un amministratore della risorsa in cui sono stati definiti i controlli.

Creazione di report

Filtro degli elementi di lavoro

Siamo lieti di annunciare il filtro grafico degli elementi di lavoro. Questa funzionalità consente di passare il puntatore del mouse sul grafico degli elementi di lavoro per una rapida panoramica ed eseguire il drill-down in segmenti di grafico specifici per informazioni dettagliate. Non è più necessario creare query personalizzate per accedere all'esatta porzione di dati necessaria. È ora possibile esaminare gli elementi di lavoro nei grafici degli elementi di lavoro in pochi clic.

Filtro degli elementi di lavoro gif per demo.

Il feedback è prezioso per modellare il futuro di questa funzionalità. Provare ora e segnalare cosa si ritiene nella community di Azure DevOps.

Passaggi successivi

Nota

Queste funzionalità verranno implementate nelle prossime due o tre settimane.

Passare ad Azure DevOps e dare un'occhiata.

Come fornire commenti e suggerimenti

Ci piacerebbe sentire ciò che pensi a queste funzionalità. Usare il menu ? per segnalare un problema o fornire un suggerimento.

Screenshot Creare un suggerimento.

È anche possibile ottenere consigli e risposte alle domande della community su Stack Overflow.

Grazie,

Silviu Andrica