标签: azure-pipelines

尝试使用 azure-pipelines.yml 将管道池设置为默认代理池时出错

我按照通过Pipelines Schema Docs设置池的文档进行操作 ,并将其设置为这样pool: Default。这应该指示管道使用默认池:

dev-ops UI 中所有代理池下的默认代理池

但是,我不断收到此错误:

找不到名为“默认”的池。 该池不存在或尚未获得使用授权。 有关授权详细信息,请参阅 https://aka.ms/yamlauthz。

找不到名为“默认”的池。该池不存在或尚未获得使用授权。有关授权详细信息,请参阅https://aka.ms/yamlauthz

据我所知,它应该得到授权。

我也尝试过:

pool:
  name: Default
Run Code Online (Sandbox Code Playgroud)

完整的 azure-pipelines.yml

# ASP.NET Core (.NET Framework)
# Build and test ASP.NET Core projects targeting the full .NET Framework.
# Add steps that publish symbols, save build artifacts, and more:
# https://learn.microsoft.com/azure/devops/pipelines/languages/dotnet-core

name: $(BuildDefinitionName)_$(SourceBranchName)_$(Date:yyyyMMdd)$(Rev:.r)

trigger:
  batch: true
  branches:
    include:
    - master
    - develop

pool: Default

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@0

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)' …
Run Code Online (Sandbox Code Playgroud)

azure-devops azure-pipelines azure-devops-self-hosted-agent

10
推荐指数
3
解决办法
2万
查看次数

Azure DevOps Manage IIS 任务部署由于权限不足而失败,但帐户在本地管理员组中

使用托管 VS2017 代理成功构建后,我尝试使用本地托管代理部署本地托管代理,该代理是使用域帐户设置的,该帐户应具有足够的权限,因为它在本地管理组中。当我在别处挖掘这个问题时,一位用户使用重新安装了他们的代理NTATHORITY\SYSTEM并且它起作用了。

我真的不需要创建或停止\启动网站,只需部署最近的构建工件。
我应该检查哪些权限或应该使用其他任务?

在此处输入图片说明

019-04-06T21:03:10.3898646Z 错误(消息:配置错误 2019-04-06T21:03:10.3899503Z

2019-04-06T21:03:10.3899791Z 文件名:redirection.config 2019-04-06T21:03:10.3900026Z 2019-04-06T21:03:10.3900293Z 2019-04-04-03Z 行号:1000293Z 行号:0309:03 -04-06T21:03:10.3900852Z 说明:由于权限不足,无法读取配置文件 2019-04-06T21:03:10.3901076Z 2019-04-06T21:03:10.3901333Z。) 2019-04-06T21:03:10.8135484Z ##[错误]进程“appcmd.exe”以代码“5”退出。

iis azure-devops azure-pipelines

10
推荐指数
2
解决办法
3210
查看次数

Azure DevOps 中的 Azure 清除脚本

我们正在将Web应用程序部署到Azure CDN,但每次我们都需要等待相当长的时间才能更新应用程序。所以我们发现有一个“清除”按钮,这似乎有效。清除后我们必须等待大约 5 分钟。

现在我们希望每次发布应用程序时都运行它,因此我们使用以下脚本向 vsts 添加了一个任务:

az cdn endpoint purge --resource-group $1 --profile-name $3 --name $4 --content-paths /*
Run Code Online (Sandbox Code Playgroud)

带参数:$(ResourceGroup) $(StorageAccountName) $(ProfileName) $(EndpointName)

但这并不是每次都有效,似乎有时它可以工作,5 分钟后应用程序就会更新,但有时我们必须等待 30 分钟。

azure azure-cdn azure-web-app-service azure-devops azure-pipelines

10
推荐指数
1
解决办法
3444
查看次数

如何从 xUnit 测试写入 Azure Devops 任务日志?

我正在 Azure Devops 管道中运行一些测试,我看到构建代理上出现了一些我在本地无法获得的故障。我正在尝试一些低保真调试,想在任务日志中写一些喋喋不休,但我看不到如何。我试过Console.WriteLine()Debug.WriteLine()而且Trace.WriteLine()但我没有在日志中看到我的任何消息。

如何写入管道任务日志?

xunit azure-devops azure-pipelines

10
推荐指数
1
解决办法
1184
查看次数

根据提交消息跳过阶段

我正在尝试将 Azure DevOps 设置为 在消息不以给定文本开头时跳过多阶段管道上的一个阶段。

示例文档来看,我认为这只是

  - stage: t1
    condition: not(startsWith(variables['Build.SourceVersionMessage'], '[maven-release-plugin]'))
    jobs:
      - job: ReleasePrepare
        displayName: Prepare release
        pool:
          vmImage: 'ubuntu-16.04'
        steps:
          - script: |
              env | sort
Run Code Online (Sandbox Code Playgroud)

然而,无论如何,这都会被执行。t1这是我希望任务不会根据提交消息运行的示例https://dev.azure.com/trajano/experiments/_build/results?buildId=110&view=results

的输出env表明消息已正确传入

在此输入图像描述

以防万一这是一个错误,我也在这里报告了https://developercommunity.visualstudio.com/content/problem/697290/startswith-buildsourceversionmessage-variable-not.html

azure-devops azure-pipelines multistage-pipeline

10
推荐指数
1
解决办法
3217
查看次数

实体框架迁移 Azure DevOps 发布管道

我正在尝试在 Azure DevOps Release Pipeline 上运行迁移。因为我想在每个版本上自动运行我的数据库脚本。我的发布管道没有源代码,我只是编译了 DLL。

当我在本地机器上执行此命令时,它运行成功。如何转换此命令以便我可以将它与 DLL 一起使用。

dotnet ef database update --project MyEntityFrameworkProject --context MyDbContext --startup-project MyStartupProject

entity-framework azure-devops azure-pipelines azure-pipelines-release-pipeline entity-framework-migrations

10
推荐指数
2
解决办法
9307
查看次数

“下载管道工件”与“下载构建工件”

“下载管道工件”和“下载构建工件”之间有什么区别?应该使用哪一种,什么时候使用?

azure-devops azure-pipelines

10
推荐指数
1
解决办法
3678
查看次数

我们可以在发布管道 - Azure devOps 中发布工件吗?

我有一个 java 应用程序,正在尝试使用 Azure DevOps 来构建和部署。能够在构建管道中进行构建并发布工件。在发布管道中,我在每个阶段进行阶段(开发/训练/产品),我有一个 Maven 任务来对特定于我能够执行的环境的构建进行去标记,但我想将其发布为类似于中的工件建立管道。是否有任何任务可以做到这一点或任何其他替代方法?

continuous-integration azure azure-devops azure-pipelines

10
推荐指数
2
解决办法
1万
查看次数

在 Azure DevOps 管道中包含本地 dll

在我的 C# 项目中,我引用了我公司的一个 DLL,该 DLL 不在 NuGet 上(因为它不是公开的),而我在 Azure DevOps 中的管道不断失败,因为它表示找不到引用。

Error CS0234: The type or namespace name 'YYY' does not exist in the namespace 'ZZZ' (are you missing an assembly reference?)
Run Code Online (Sandbox Code Playgroud)

按照这篇文章的建议,我在解决方案中复制了该 dll,并从那里引用它,因此该 dll 受到版本控制并存在于存储库中。这是 csproj 的摘录:

<Reference Include="ZZZ.YYY, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..\PrivateReferences\ZZZ.YYY.dll</HintPath>
  <Private>False</Private>
</Reference>
Run Code Online (Sandbox Code Playgroud)

该解决方案在我的机器上完美构建,但在 Azure 上却一直失败。我缺少什么?

谢谢!

在 Bright Ran-MSFT 回复后进行编辑
以下是我的 yaml 中的摘录:

trigger:
- develop

pool: 'Default'

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Debug'

steps:

- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs: …
Run Code Online (Sandbox Code Playgroud)

c# azure-devops azure-pipelines

10
推荐指数
1
解决办法
7234
查看次数

在服务器上安装多个 Azure DevOps 环境代理

我们有一个开发服务器托管来自多个 Azure DevOps 项目的 Web 服务。为了使用 yaml 部署管道,我们从部署池迁移到环境/资源。与部署池不同,项目之间不能共享环境和资源您可以在这里投票来改变这一点。

我们按如下方式解决这个问题。

  1. 为每个项目创建一个环境。
  2. 对于每个环境,将开发服务器添加为资源。
  3. 在服务器上为每个项目安装一个环境代理。

不幸的是,如果服务器上已经安装了环境代理,这会产生命名冲突。

The service already exists: vstsagent.MyDevOpsAccount..MyServer, it will be replaced
Error: Operation CreateService failed with return code 1072
Run Code Online (Sandbox Code Playgroud)

azure-devops azure-pipelines azure-pipelines-release-pipeline azure-pipelines-yaml

10
推荐指数
1
解决办法
2622
查看次数