我们在内部使用TFS 2015.TFS 2015自定义构建任务存储在哪里?或者我如何下载现有的构建任务?
我知道你可以从github下载构建任务.但这不是我要找的.
我正在尝试使用 VSTS 和 docker-compose 配置持续交付,我想将其推送到 Azure 容器注册表。这是我在 VSTS 上的构建定义:

我收到关于构建结果的错误消息:
No such command: docker_compose
Commands:
build Build or rebuild services
bundle Generate a Docker bundle from the Compose file
config Validate and view the Compose file
create Create services
down Stop and remove containers, networks, images, and volumes
events Receive real time events from containers
exec Execute a command in a running container
help Get help on a command
Run Code Online (Sandbox Code Playgroud)
你知道我该怎么处理吗?
更新:这是我的 docker-compose
version: '3'
services:
ci-build:
image: microsoft/aspnetcore-build:1.0-1.1
volumes:
- …Run Code Online (Sandbox Code Playgroud) docker docker-compose azure-devops azure-pipelines-build-task azure-container-registry
是否可以在VSTS中为Build重命名或自定义名称?
我要做的是用版本号命名我的版本。版本号写在.version根目录下的文件中。
预期名称为: $(MyVersionNumber):$(Rev:rr)
powershell azure-devops azure-pipelines-build-task azure-pipelines
我在 VSTS 中有一个构建,如下所示:
您可以从屏幕截图中看到“测试并生成代码覆盖率”的测试步骤。它使用这个命令:
/p:CollectCoverage=true /p:CoverletOutputFormat=cobertura /p:CoverletOutput=$(Build.SourcesDirectory)\TestResults\Coverage\coverage
这允许生成代码覆盖率报告。我已经使用我定义的特征(例如集成或单元)将“类别”添加到我的 xUnit 测试中,以允许我在构建/发布期间过滤测试。示例是:
using System;
using System.Collections.Generic;
using System.Linq;
using Xunit.Abstractions;
using Xunit.Sdk;
/// <summary>
/// Decorates a test as a Unit Test, so that it runs in Continuous Integration builds.
/// </summary>
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public sealed class IsUnitAttribute : AICategoryAttribute
{
/// <summary>
/// Initializes a new instance of <see cref="IsUnitAttribute"/>
/// </summary>
public IsUnitAttribute() : base("Unit") { }
}
/// <summary>
/// Decorates a test as an Integration Test, so …Run Code Online (Sandbox Code Playgroud) testing code-coverage xunit.net reportgenerator azure-pipelines-build-task
在 pipelines.yml 文件中,使用了以下内容:
steps:
# Print buildId
- script: |
echo "BuildId = $(buildId)"
Run Code Online (Sandbox Code Playgroud)
在 Azure DevOps 中查看构建日志时,我只看到“CmdLine”。
有没有办法给步骤或脚本一个在构建日志中可见的可读名称?
在VSTS中,我有一个GIT存储库和一个包含5个任务的构建定义。我已经在master分支上添加了一个分支策略,其中,当创建拉取请求作为签入策略的一部分时,构建将运行。当代码从功能分支合并到主分支时,我也运行与CI构建相同的构建。
现在,我需要确保构建作为Pull-Request的一部分运行,然后仅应执行前4个任务,而当同一构建作为CI(trigger)的一部分运行时,则应该执行所有5个任务。
我无法在VSTS中找到任何此类现成的选项来执行此操作。因此需要帮助。
tfs azure-devops azure-pipelines-build-task azure-pipelines azure-pipelines-release-pipeline
我有一个由 CI 触发的发布管道,如果该版本尚不存在,我想推送新版本的 nuget 包。
为此,我有一个简单的命令行任务,它检查 nuget.org 上是否存在该 nuget 并将结果存储在环境变量中。
然后,我可以设置后续步骤的条件,只有当该值变量为 true 时才会执行该步骤。
这一切都很好,但是我想知道如何简单地停止发布过程并跳过所有后续步骤,而不需要一一设置它们的条件。
另外,如何将任务的构建状态设置为“已取消”?
azure-devops azure-pipelines-build-task azure-pipelines azure-pipelines-release-pipeline
在 Visual Studio Marketplace ( https://marketplace.visualstudio.com ) 中,我找到了一个扩展(版本 1),我现在在 Azure Devops构建管道中使用它。联系了小改进的作者,昨天推送了新版本的扩展。在 VS MarketPlace 中,我还看到 v2 已经可用。但是,当我进入我的构建管道时,我仍然只能选择版本 1。
我已经联系了我组织的管理员以确保安装了最新版本。我们甚至尝试删除组织的扩展(此时已反映在我的构建定义中)并重新安装它,但我仍然只能选择版本 1。
为什么我无法访问最新版本的扩展程序?
我在我们的环境中拥有有限的权限,我想知道必须添加哪些其他权限才能在 Azure DevOps 中创建构建管道?我无法在实际环境中创建管道,请参见下图。
在构建管道中,我有一个使用 powershell 脚本的工作,根据这样的变量设置应用程序名称:
$applicationName = If ('$(configuration)' -eq 'Release') { 'Appname' } Else { 'Appname-Test' }
Write-Host "##vso[task.setvariable variable=applicationName]$applicationName"
Run Code Online (Sandbox Code Playgroud)
我尝试将PublishBuildArtifacts@1变量的显示名称设置为这样的变量:
- task: PublishBuildArtifacts@1
displayName: $[variables.applicationName] # runtime variable
Run Code Online (Sandbox Code Playgroud)
但这从字面上显示$[variables.applicationName]而不是变量值。如何根据变量更改任务的显示名称?
azure-pipelines-build-task ×10
azure-devops ×9
azure-pipelines-release-pipeline ×2
docker ×1
powershell ×1
testing ×1
tfs ×1
tfs-2015 ×1
tfsbuild ×1
xunit.net ×1
yaml ×1