标签: azure-pipelines

在VSTS托管代理上使用PowerShellGet

我在构建过程中使用的是Visual Studio Team Services(VSTS)托管的构建代理。我的构建主要依赖于“ PowerShell”步骤,该步骤调用了我在git中拥有的脚本。在此脚本中,我想使用PowerShellGet管理PowerShell模块。例如,我希望能够仅通过运行以下命令来安装pscx

Install-Module -Name pscx
Run Code Online (Sandbox Code Playgroud)

不幸的是,托管代理使用PowerShell 4,并且没有PowerShellGet安装模块。结果,该Install-Module功能不可用。

有人建议在VSTS托管代理上使用PowerShellGet模块吗?请注意,由于我在这台计算机上没有管理员权限,因此无法安装为PowerShell 4安装PowerShellGet的msi。

powershellget azure-devops azure-pipelines-build-task azure-pipelines

3
推荐指数
1
解决办法
1026
查看次数

如何从Visual Studio Team Services将静态网站部署到Azure

我有一个现有的网站,我想使用Visual Studio Team ServicesAzure上部署.该网站由静态文件组成,没有ASP.NET或其他任何涉及的内容.

在Visual Studio Team Services中,我创建了一个执行npm installgulp构建的构建.这将生成一个dist包含该网站所有文件的文件夹.在Azure中,一切都设置正确(订阅,Web应用程序,...).

但是,我不确定如何将我的代码推送到Azure.探索VSTS的Release选项卡中的选项,似乎总是需要'工件',但我只有一堆文件.我需要在文件dist夹中发布文件并确保index.html提供服务.

我怎样才能做到这一点?

这个问题是有关这一之一,然而,答案全部状态,从Azure的开始,并没有提及如何使用Visual Studio团队服务部署现有的代码.

azure azure-web-sites azure-devops azure-pipelines azure-pipelines-release-pipeline

3
推荐指数
1
解决办法
2325
查看次数

Build 2015,vNext,仅在源自上次构建后发生更改时触发预定构建

如果自上次计划的构建以来源代码发生了变化,我怎样才能运行预定的构建?

就像旧的基于xaml的版本一样.

build-process tfsbuild tfs-2015 azure-pipelines

3
推荐指数
1
解决办法
699
查看次数

VSTS发布多行变量

我在VSTS版本管理中有删除文件的任务。我想让内容来自一个变量。我已经创建了一个变量,但是我不知道如何创建多行变量。因此,例如,一个删除三种文件类型的变量:

变量名称= ExcludeFiles
变量值=“库”“ bin \ *。pdb”“ bin \ *。dll.config”

在此处输入图片说明

tfs tfsbuild azure-devops azure-pipelines azure-pipelines-release-pipeline

3
推荐指数
3
解决办法
2895
查看次数

如何接收有关VSTS中预定触发器生成的构建的电子邮件通知?

以下是我在VSTS中安排的构建触发器的屏幕截图: 在此输入图像描述

当我手动排队构建或将任何东西推送到分支时,我收到了一封电子邮件.我在预定的构建触发器后没有收到电子邮件.我是否需要启用设置才能接收有关构建状态的电子邮件?

azure-devops azure-pipelines

3
推荐指数
1
解决办法
291
查看次数

VSTS. Reference concatenated variables

I was wondering if it possible to reference concatenated variable name1 and name2 as part of build process? Suppose I'd like to create a resource group called winning-development. Where name1=winning-, and name2=development. 在此处输入图片说明

在此处输入图片说明

azure-devops azure-pipelines-build-task azure-pipelines

3
推荐指数
1
解决办法
1695
查看次数

如何在.Net Core 2项目的VSTS构建服务器上编译Typescript文件

我一直试图在VSTS上的CI构建过程中将TypeScript文件编译为JavaScript文件。一旦生成了JavaScript文件,我的gulp文件进程就可以将它们处理到wwwroot文件夹中。通过在更改时编译文件,然后在检测到的更改上运行gulp文件的Task Runner运行并遵循tsconfig.json文件,该项目在Visual Studio 2017中可以通过VS很好地构建。在Visual Studio中本地生成或发布时,会生成所有正确的文件。

当尝试将VSTS中的构建过程设置为CI / CD过程的一部分时,将使用“ dotnet.exe build”命令构建C#代码,该命令似乎无法编译TypeScript文件。

我怎样才能让.Net Core 2项目同时构建在VSTS中编译和构建的C#和TypeScript文件?

c# typescript azure-pipelines .net-core-2.0

3
推荐指数
1
解决办法
906
查看次数

VSTS-“允许脚本访问OAuth令牌”在哪里?

我有使用Powershell脚本访问VSTS API的VSTS构建,类似于Microsoft文档中详细介绍

该文件指出:

要使脚本能够使用构建过程OAuth令牌,请转到构建定义的“选项”标签,然后选择“允许脚本访问OAuth令牌”。

完成之后,您的脚本可以使用SYSTEM_ACCESSTOKEN环境变量来访问VSTS REST API。例如:

例:

$url = "$($env:SYSTEM_TEAMFOUNDATIONCOLLECTIONURI)$env:SYSTEM_TEAMPROJECTID/_apis/build-release/definitions/$($env:SYSTEM_DEFINITIONID)?api-version=2.0"
Write-Host "URL: $url"
$definition = Invoke-RestMethod -Uri $url -Headers @{
    Authorization = "Bearer $env:SYSTEM_ACCESSTOKEN"
}
Write-Host "Definition = $($definition | ConvertTo-Json -Depth 1000)"
Run Code Online (Sandbox Code Playgroud)

如Microsoft文档中所述,我确定您曾经去过Build> Options,然后单击“允许脚本访问OAuth令牌”,但是它不再存在(请参见下图)。

在此处输入图片说明

当我尝试构建时,会得到以下信息(对于我的旧构建不会发生):

Invoke-RestMethod:{“ $ id”:“ 1”,“ innerException”:null,“ message”:“ TF400813:用户”无权访问此文件

此外,当我克隆一个构建(3个月前完成该构建时效果很好)时,该属性设置为false(在原始属性上设置为true)。

在此处输入图片说明

更新:如果我从VSTS导出,更改该属性然后再次导入,它可以工作,但是我确实需要没有这种手动干预的解决方案。

请现在应该怎么做?

powershell azure-devops azure-pipelines

3
推荐指数
1
解决办法
1181
查看次数

Azure DevOps生成错误:无法找到程序集“ System.ComponentModel.Annotations”

我有一个参考的netstandard 2.0项目System.ComponentModel.Annotations。它可以在本地计算机上很好地构建,但是当我尝试使用Azure DevOps管道构建它时,出现以下错误:

...警告MSB3245:无法解析此引用。无法找到程序集“ System.ComponentModel.Annotations”。检查以确保程序集在磁盘上。如果您的代码需要此引用,则可能会出现编译错误。[/home/vsts/work/1/s/src/MyProj/MyProj.csproj]

... MyProj / MyClass.cs(2,29):错误CS0234:类型或名称空间名称'DataAnnotations'在名称空间'System.ComponentModel'中不存在(您是否缺少程序集引用?)[/ home / vsts /work/1/s/src/MyProj/MyProj.csproj]

该错误是不言自明的,并且我理解该错误的含义,但问题是我应该如何解决此问题,以满足Azure DevOps的构建?

azure-devops azure-pipelines .net-standard .net-standard-2.0

3
推荐指数
1
解决办法
1349
查看次数

Docker无法在Azure Pipelines中生成“错误MSB1001”

面临着奇怪的问题。当我Dockerfile在Windows机器(Laptop)上构建我的计算机时,出现以下错误,并且尝试在上部署时也出现相同的错误Azure DevOps

Step 7/17 : COPY ["WebApp.csproj", ""]
 ---> 3f3e198d00aa
Step 8/17 : RUN dotnet restore "/WebApp.csproj"
 ---> Running in 51f16f947ffb
MSBUILD : error MSB1001: Unknown switch.
Switch: /WebApp.csproj

For switch syntax, type "MSBuild -help"
The command '/bin/sh -c dotnet restore "/WebApp.csproj"' returned a non-zero code: 1
PS C:\Users\user\Desktop\Directory>
Run Code Online (Sandbox Code Playgroud)

但是,Dockerfile当我们使用Visual Studio构建它并开始运行而没有任何错误时,同样可以正常工作。

Docker文件如下所示:

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2-stretch-slim AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM mcr.microsoft.com/dotnet/core/sdk:2.2-stretch AS build
WORKDIR /src
COPY ["WebApp.csproj", ""]
RUN …
Run Code Online (Sandbox Code Playgroud)

asp.net docker dockerfile azure-devops azure-pipelines

3
推荐指数
1
解决办法
155
查看次数