如何在 Azure devops 管道 yml 中解析 "unexpected value 'stages' azure pipelines"
How to resolve "unexpected value 'stages' azure pipelines" in Azure devops pipeline yml
我是 Azure devops 的新手。作为 poc 的一部分,我正在尝试构建一个基于 java 的 docker 图像。
所以我有以下管道 yaml 文件
# 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:
- master
pool:
vmImage: 'ubuntu-latest'
steps:
- task: Maven@3
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.8'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'package'
resources:
- repo: self
variables:
tag: '$(Build.BuildId)'
stages:
- stage: Build
displayName: Build image
jobs:
- job: Build
displayName: Build
pool:
vmImage: 'ubuntu-latest'
steps:
- task: Docker@2
displayName: Build an image
inputs:
command: build
dockerfile: '$(Build.SourcesDirectory)/Dockerfile'
tags: |
$(tag)
预计
如我所料,此管道需要创建一个 java 应用程序(jar 文件),然后它应该使用此 jar
创建一个 docker 图像
实际:
我低于错误
unexpected value 'stages' azure pipelines
我没看懂问题...
如果有人可以提供帮助,我们将不胜感激..?
谢谢
请在你的第一个任务之前把这个移到工作中- task: Docker@2
steps:
- task: Maven@3
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.8'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'package'
这只是语法问题。如果您使用步骤,则不能在根级别使用阶段。 Here 你可以检查语法。
如果你想单独创建 jar stage/job,你必须将其明确定义为另一个阶段或作业。但是,您需要以这种方式发布然后下载您的 jar pipeline artifact.
如果你只做一份工作,你可以使用:
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
variables:
tag: '$(Build.BuildId)'
steps:
- task: Maven@3
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.8'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'package'
- task: Docker@2
displayName: Build an image
inputs:
command: build
dockerfile: '$(Build.SourcesDirectory)/Dockerfile'
tags: |
$(tag)
我是 Azure devops 的新手。作为 poc 的一部分,我正在尝试构建一个基于 java 的 docker 图像。
所以我有以下管道 yaml 文件
# 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:
- master
pool:
vmImage: 'ubuntu-latest'
steps:
- task: Maven@3
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.8'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'package'
resources:
- repo: self
variables:
tag: '$(Build.BuildId)'
stages:
- stage: Build
displayName: Build image
jobs:
- job: Build
displayName: Build
pool:
vmImage: 'ubuntu-latest'
steps:
- task: Docker@2
displayName: Build an image
inputs:
command: build
dockerfile: '$(Build.SourcesDirectory)/Dockerfile'
tags: |
$(tag)
预计
如我所料,此管道需要创建一个 java 应用程序(jar 文件),然后它应该使用此 jar
创建一个 docker 图像实际:
我低于错误
unexpected value 'stages' azure pipelines
我没看懂问题...
如果有人可以提供帮助,我们将不胜感激..?
谢谢
请在你的第一个任务之前把这个移到工作中- task: Docker@2
steps:
- task: Maven@3
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.8'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'package'
这只是语法问题。如果您使用步骤,则不能在根级别使用阶段。 Here 你可以检查语法。
如果你想单独创建 jar stage/job,你必须将其明确定义为另一个阶段或作业。但是,您需要以这种方式发布然后下载您的 jar pipeline artifact.
如果你只做一份工作,你可以使用:
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
variables:
tag: '$(Build.BuildId)'
steps:
- task: Maven@3
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.8'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'package'
- task: Docker@2
displayName: Build an image
inputs:
command: build
dockerfile: '$(Build.SourcesDirectory)/Dockerfile'
tags: |
$(tag)