Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Uwaga
Zalecamy używanie funkcji Download Pipeline Artifacts i Publish Pipeline Artifacts w celu uzyskania szybszej wydajności.
Usługa Azure Artifacts umożliwia zespołom zarządzanie zależnościami przy użyciu kanałów informacyjnych i źródeł nadrzędnych. Usługa Azure Pipelines umożliwia publikowanie i pobieranie różnych typów artefaktów w ramach przepływu pracy ciągłej integracji/ciągłego wdrażania.
Publikowanie artefaktów
Artefakty można publikować na dowolnym etapie potoku. Aby opublikować pakiety, możesz użyć języka YAML lub klasycznego edytora usługi Azure DevOps.
- powershell: gci env:* | sort-object name | Format-Table -AutoSize | Out-File $env:BUILD_ARTIFACTSTAGINGDIRECTORY/environment-variables.txt
- task: CopyFiles@2
inputs:
sourceFolder: '$(Build.SourcesDirectory)'
contents: '**/$(BuildConfiguration)/**/?(*.exe|*.dll|*.pdb)'
targetFolder: '$(Build.ArtifactStagingDirectory)'
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: '$(Build.ArtifactStagingDirectory)'
artifactName: drop
- pathToPublish: ścieżka artefaktu. Może to być ścieżka bezwzględna lub względna. Symbole wieloznaczne nie są obsługiwane.
- artifactName: nazwa artefaktu.
Uwaga
Upewnij się, że podczas publikowania artefaktu nie używasz jednej z nazw zarezerwowanych folderów. Aby uzyskać więcej informacji, zobacz Foldery aplikacji.
Przykład: używanie wielu zadań
- powershell: gci env:* | sort-object name | Format-Table -AutoSize | Out-File $env:BUILD_ARTIFACTSTAGINGDIRECTORY/environment-variables.txt
- task: CopyFiles@2
inputs:
sourceFolder: '$(Build.SourcesDirectory)'
contents: '**/$(BuildConfiguration)/**/?(*.exe|*.dll|*.pdb)'
targetFolder: '$(Build.ArtifactStagingDirectory)'
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: '$(Build.ArtifactStagingDirectory)'
artifactName: drop1
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: '$(Build.ArtifactStagingDirectory)'
artifactName: drop2
- pathToPublish: ścieżka artefaktu. Może to być ścieżka bezwzględna lub względna. Symbole wieloznaczne nie są obsługiwane.
- artifactName: nazwa artefaktu.
Przykład: kopiowanie i publikowanie plików binarnych
- powershell: gci env:* | sort-object name | Format-Table -AutoSize | Out-File $env:BUILD_ARTIFACTSTAGINGDIRECTORY/environment-variables.txt
- task: CopyFiles@2
inputs:
sourceFolder: '$(Build.SourcesDirectory)'
contents: '**/$(BuildConfiguration)/**/?(*.exe|*.dll|*.pdb)'
targetFolder: '$(Build.ArtifactStagingDirectory)'
- task: PublishBuildArtifacts@1
inputs:
pathToPublish: '$(Build.ArtifactStagingDirectory)'
artifactName: drop
- sourceFolder: folder zawierający pliki, które chcesz skopiować. Jeśli pozostawisz to puste, kopiowanie zostanie wykonane z pliku $(Build.SourcesDirectory).
- zawartość: ścieżki do pliku do uwzględnienia w ramach kopii.
- targetFolder: folder docelowy.
- pathToPublish: ścieżka folderu lub pliku do opublikowania. Może to być ścieżka bezwzględna lub względna. Symbole wieloznaczne nie są obsługiwane.
- artifactName: nazwa artefaktu, który chcesz utworzyć.
Uwaga
Pamiętaj, aby nie używać nazwy zarezerwowanej dla artifactName , takiej jak Bin lub App_Data. Aby uzyskać więcej informacji, zobacz ASP.NET Web Project Folder Structure (Struktura folderów projektu sieci Web).
Uwaga
Build.ArtifactStagingDirectory ścieżka jest czyszczona po każdej kompilacji. Jeśli używasz tej ścieżki do publikowania artefaktu, przed krokiem publikowania skopiuj zawartość, którą chcesz opublikować w tym katalogu.
Pobieranie artefaktów
- powershell: gci env:* | sort-object name | Format-Table -AutoSize | Out-File $env:BUILD_ARTIFACTSTAGINGDIRECTORY/environment-variables.txt
- task: DownloadBuildArtifacts@1
inputs:
buildType: 'current' # Options: 'current' | 'specific'. Specify which build artifacts will be downloaded: `current` or from a specific build
downloadType: 'single' # Options: 'single' | 'specific'. Choose whether to download a single artifact or all artifacts of a specific build.
artifactName: 'drop' # Required when downloadType == single. The name of the artifact that will be downloaded.
downloadPath: '$(System.ArtifactsDirectory)' # Path on the agent machine where the artifacts will be downloaded. Default: $(System.ArtifactsDirectory).
Uwaga
Jeśli używasz zadania wdrażania, możesz odwołać się do artefaktów kompilacji przy użyciu elementu $(Agent.BuildDirectory). Aby uzyskać więcej informacji, zobacz Zmienne agenta .
Po zakończeniu przebiegu potoku przejdź do pozycji Podsumowanie , aby eksplorować lub pobrać artefakt.
Pobieranie określonego artefaktu
steps:
- task: DownloadBuildArtifacts@1
displayName: 'Download Build Artifacts'
inputs:
buildType: specific # Options: 'current' | 'specific'. Specify which build artifacts will be downloaded: `current` or from a specific build
project: 'xxxxxxxxxx-xxxx-xxxx-xxxxxxxxxxx' # Required when buildType == specific. Project ID.
pipeline: 20 # Required when buildType == specific. Build pipeline.
buildVersionToDownload: specific # Options: 'latest' | 'latestFromBranch' | 'specific'. Required when buildType == specific. Build version to download.
buildId: 128 # Required when buildType == specific && buildVersionToDownload == specific. Build ID.
artifactName: drop # The name of the artifact that will be downloaded.
extractTars: false # boolean. Extract all files that are stored inside tar archives.
Wskazówki
Wyłącz uwierzytelnianie podstawowe usług IIS, jeśli używasz usługi Azure DevOps Server, aby zezwolić na uwierzytelnianie przy użyciu osobistego tokenu dostępu. Aby uzyskać więcej informacji, zobacz Dlaczego mój pat przestał działać?.
Użyj ukośników w argumentach ścieżki pliku. Ukośniki odwrotne nie działają w agentach systemu macOS/Linux.
Artefakty kompilacji są przechowywane w systemie plików systemu Windows, co powoduje utratę wszystkich uprawnień systemu UNIX, w tym bit wykonywania. Po pobraniu artefaktów z usługi Azure Pipelines może być konieczne przywrócenie odpowiednich uprawnień systemu UNIX.
Build.ArtifactStagingDirectoryiBuild.StagingDirectorysą zamienne.Build.ArtifactStagingDirectoryścieżka jest czyszczona po każdej kompilacji.Usunięcie kompilacji skojarzonej z pakietami opublikowanymi w udziale plików spowoduje usunięcie wszystkich artefaktów w tej ścieżce UNC.
Jeśli publikujesz pakiety w udziale plików, upewnij się, że masz dostęp do agenta kompilacji.
Upewnij się, że zezwalasz na adresy URL i adresy IP domeny usługi Azure Artifacts, jeśli twoja organizacja korzysta z zapory.
Narzędzie: kopiowanie plików
Narzędzie: Publikowanie artefaktów kompilacji
Narzędzie: pobieranie artefaktów kompilacji