我有一个脚本,通过curl HTTP调用删除和重新创建作业,我想摆脱任何硬编码的"用户名:密码".例如curl -X POST $url --user username:password
注意事项:
Jenkins CLI(可能不是一个选项).一个应该能够实现与Jenkins API相同的CLI(创建作业等),但据我所知,Jenkins CLI不适合我,因为创建的作业只会在重启后出现在Jenkins中或"重新加载" "从磁盘配置",这将取消任何其他正在运行的作业.
API令牌.无法找到如何获取用户令牌,然后将其作为参数传递给脚本,但这可能是一个解决方案..
我有几个使用共享资源(数据库)的作业,有时可能导致构建在(罕见)事件中失败,即同时触发作业.
例如,给定作业A到E,是否有任何方法可以指定A和C 不应该同时运行?
除了上述资源之外,构建彼此独立(不是例如在上游/下游关系中).
"暴力"方式将执行器的数量限制为一个,但如果大多数作业可以同时执行并且构建服务器上不缺乏计算资源,那么这显然不太理想.
我安装了Promoted Build Plugin从Jenkins现在开始,现在我面临一些麻烦,以促进现有工作的构建.这是场景:
Nightly Build每天晚上都有一个现有的工作,运行所需的所有测试和指标;
现有Deploy Build一个接受参数$ {BUILD_NUMBER}并从中部署具有相应$ {BUILD_NUMBER}的构建Nightly Build
到现在为止还挺好.现在是我要添加的部分Build Promotions......

有没有办法推广Nightly Build #39(注意它之前已经建成)Deploy Build?或者甚至可能来自其他地方,坦率地说,我有点迷失在这里:(
我没有看到它们具有清晰的上游/下游关系,因为它们没有:始终运行此构建,然后在执行期间运行另一个 - [部署构建]有时仅执行,而不是总是在[夜间]之后执行建立].
我正在使用Pipeline插件运行Jenkins 2.我已经设置了一个多分支管道项目,其中每个分支(主,开发等)在根目录中都有一个Jenkins文件.设置这个很简单.但是,即使代码没有改变,我也不知道如何定期运行每个分支(而不是分支索引).我需要在Jenkinsfile中添加什么才能启用定期构建?
如何在声明性管道中的阶段之间传递变量?
在脚本管道中,我收集的程序是写入临时文件,然后将文件读入变量.
我如何在声明性管道中执行此操作?
例如,我想基于shell动作创建的变量触发不同作业的构建.
stage("stage 1") {
steps {
sh "do_something > var.txt"
// I want to get var.txt into VAR
}
}
stage("stage 2") {
steps {
build job: "job2", parameters[string(name: "var", value: "${VAR})]
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个生成的报告文件,我希望能够在Jenkins作业中将当前的内部版本号添加到该文件中.是否有可用于获取当前内部版本号的环境变量或插件?
抱歉'svn'风格 - 我们正处于从SVN迁移到GIT(包括我们的CI Jenkins环境)的过程中.
我们需要的是能够让Jenkins结帐(或者我应该说克隆?)GIT项目(存储库?)到一个特定的目录中.我们已经尝试了一些refspecs魔术,但是理解和使用成功并不是很明显.
此外,如果在同一个Jenkins项目中我们需要在项目根目录下将几个私有GitHub存储库签出到几个单独的目录中,我们怎么能这样做呢?
我们安装了GitHub插件.希望我们把事情说得对.
我有一个参数化的Jenkins作业,需要在特定的Git仓库中输入特定的Git分支.目前,此参数是字符串参数.
有没有办法让这个参数成为一个选择参数,并用Git分支动态填充下拉列表?我不希望有人通过在每次创建新分支时手动配置下拉列表来维护此选项参数.
我是这个地区的新手.Maven和Jenkins有什么区别.在我看来,它们都支持JUnit的自动构建和自动执行.如果是的话,他们是免费的吗?还是互相排斥?
构建我的Jenkins/MSBuild解决方案给了我这个错误
c:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(483,9): error :
The OutputPath property is not set for project '<projectname>.csproj'. Please check to
make sure that you have specified a valid combination of Configuration and Platform
for this project. Configuration='Latest' Platform='AnyCPU'. You may be seeing this
message because you are trying to build a project without a solution file, and have
specified a non-default Configuration or Platform that doesn't exist for this project.
[C:\<path>\<projectname>.csproj]
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
编辑
我在.csproj文件中有这个
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Latest|AnyCPU'">
<OutputPath>bin\Latest\</OutputPath>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)