두 개의 작업 ( job: Publish
및 deployment: Deploy
) 이있는 Azure Pipelines 단계가 있습니다.
때때로 작업 deployment: Deploy
이 job: Publish
완료 되기 전에 실행되기 시작합니다 .
오류가 발생하고 job: Publish
완료하고 다시 실행할 때까지 기다려야합니다 deployment: Deploy
.
다시 실행하면 deployment: Deploy
모든 것이 잘됩니다 ...
질문 종료 전에 시작 하는
이유는 무엇 입니까?deployment: Deploy
job: Publish
해당 단계에 대한 YML 코드는 다음과 같습니다.
- stage: Production
dependsOn: Staging
jobs:
- job: Publish
pool:
vmImage: 'Ubuntu 16.04'
steps:
- task: UseDotNet@2
displayName: Setup
inputs:
packageType: sdk
version: 3.0.x
- task: DotNetCoreCLI@2
displayName: Publish
inputs:
command: publish
publishWebProjects: false
projects: 'src/**/*.csproj'
arguments: '--configuration production --output $(Build.ArtifactStagingDirectory)'
zipAfterPublish: true
- task: PublishPipelineArtifact@0
displayName: Export
inputs:
artifactName: Production
targetPath: '$(Build.ArtifactStagingDirectory)'
- deployment: Deploy
pool:
vmImage: Ubuntu-16.04
environment: production
strategy:
runOnce:
deploy:
steps:
- task: DownloadPipelineArtifact@1
displayName: Import
inputs:
artifactName: Production
- task: AzureRmWebAppDeployment@3
displayName: Api
inputs:
package: '$(Build.ArtifactStagingDirectory)/Api.zip'
removeAdditionalFilesFlag: true
azureSubscription: '$(azure.subscription)'
appType: 'Web App on Linux'
webAppName: 'app-api'
사용중인 구문에 작업 종속성이 포함되지 않은 경우 현재는 병렬로 빌드 되는 구문입니다 (종속성 없음) .
종속성을 지정하지 않고 실제 조직 상황이 병렬 처리를 허용하는 경우 이러한 작업은 병렬로 실행됩니다.
그러나 조직 자체가 병렬 조건을 충족하지 않으면 사용자는 작업 순서 (종속성)도 지정하지 않습니다. 이제 서버는 작업을 무작위로 실행합니다 . 종속성 관계가없는 작업은 서버에 대해 두 개의 개별 작업이기 때문입니다.
참고 : 이는 YAML 스키마에서만 발생하며 클래식 편집기에는 기본 실행 순서가 있습니다.
문제를 해결하려면 작업을 추가 dependsOn: Publish
하십시오 deployment: Deploy
.
- deployment: Deploy
dependsOn: Publish
pool:
vmImage: Ubuntu-16.04
environment: production
이제는 완료된 deployment: Deploy
후에 만 실행됩니다 job: Publish
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다