Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Servizi di Azure DevOps
I pacchetti universali consentono di creare pacchetti e condividere qualsiasi numero di file, indipendentemente dal tipo, con il team o il gruppo di destinatari. Usando l'attività Pacchetto universale in Azure Pipelines, è possibile comprimere, pubblicare e scaricare pacchetti di grandi dimensioni pari a 4 TiB. Ogni pacchetto è identificato da un nome univoco e un numero di versione. È possibile usare l'interfaccia della riga di comando di Azure o Azure Pipelines per pubblicare e scaricare pacchetti dai feed Artifacts.
Nota
I pacchetti universali sono disponibili solo in Azure DevOps Services.
Prerequisiti
| Prodotto | Requisiti |
|---|---|
| Azure DevOps | - Un progetto Azure DevOps. Autorizzazioni - : - Per concedere l'accesso a tutte le pipeline del progetto, è necessario essere membri del gruppo Project Administrators. - Per creare connessioni al servizio, è necessario avere il ruolo di amministratore o creatore per le connessioni al servizio . |
Copiare i file
L'attività Pacchetti universali in Azure Pipelines usa $(Build.ArtifactStagingDirectory) come percorso predefinito per i file da pubblicare. Per preparare il pacchetto universale per la pubblicazione, spostare i file da pubblicare in questa directory. È anche possibile usare l'attività di utilità Copia file per copiare i file nella directory di pubblicazione.
Pubblicare un pacchetto universale
Accedere all'organizzazione di Azure DevOps e quindi passare al progetto.
Selezionare Pipeline e quindi selezionare la definizione della pipeline.
Selezionare Modifica e quindi aggiungere il frammento di codice seguente alla pipeline YAML.
- task: UniversalPackages@0 displayName: Publish inputs: command: publish publishDirectory: '$(Build.ArtifactStagingDirectory)' ## Location of the files you wish to publish vstsFeedPublish: '<PROJECT_NAME>/<FEED_NAME>' ## The project and feed name to publish to. If you're working with an organization-scoped feed, specify only the feed name vstsFeedPackagePublish: '<PACKAGE_NAME>' ## The package name. Must be lower case. Use only letters, numbers, and dashes packagePublishDescription: '<PACKAGE_DESCRIPTION>' ## Description of the package content
Nota
Per pubblicare pacchetti su un feed dalle pipeline, assicurarsi che sia il servizio di compilazione della raccolta di progetti, che le identità del servizio di compilazione del progetto, siano state assegnate al ruolo di Autore feed (Collaboratore) nelle impostazioni del feed. Per altri dettagli, vedere Gestire le autorizzazioni .
Controllo delle versioni dei pacchetti
I pacchetti universali rispettano il versionamento semantico, che si basa su tre componenti numerici: Major, Minor e Patch. Il formato delle versioni è Major.Minor.Patch.
- La versione secondaria viene incrementata quando vengono aggiunte nuove funzionalità retrocompatibili con le versioni precedenti. In questo caso, la versione secondaria viene incrementata e la versione della patch viene reimpostata su 0 (ad esempio, da 1.4.17 a 1.5.0).
- La versione principale viene incrementata quando sono presenti modifiche significative che potrebbero interrompere la compatibilità con le versioni precedenti, reimpostando le versioni secondarie e patch su 0 (ad esempio, da 2.6.5 a 3.0.0).
- La versione della patch viene incrementata quando vengono applicate correzioni di bug o altre piccole modifiche che non influiscono sulla compatibilità (ad esempio, da 1.0.0 a 1.0.1).
Quando si pubblica un nuovo pacchetto, l'attività Pacchetti universali selezionerà automaticamente la versione principale, secondaria o patch successiva.
Per abilitare il controllo delle versioni per il pacchetto, aggiungere un versionOption input all'attività UniversalPackages. Le opzioni disponibili per la pubblicazione di una nuova versione sono: major, minor, patcho custom.
La selezione di custom consente di specificare manualmente la versione del pacchetto. Le altre opzioni ottengono la versione più recente del pacchetto dal feed e incrementano il segmento di versione selezionato di 1. Ad esempio, se si dispone di un pacchetto testPackage 1.0.0:
- Se si seleziona
major, la versione verrà aggiornata a testPackage 2.0.0. - Se si seleziona
minor, la versione verrà aggiornata alla versione 1.1.0. - Se si seleziona
patch, la versione verrà aggiornata alla versione 1.0.1.
Se si sceglie l'opzione custom, è necessario specificare anche un valore versionPublish come indicato di seguito:
- task: UniversalPackages@0
displayName: Publish
inputs:
command: publish
publishDirectory: '$(Build.ArtifactStagingDirectory)' ## Location of the files you wish to publish
vstsFeedPublish: '<PROJECT_NAME>/<FEED_NAME>' ## The project and feed name to publish to. If you're working with an organization-scoped feed, specify only the feed name
vstsFeedPackagePublish: '<PACKAGE_NAME>' ## The package name. Must be lower case. Use only letters, numbers, and dashes
versionOption: custom ## Select a versioning strategy. Options: `major`, `minor`, `patch`, `custom`
versionPublish: '<PACKAGE_VERSION>' ## The custom package version
packagePublishDescription: '<PACKAGE_DESCRIPTION>' ## Description of the package content
Scaricare un pacchetto universale
Accedere all'organizzazione di Azure DevOps e quindi passare al progetto.
Selezionare Pipeline e quindi selezionare la definizione della pipeline.
Selezionare Modifica e quindi aggiungere il frammento di codice seguente alla pipeline YAML.
steps: - task: UniversalPackages@0 displayName: Download inputs: command: download vstsFeed: '<PROJECT_NAME>/<FEED_NAME>' ## The Artifacts feed hosting the package to be downloaded vstsFeedPackage: '<PACKAGE_NAME>' ## Name of the package to be downloaded vstsPackageVersion: '<PACKAGE_VERSION>' ## Version of the package to be downloaded downloadDirectory: '$(Build.SourcesDirectory)\someFolder' ## The download folder. Default value: $(System.DefaultWorkingDirectory).
Per scaricare un pacchetto universale da un'origine esterna, è possibile usare l'esempio seguente:
steps:
- task: UniversalPackages@0
displayName: Download a Universal Package
inputs:
command: download
feedsToUse: external ## Set the value to `external` when downloading from an external source
externalFeedCredentials: 'MSENG2' ## Name of the service connection to the external feed
feedDownloadExternal: 'fabrikamFeedExternal' ## Name of the external feed
packageDownloadExternal: 'fabrikam-package' ## The package name you wish to download
versionDownloadExternal: 1.0.0 ## The version of the package you wish to download
Suggerimento
I caratteri jolly possono essere usati per scaricare la versione più recente di un pacchetto universale. Per altri dettagli, vedere Scaricare la versione più recente .