簡體   English   中英

Azure DevOps Maven 構建管道 - 將構建 ID 添加到清單文件

[英]Azure DevOps Maven Build PIpeline - Add build id to the Manifest File

有沒有辦法將構建 ID 添加到 EAR 的清單文件中? 我已經嘗試添加變量,並且我“認為”我已經添加了 Maven 選項,我通常會在命令行中設置這些選項以在我的 POM 中設置變量。 但是似乎沒有任何效果。

# Maven
# Build your Java project and run tests with Apache Maven.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/java

trigger:
- main
- dev
- qa

pool:
  vmImage: ubuntu-latest

variables:
  IsMasterBranch: $[ eq(variables['Build.SourceBranch'], 'refs/heads/main') ]
  IsDevBranch: $[ eq(variables['Build.SourceBranch'], 'refs/heads/dev') ]
  IsQABranch: $[ eq(variables['Build.SourceBranch'], 'refs/heads/qa') ]
  BUILD_NUMBER: $(Build.BuildNumber)

steps:
- powershell: >
    if('$(IsMasterBranch)' -eq 'True') {
      Write-Host "##vso[task.setvariable variable=BuildTag;isOutput=true]$(Build.BuildId)-prod"
      Write-Host "##vso[task.setvariable variable=branch;isOutput=true]prod"
      Write-Host "##vso[task.setvariable variable=FullBuildTag;isOutput=true]$(Build.Repository.Name):$(Build.BuildId)-prod"      
    }
     elseif('$(IsDevBranch)' -eq 'True') {
      Write-Host "##vso[task.setvariable variable=BuildTag;isOutput=true]$(Build.BuildId)-dev"
      Write-Host "##vso[task.setvariable variable=branch;isOutput=true]dev"
      Write-Host "##vso[task.setvariable variable=FullBuildTag;isOutput=true]$(Build.Repository.Name):$(Build.BuildId)-dev"
    }
    elseif('$(IsQABranch)' -eq 'True') {
      Write-Host "##vso[task.setvariable variable=BuildTag;isOutput=true]$(Build.BuildId)-qa"
      Write-Host "##vso[task.setvariable variable=branch;isOutput=true]qa"
      Write-Host "##vso[task.setvariable variable=FullBuildTag;isOutput=true]$(Build.Repository.Name):$(Build.BuildId)-qa"
    }




- task: Maven@3
  inputs:
    mavenPomFile: 'pom.xml'
    mavenOptions: '-Xmx3072m'
    options: '-Ddevelopment_environment=$(branch) -Dbuildnumber=434'
    javaHomeOption: 'JDKVersion'
    jdkVersionOption: '1.8'
    jdkArchitectureOption: 'x64'
    publishJUnitResults: true
    testResultsFiles: '**/surefire-reports/TEST-*.xml'
    goals: 'package'

- task: PublishBuildArtifacts@1
  inputs:
    PathtoPublish: '$(Build.SourcesDirectory)/test-hello-world-app-ear/target'
    ArtifactName: 'target'
    publishLocation: 'Container'

Build.BuildId是一個預定義變量,它是已完成構建的記錄 ID 同樣, Build.BuildNumber是已完成構建的名稱,也稱為運行編號。 您可以指定此值中包含的內容。 此變量的典型用途是使其成為您在存儲庫選項卡上指定的 label 格式的一部分。

我檢查了幾個 Microsoft 文檔和博客,但沒有找到將構建 ID 添加到 EAR 清單文件的任何特定方法。 我發現的唯一方法是僅添加變量。 如果您使用 YAML 或經典構建管道,請參閱預定義變量以獲取系統變量的完整列表

閱讀此了解變量語法以了解引用變量的三種不同方式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM