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.
Usare questa attività per scaricare o creare pacchetti e pubblicare pacchetti universali.
Sintassi
# Universal packages v0
# Download or publish Universal Packages.
- task: UniversalPackages@0
inputs:
command: 'download' # 'download' | 'publish'. Required. Command. Default: download.
downloadDirectory: '$(System.DefaultWorkingDirectory)' # string. Required when command = download. Destination directory. Default: $(System.DefaultWorkingDirectory).
#publishDirectory: '$(Build.ArtifactStagingDirectory)' # string. Required when command = publish. Path to file(s) to publish. Default: $(Build.ArtifactStagingDirectory).
# Feed & package details
feedsToUse: 'internal' # 'internal' | 'external'. Alias: internalOrExternalDownload. Required when command = download. Feed location. Default: internal.
#externalFeedCredentials: # string. Alias: externalEndpoint. Optional. Use when internalOrExternalDownload = external && command = download. organization/collection connection.
#vstsFeed: # string. Alias: feedListDownload. Required when internalOrExternalDownload = internal && command = download. Feed.
#vstsFeedPackage: # string. Alias: packageListDownload. Required when internalOrExternalDownload = internal && command = download. Package name.
#vstsPackageVersion: # string. Alias: versionListDownload. Required when internalOrExternalDownload = internal && command = download. Version.
#feedDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Feed (or Project/Feed if the feed was created in a project).
#packageDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Package name.
#versionDownloadExternal: # string. Required when internalOrExternalDownload = external && command = download. Version.
# Feed & package details
#feedsToUsePublish: 'internal' # 'internal' | 'external'. Alias: internalOrExternalPublish. Required when command = publish. Feed location. Default: internal.
#publishFeedCredentials: # string. Alias: externalEndpoints. Required when internalOrExternalPublish = external && command = publish. organization/collection connection.
#vstsFeedPublish: # string. Alias: feedListPublish. Required when internalOrExternalPublish = internal && command = publish. Destination Feed.
#vstsFeedPackagePublish: # string. Alias: packageListPublish. Required when internalOrExternalPublish = internal && command = publish. Package name.
#feedPublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Feed (or Project/Feed if the feed was created in a project).
#packagePublishExternal: # string. Required when internalOrExternalPublish = external && command = publish. Package name.
#versionOption: 'patch' # 'major' | 'minor' | 'patch' | 'custom'. Alias: versionPublishSelector. Required when command = publish. Version. Default: patch.
#versionPublish: # string. Required when versionPublishSelector = custom && command = publish. Custom version.
#packagePublishDescription: # string. Optional. Use when command = publish. Description.
# Advanced
#publishPackageMetadata: true # boolean. Optional. Use when command = publish && internalOrExternalPublish = internal. Publish pipeline metadata. Default: true.
#verbosity: 'None' # 'None' | 'Trace' | 'Debug' | 'Information' | 'Warning' | 'Error' | 'Critical'. Verbosity. Default: None.
# Output
#publishedPackageVar: # string. Optional. Use when command = publish. Package Output Variable.
Ingressi dati
command
-
comando
string
. Obbligatorio. Valori consentiti: download
, publish
. Valore predefinito: download
Specifica il comando Universal Package da eseguire.
downloadDirectory
-
directory di destinazione
string
. Obbligatorio quando command = download
. Valore predefinito: $(System.DefaultWorkingDirectory)
Specifica il percorso della cartella in cui l'attività scarica il contenuto del pacchetto.
feedsToUse
-
percorso feed
Alias di input: internalOrExternalDownload
.
string
. Obbligatorio quando command = download
. Valori consentiti: internal
(organizzazione/raccolta), external
(un'altra organizzazione/raccolta). Valore predefinito: internal
Specifica un feed da questa raccolta o un'altra raccolta in Azure Artifacts.
externalFeedCredentials
-
di connessione all'organizzazione o alla raccolta
Alias di input: externalEndpoint
.
string
. Opzionale. Usare quando internalOrExternalDownload = external && command = download
.
Specifica le credenziali da usare per i registri esterni che si trovano nel NuGet.config
selezionato. Per i feed in questa organizzazione o raccolta, lasciare vuoto questo campo; le credenziali della compilazione vengono usate automaticamente.
vstsFeed
-
feed
Alias di input: feedListDownload
.
string
. Obbligatorio quando internalOrExternalDownload = internal && command = download
.
Include il feed selezionato. Per selezionare un feed, è necessario che Azure Artifacts sia installato e concesso in licenza. Specifica il feedName per un feed con ambito organizzazione e projectName/FeedName o ProjectID/FeedID per un feed con ambito progetto.
vstsFeedPackage
-
nome pacchetto
Alias di input: packageListDownload
.
string
. Obbligatorio quando internalOrExternalDownload = internal && command = download
.
Specifica il nome del pacchetto da scaricare per l'attività.
vstsPackageVersion
-
versione
Alias di input: versionListDownload
.
string
. Obbligatorio quando internalOrExternalDownload = internal && command = download
.
Specifica la versione del pacchetto o usa una variabile contenente la versione da scaricare. Questa voce può anche essere un'espressione con caratteri jolly, ad esempio *
, per ottenere la versione più recente. Esempi: 1.*
ottiene la versione più alta con la versione principale 1 e 1.2.*
ottiene la versione patch più alta con la versione principale 1 e secondaria 2.
feedDownloadExternal
-
feed (o Progetto/Feed se il feed è stato creato in un progetto)
string
. Obbligatorio quando internalOrExternalDownload = external && command = download
.
Specifica un feed in un'altra organizzazione/raccolta.
Per i feed con ambito progetto, il valore deve essere Project/Feed
, dove Project
è il nome o l'ID del progetto e Feed
è il nome/ID del feed. Per i feed con ambito organizzazione, il valore deve essere solo il nome del feed.
packageDownloadExternal
-
nome pacchetto
string
. Obbligatorio quando internalOrExternalDownload = external && command = download
.
Specifica il nome del pacchetto da scaricare.
versionDownloadExternal
-
versione
string
. Obbligatorio quando internalOrExternalDownload = external && command = download
.
Specifica la versione del pacchetto o usa una variabile contenente la versione da scaricare. Questa voce può anche essere un'espressione con caratteri jolly, ad esempio *
, per ottenere la versione più recente. Esempi: 1.*
ottiene la versione più alta con la versione principale 1 e 1.2.*
ottiene la versione patch più alta con la versione principale 1 e secondaria 2. I modelli con caratteri jolly non sono supportati con pacchetti non definitive.
publishDirectory
-
percorso dei file da pubblicare
string
. Obbligatorio quando command = publish
. Valore predefinito: $(Build.ArtifactStagingDirectory)
Specifica il percorso dell'elenco di file da pubblicare.
feedsToUsePublish
-
percorso feed
Alias di input: internalOrExternalPublish
.
string
. Obbligatorio quando command = publish
. Valori consentiti: internal
(organizzazione/raccolta), external
(un'altra organizzazione/raccolta). Valore predefinito: internal
Specifica un feed da questa raccolta o un'altra raccolta in Azure Artifacts.
publishFeedCredentials
-
di connessione all'organizzazione o alla raccolta
Alias di input: externalEndpoints
.
string
. Obbligatorio quando internalOrExternalPublish = external && command = publish
.
Specifica le credenziali da utilizzare per i feed esterni.
feed di destinazione vstsFeedPublish
-
Alias di input: feedListPublish
.
string
. Obbligatorio quando internalOrExternalPublish = internal && command = publish
.
Specifica il progetto e il nome/GUID del feed in cui eseguire la pubblicazione.
publishPackageMetadata
-
Pubblicare i metadati della pipeline
boolean
. Opzionale. Usare quando command = publish && internalOrExternalPublish = internal
. Valore predefinito: true
Associa i metadati di questa pipeline di compilazione/versione (ad esempio, eseguire # e informazioni sul codice sorgente) al pacchetto.
vstsFeedPackagePublish
-
nome pacchetto
Alias di input: packageListPublish
.
string
. Obbligatorio quando internalOrExternalPublish = internal && command = publish
.
Specifica un ID pacchetto da pubblicare o creare un nuovo ID pacchetto se non è mai stata pubblicata una versione di questo pacchetto in precedenza. I nomi dei pacchetti devono essere minuscoli e possono usare solo lettere, numeri e trattini (-
).
feedPublishExternal
-
feed (o Progetto/Feed se il feed è stato creato in un progetto)
string
. Obbligatorio quando internalOrExternalPublish = external && command = publish
.
Specifica il nome del feed esterno in cui eseguire la pubblicazione.
Se il feed è stato creato in un progetto, il valore deve essere Project/Feed
, dove Project
è il nome o l'ID del progetto e Feed
è il nome del feed. Se il feed non è stato creato in un progetto, il valore deve essere solo il nome del feed.
packagePublishExternal
-
nome pacchetto
string
. Obbligatorio quando internalOrExternalPublish = external && command = publish
.
Specifica il nome del pacchetto durante la pubblicazione in un feed esterno.
versionOption
-
versione
Alias di input: versionPublishSelector
.
string
. Obbligatorio quando command = publish
. Valori consentiti: major
(principale successivo), minor
(secondaria successiva), patch
(patch successiva), custom
. Valore predefinito: patch
Specifica una strategia di incremento della versione. Valore custom
per immettere manualmente la versione del pacchetto. Per i nuovi pacchetti, la prima versione sarà 1.0.0 se si specifica major
, 0.1.0 se si specifica minor
o 0.0.1 se si specifica patch
. Per altre informazioni, vedere la specifica di controllo delle versioni semantiche.
versionPublish
-
versione personalizzata
string
. Obbligatorio quando versionPublishSelector = custom && command = publish
.
Specifica uno schema di versione personalizzato per il pacchetto.
packagePublishDescription
-
Descrizione
string
. Opzionale. Usare quando command = publish
.
Specifica la descrizione del contenuto del pacchetto e/o le modifiche apportate in questa versione del pacchetto.
verbosity
-
dettagliato
string
. Valori consentiti: None
, Trace
, Debug
, Information
, Warning
, Error
, Critical
. Valore predefinito: None
Specifica la quantità di dettagli visualizzati nell'output.
publishedPackageVar
-
variabile di output del pacchetto
string
. Opzionale. Usare quando command = publish
.
Specifica un nome per la variabile che conterrà il nome e la versione del pacchetto pubblicati.
Opzioni di controllo delle attività
Tutte le attività dispongono di opzioni di controllo oltre ai relativi input attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.
Variabili di output
Nessuno.
Osservazioni:
Usare questa attività per scaricare o creare pacchetti e pubblicare pacchetti universali.
La pipeline deve accedere a un feed in un progetto diverso
Se la pipeline è in esecuzione in un progetto diverso da quello che ospita il feed, è necessario configurare l'altro progetto per concedere l'accesso in lettura/scrittura al servizio di compilazione. Per altri dettagli, vedere autorizzazioni del pacchetto in Azure Pipelines.
Esempi
Il modo più semplice per iniziare a usare l'attività Pacchetto universale consiste nell'usare l'editor attività Pipelines per generare il file YAML. È quindi possibile copiare il codice generato nel file di azure-pipelines.yml
del progetto. In questo esempio viene illustrato come generare rapidamente yaml usando una pipeline che compila un'app Web progressiva GatsbyJS (PWA).
I pacchetti universali sono un modo utile per incapsulare e versione di un'app Web. La creazione di un pacchetto Web in un pacchetto universale consente di eseguire rapidamente il rollback a una versione specifica del sito ed elimina la necessità di compilare il sito nella pipeline di distribuzione.
Questa pipeline di esempio illustra come recuperare uno strumento da un feed all'interno del progetto. L'attività Pacchetto universale viene usata per scaricare lo strumento, eseguire una compilazione e usa di nuovo l'attività Pacchetto universale per pubblicare l'intero PWA compilato di GatsbyJS in un feed come pacchetto universale con versione.
Scaricare un pacchetto con l'attività Pacchetto universale
La seconda attività nel progetto di esempio usa l'attività Pacchetto universale per recuperare uno strumento, imagemagick, da un feed che si trova all'interno di un progetto diverso nella stessa organizzazione. Lo strumento imagemagick è richiesto dal passaggio di compilazione successivo per ridimensionare le immagini.
Aggiungere l'attività Pacchetto universale facendo clic sull'icona con il segno più, digitando "universale" nella casella di ricerca e facendo clic sul pulsante Aggiungi per aggiungere l'attività alla pipeline.
Fare clic sull'attività pacchetto universale appena aggiunta e sull'comando per
Download
.Scegliere la directory di destinazione da usare per il download dello strumento.
Selezionare un feed di origine che contiene lo strumento, impostare il nome del pacchetto e scegliere Versione dello strumento imagemagick dall'feed di origine.
Dopo aver completato i campi, fare clic su View YAML (Visualizza YAML) per visualizzare il file YAML generato.
Il generatore di attività pacchetto universale genera YAML semplificato che contiene valori non predefiniti. Copiare il file YAML generato nel file
azure-pipelines.yml
nella radice del repository Git del progetto.# Download Universal Package steps: - task: UniversalPackages@0 displayName: 'Universal download' inputs: downloadDirectory: Application vstsFeed: '00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000001' vstsFeedPackage: imagemagick vstsPackageVersion: 1.0.0
Pubblicare un pacchetto con l'attività Pacchetto universale
L'ultimo passaggio di questa pipeline di esempio usa l'attività Pacchetto universale per caricare il pwa pronto per la produzione prodotto dal passaggio Run gatsby build
in un feed come pacchetto universale con versione. Una volta in un feed, si dispone di una copia permanente del sito completo che può essere distribuito al provider di hosting e avviato con gatsby serve
.
Aggiungere un'altra attività Pacchetto universale alla fine della pipeline facendo clic sull'icona con il segno più, digitando "universale" nella casella di ricerca e facendo clic sul pulsante aggiungi per aggiungere l'attività alla pipeline. Questa attività raccoglie tutti gli asset pronti per la produzione prodotti dal passaggio
Run gatsby build
, produce un pacchetto universale con versione e pubblica il pacchetto in un feed.Impostare il comando su
Publish
.Impostare Percorso su file per pubblicare nella directory contenente il
package.json
del progetto GatsbyJS.Scegliere un feed di destinazione, un nome del pacchetto e impostare la strategia di controllo delle versioni.
Dopo aver completato i campi obbligatori, fare clic su Visualizza YAML.
Copiare il file YAML risultante nel file
azure-pipelines.yml
come in precedenza. Il file YAML per questo progetto di esempio viene visualizzato di seguito.# Publish Universal Package steps: - task: UniversalPackages@0 displayName: 'Universal publish' inputs: command: publish publishDirectory: Application vstsFeedPublish: '00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000002' # You can also use '<projectName>/<feedName>' instead of the GUIDs vstsFeedPackagePublish: mygatsbysite packagePublishDescription: 'A test package'
In questo esempio è stato illustrato come usare il generatore di attività Pipelines per generare rapidamente il file YAML per l'attività Pacchetto universale, che può quindi essere inserito nel file azure-pipelines.yml
. Il generatore di attività pacchetto universale supporta tutte le configurazioni avanzate che è possibile creare con gli argomenti dell'attività pacchetto universale.
Nota
La pubblicazione di un pacchetto direttamente in una visualizzazione non è supportata in Azure Artifacts. È prima necessario pubblicare il pacchetto nel feed, quindi alzarlo di livello a una visualizzazione.
Requisiti
Requisito | Descrizione |
---|---|
Tipi di pipeline | YAML, build classica, versione classica |
Viene eseguito in | Agente, DeploymentGroup |
richieste | Nessuno |
funzionalità di | Questa attività non soddisfa alcuna richiesta di attività successive nel processo. |
restrizioni dei comandi | Qualunque |
variabili impostabili | Qualunque |
Versione dell'agente | 2.144.0 o versione successiva |
Categoria attività | Pacchetto |
Requisito | Descrizione |
---|---|
Tipi di pipeline | YAML, build classica, versione classica |
Viene eseguito in | Agente, DeploymentGroup |
richieste | Nessuno |
funzionalità di | Questa attività non soddisfa alcuna richiesta di attività successive nel processo. |
restrizioni dei comandi | Qualunque |
variabili impostabili | Qualunque |
Versione dell'agente | 2.115.0 o versione successiva |
Categoria attività | Pacchetto |