小编Ste*_*ing的帖子

Jenkins Pipeline插件是否支持Do​​cker Compose?

我正在寻找一种方法来运行由Jenkins 2.0中的多个容器组成的支持Docker的构建.

是否有任何计划在Pipeline中Docker Compose进行原生支持,或者通过CloudBees docker插件进行管道.

或者可以/必须通过显式调用解决这个问题sh docker-compose...吗?甚至可以在内部使用它们try... finally 来进一步控制服务生命周期.


编辑:第一个答案是建议一种在jenkins中构建docker容器的方法.这不是这里所需要的.我(EngineerDollery)希望使用compose在jenkins中启动我的目标平台,以便我可以将我的应用程序部署到它并运行端到端测试.

jenkins docker jenkins-pipeline

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

创建可重复使用的jenkins管道脚本

我正在考虑使用最近詹金斯管道脚本,一个问题是,我没有想出一个聪明的方法来创建可重用的内部代码utils的,想象一下,我有一个共同的功能helloworld将通过大量的管道作业的使用,所以我希望创建一个utils.jar可以将其注入作业类路径.

我注意到Jenkins与全局库有类似的概念,但我对这个插件的关注:

既然是一个插件,所以我们需要安装/通过詹金斯插件管理器升级,那么它可能需要重新启动以应用更改,这不是我希望看到的,因为utils的可能更改,添加往常一样,我们希望它可能是立即可用.

其次,它是官方jenkins共享lib,我不想(或者他们不会申请我们)将私人代码放入jenkins repo.

有什么好主意吗?

jenkins jenkins-workflow jenkins-pipeline

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

将构建工件上载到Github,作为Jenkins的发布

我正在寻找一种方法来将构建工件上传为Jenkins中的Github Release作为构建后操作或发布者 - 类似于Publish Over.

Jenkins的Github插件(JENKINS-18598)尚未支持此功能.

我一直在研究postbuild-task插件,但这似乎不支持环境变量(我认为这有助于防止在构建输出中记录我的API令牌).

有没有人这样做过呢?用Jenkins解决这个问题的好方法是什么?通过cURL或CLI客户端上传(例如基于Go的github-release).

release github jenkins

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

如何使用Let's Encrypt和Nginx在SSL实验室测试的所有类别中获得A + 100分?

在www.ssllabs.com上测试我的SSL证书时,我试图在所有类别上获得100分

但是,我很难在所有分数上获得A +和100分.

关于我应该使用什么NGINX配置的任何提示?或者我应该如何生成Let的加密证书?谢谢

nginx lets-encrypt

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

nginx代理传递子路径未重定向

我有以下nginx配置:

    location /mail {
           rewrite           ^/mail/(.*) /$1 break;
           proxy_pass https://roundcube-host;
           proxy_connect_timeout 1;
           proxy_set_header X-Real-IP $remote_addr;
           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
           proxy_set_header Host $http_host;
           proxy_set_header X-Forwarded-Proto https;
    }
Run Code Online (Sandbox Code Playgroud)

有:

    upstream roundcube-host {
          server roundcube-ip-address:443;
    }
Run Code Online (Sandbox Code Playgroud)

所以,我想将所有请求从/ mail重定向到后端roundcube服务器.

但是,只有匹配的请求才会/mail被重定向.因此,/mail/plugins等等...没有被重定向,这意味着我没有任何CSS或JS等,因为nginx试图在本地找到它们.

如何正确重定向所有路径?

这是我完整的nginx配置.前端是自己的云.

upstream phpcgi {
    fair;
    server 127.0.0.1:9000;
    server 127.0.0.1:9001;
    keepalive 5;
}

upstream roundcube-host {
    server roundcube-ip-address:443;
}

server {
    listen 443 ssl;
    #server_name cloud.example.com;

    ssl_certificate /etc/ssl/certs/owncloud.crt;
    ssl_certificate_key /etc/ssl/private/owncloud.key;

    access_log /var/log/nginx/data_access.log;
    error_log /var/log/nginx/data_error.log info;

    # Path to the root of …
Run Code Online (Sandbox Code Playgroud)

proxy nginx

22
推荐指数
3
解决办法
4万
查看次数

verify_authenticity_token尚未定义

Ruby版本2.2.4,Rails版本5.0.0.1.

我陷入了测试登录的教程的一部分curl.我收到一个错误

ArgumentError(在process_action回调之前:尚未定义verify_authenticity_token).

我在sessions_controller中使用了这段代码:

skip_before_action :verify_authenticity_token, :if => Proc.new { |c| c.request.format == 'application/json' }
Run Code Online (Sandbox Code Playgroud)

有人知道答案吗?

ruby-on-rails ruby-on-rails-5

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

Jenkins multibranch管道与来自不同存储库的Jenkinsfile

我有一个Git存储库,其中包含我想构建的代码,但我不允许Jenkinsfile在其根目录中添加一个(它是Debian软件包,因此我无法将文件添加到上游源代码中).有没有办法将其存储Jenkinsfile在一个存储库中并让它从另一个存储库构建代码?由于我的代码库有几个分支要构建(每个Debian版本一个),这应该是一个多分支管道.在代码或Jenkinsfile存储库中提交应该触发构建.

奖金复杂性:我有几个这样的代码/打包存储库,我想重复使用Jenkinsfile它们.因此它应该以某种方式动态获取正确的Git URL以供使用.要构建的分支在所有存储库中具有相同的名称.

jenkins jenkins-pipeline

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

如何在工作流程中获得$ CAUSE

Jenkins有一个$ CAUSE变量可用于自由式构建作业.

如何在工作流程中访问此类似内容?

我的团队在现有ad-hoc构建的电子邮件输出中使用它.我们希望在基于工作流程的新工作中继续这样做.

jenkins jenkins-workflow jenkins-pipeline

20
推荐指数
6
解决办法
2万
查看次数

从字符串生成文件而不必在Chef中创建模板文件?

我目前在配方中使用此代码:

template "/var/django/.ssh/id_rsa" do
    source "id_rsa.erb"
    owner "django"
    group "django"
    variables :key => ssh_key
    mode 00600
end
Run Code Online (Sandbox Code Playgroud)

这是id_rsa.erb看起来像:

<%= @key %>
Run Code Online (Sandbox Code Playgroud)

我想知道我是否可以避免使用模板,只是从字符串中生成文件.也许这样的东西:

file_from_string "/var/django/.ssh/id_rsa" do
    source ssh_key
    owner "django"
    group "django"
    mode 00600
end
Run Code Online (Sandbox Code Playgroud)

chef-infra

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

Jenkins Multibranch管道:如何选择构建节点?

Jenkins multibranch管道总是在主节点上执行checkout.在我的情况下,我想在另一个节点上进行构建.我在Jenkinsfile中的脚本如下所示:

node('osx') {
    ...
}
Run Code Online (Sandbox Code Playgroud)

我不得不env.BRANCH再次在我的节点上结账以执行构建.从一开始就在所选节点上执行管道构建会好得多,但我找不到如何做到这一点.

jenkins jenkins-pipeline

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