标签: post-build

开发Jenkins post-build插件

我目前正在开发一个简单的插件,可以从Jenkins构建中检索结果.我正在扩展通知程序并使用build.getResults()获取信息.但是,当我上传我的插件时,我无法将其设置为后构建操作.
当我运行我的构建时,它们会中断,build.getResults()因为我在构建仍在运行时尝试获取结果.

我该怎么做才能正确获得构建结果?

java hudson post-build jenkins jenkins-plugins

6
推荐指数
1
解决办法
5370
查看次数

MSBuild Post-Build

我有一个MSBuild脚本,除了我的后期构建步骤之外,还要做我需要做的所有事情(请参阅我之前提出的问题:MSBuild条件Exec?).

我正在寻找的是构建许多csproj文件,并且当且仅当项目构建时,可选择执行构建后步骤.我不想一直执行我的后期构建步骤,否则我的最终输出上的时间戳将被不必要地修改(并且它使得构建过程非常耗时而无缘无故).

在我的MSBuild脚本中,我为每个csproj文件提供了以下内容:

<Target Name="ProjectName">
   <MSBuild Projects="PathToProject" Properties="Configuration=$(buildtype)" />
</Target>
Run Code Online (Sandbox Code Playgroud)

编辑: 我认为我真正想做的是检测CoreCompile任务何时为每个项目运行.如果在某种情况下有某种方法来检查这个问题?

有任何想法吗?

我是MSBuild的新手,所以也许我完全走错了轨道!

谢谢,艾伦

c# msbuild csproj post-build

5
推荐指数
2
解决办法
4669
查看次数

CMake / CPack:add_custom_command TARGET包POST_BUILD

此处描述的问题相同,我想将Shell脚本作为TARGET“ package”的POST_BUILD命令执行。目标平台是Debian / Ubuntu。

我将以下内容添加到CMakeLists的末尾:

 add_custom_command(
     TARGET package
     POST_BUILD
     COMMAND bash ${PROJECT_BINARY_DIR}/fixup_deb.sh
     WORKING_DIRECTORY ${PROJECT_BINARY_DIR} 
     COMMENT "Fix file-permissions of md5sum files in debian package"
 )
Run Code Online (Sandbox Code Playgroud)

但这是行不通的。当我调用“ make package”时,脚本不会更改。

目前,我有一个针对自定义目标的解决方法:

 add_custom_target(
     correctDeb        
     COMMAND bash ${PROJECT_BINARY_DIR}/fixup_deb.sh
     WORKING_DIRECTORY ${PROJECT_BINARY_DIR} 
 )
Run Code Online (Sandbox Code Playgroud)

但是,如果在调用“ make package”时自动完成此操作,则对我来说将更加舒适和更加故障安全。

顺便说一下,$ {PROJECT_BINARY_DIR} /fixup_deb.sh的生成也可以很好地与以下对象配合使用:

 configure_file( "${CMAKE_CURRENT_LIST_DIR}/debian/fixup_deb.sh.in" "${PROJECT_BINARY_DIR}/fixup_deb.sh" @ONLY IMMEDIATE )
Run Code Online (Sandbox Code Playgroud)

cmake package post-build cpack add-custom-command

5
推荐指数
0
解决办法
965
查看次数

Visual Studio在System32中看不到所有文件

我在Visual Studio 2017中设置了一些生成后命令,这些命令应允许我运行System32(wsl.exe)当前拥有的程序。但是,Visual Studio没有看到该程序。

我试图设置命令以dir C:\Windows\System32\查看它可以列出的所有文件,实际上,它没有列出我所拥有的约4600个文件中的1000个文件,包括wsl.exe我要尝试的文件跑。在命令提示符下运行同一命令时,文件数正确显示。

我试图以whoamipost-build命令运行,它返回的用户与我在命令提示符下运行相同命令的用户相同。

我想念什么吗?

windows batch-file post-build-event visual-studio post-build

4
推荐指数
1
解决办法
356
查看次数

Visual Studio构建事件中的空格和反斜杠

我有一个应用程序,应该在构建前和事件后的事件处理方面帮助我的项目.我正在使用ndesk.options进行命令行参数解析.当我的项目路径包含空格时,这给了我奇怪的结果.我认为这是ndesk.options的错,但我想我应该责备自己的应用程序.我把我的应用程序称为后建事件,如下所示:

build.exe --in="$(ProjectDir)" --out="c:\out\"
Run Code Online (Sandbox Code Playgroud)

args []的简单foreach显示以下内容:

--in=c:\my project" --out=c:\out"
Run Code Online (Sandbox Code Playgroud)

发生的事情是,每个参数中的最后一个被视为已被转义.因此删除了尾部反斜杠.整个事情被视为一个参数.

现在,我认为只是逃避第一个"我也很聪明",就像这样:

build.exe --in=\"$(ProjectDir)" --out=\"c:\out\"
Run Code Online (Sandbox Code Playgroud)

在这种情况下,结果args []看起来像这样:

--path="c:\my
project"
--out="c:\out"
Run Code Online (Sandbox Code Playgroud)

参数中的尾部反斜杠仍然被吞下,第一个参数现在被拆分.

将此args []传递给ndesk.options会产生错误的结果.

正确的命令行应如何显示,以便正确的元素以正确的args []插槽结束?或者,如果有或没有ndesk.options,如何解析这些命令行参数?任何建议都是受欢迎的.

提前致谢

c# visual-studio post-build

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

构建后提交:好还是坏?

在成功构建之后自动化源代码控制提交是一个好的策略吗?


编辑:我问,因为我想在版本之间进行更频繁的增量提交,这使得更容易找到引入错误的点,而不是在v1.0和v1.1之间回滚2K +新的代码行.

mercurial post-build-event post-build

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

是否可以在一个CMD行语句中设置多个环境变量?

我将PowerShell脚本设置为在MSBuild完成后执行。它使用在构建过程的POSTBUILD部分(构建目录等)中设置的环境变量。当前看起来像这样:

  set MAGE="C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\mage.exe"
  set APPFILE=$(TargetDir)$(TargetName).application
  set MANIFEST=$(TargetPath).manifest
  set CERT=$(ProjectDir)$(TargetName).pfx
  set PROJECTNAME=$(TargetName)
  set CONFIGURATION=$(ConfigurationName)
  set TARGETDIR=$(TargetDir)
  set TEAMBUILD=$False
  Powershell -File "$(ProjectDir)POSTBUILD.ps1"
Run Code Online (Sandbox Code Playgroud)

每个集合都在单独的线上运行,但仍在同一CMD实例中。

有没有办法我可以只用一行而不是7来一次设置多个变量?

msbuild powershell cmd visual-studio-2010 post-build

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

如何根据 menuconfig 标志修改构建后脚本中的文件?

我需要在Buildroot编译之后和在创建 rootfs 之前找到一种方法来修改/编辑给定文件,具体取决于menuconfig标志选择。我可以在Buildroot文档中找到可以通过使用构建后脚本来做到这一点。

我的问题是,只有在menuconfig 中选择了某些内容时,我才会执行脚本操作,例如:

(x) Enable my_login_system;
Run Code Online (Sandbox Code Playgroud)

如果我选择my_login_system,那么我需要根据以下内容更改nsswitch.conf文件:

passwd:        my_login files
Run Code Online (Sandbox Code Playgroud)

如果我没有在 menuconfig 中选择“my_login_system”,那么 nsswitch.conf 应该是:

passwd:        files my_login
Run Code Online (Sandbox Code Playgroud)

所以,我的主要问题是如何知道在构建后脚本中是否选择了“my_login_system”。

login buildroot post-build

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

生成后批处理文件末尾的DEL"%~f0"导致错误代码1

我目前正在尝试在Visual Studio中创建一个后期构建脚本来清理我构建版本的目录.批处理文件执行正常,所有预期的行为都发生,但在Visual Studio中,我收到一条消息说"Call post-build.bat" exited with code 1.

我的批处理脚本如下:

@echo off
GOTO :CleanFiles
:CleanFiles
set direct = %CD%
IF EXIST *.pdb (
    DEL *.pdb
)
IF EXIST *.vshost.exe.config (
    DEL *.vshost.exe.config
)
IF EXIST *.WPF4.xml (
    DEL *.WPF4.xml
)
IF EXIST System.Windows.Interactivity.xml (
    DEL System.Windows.Interactivity.xml
)
IF ERRORLEVEL 0 GOTO MakeDirectories

:MakeDirectories
IF EXIST %direct%lib (
    rmdir /s %direct%lib
    rmdir /s %direct%config
    rmdir /s %direct%output
)
mkdir %direct%lib
mkdir %direct%config
mkdir %direct%output
IF ERRORLEVEL 0 GOTO MoveFiles
:MoveFiles
move …
Run Code Online (Sandbox Code Playgroud)

batch-file visual-studio-2010 visual-studio post-build

0
推荐指数
1
解决办法
1003
查看次数