我有一种情况,我想在 Jenkins 参数化构建中更改选择参数的内容。
就我而言,我想要一个用于部署应用程序“部署我的应用程序”的项目。在构建这个项目时,用户会看到一个选择参数。我想根据用户角色更改此列表的内容。即具有“dev_deploy”角色的人将能够看到开发环境,具有“test_deploy”角色的人将能够看到测试环境等。
我目前正在使用可扩展选择参数插件和基于角色的授权策略插件。
我知道我可以编写一些有趣的脚本来生成选择的列表项。
def result = ["-------"]
def roles=??????
if(roles.get('dev_deploy') {
//Add dev environments
result.add('dev1')
....
}
if(roles.get('test_deploy') {
//Add test environments
result.add('test1')
....
}
return result
Run Code Online (Sandbox Code Playgroud)
我只是不知道谁来掌握用户角色?
任何人都知道我该怎么做,或者对问题有不同的解决方案?
非常感谢
我想迁移我的应用程序部署以使用docker/docker hub.当前的生产设置是在两台Linux服务器之间平衡流量,运行Apache,Tomcat和MySQL.Java Web应用程序通过JDBC连接到主+从MySQL数据库.
为了最大限度地减少这种变化的影响,作为第一步,我正在考虑将tomcat和Web应用程序容纳在容器中.让Apache和MySQL像现在一样在主机上运行.
我遇到的问题是将在docker容器中运行的应用程序与在主机上运行的MySQL DB连接起来.
我现在能做的最好的事情是连接到docker容器,获取它的IP地址,然后使用SQL GRANT来允许该IP地址访问数据库.这样做的问题在于,每次运行容器时,您都可能获得新的IP地址,因此每次都必须运行一个授权.
我一直在玩这个东西一段时间,我不敢相信没有比我上面提出的更好的解决方案.
有人做过这样的事吗?任何人都有任何关于如何最好地解决这个问题的建议.
编辑 有人建议" 从Docker容器内部,我如何连接到机器的本地主机? "是一个副本 - 但潜在的问题仍然存在.每次我从图像创建Docker容器时,我都可能获得需要被授予访问DB的容器的新IP地址.我想尽量避免这样做.
非常感谢
I have what I would think was a typical use case. I am using Apache HttpClient to make a POST to a remote (internal) server. The response from the server is XML.
I get the response from the entity as a stream and parse it directly to an XML Document. This code snippet shows what I am doing.
HttpResponse response = httpClient.execute(request);
int code = response.getStatusLine().getStatusCode();
if(code != 200) {
returnValue.addParameter("msg", "Recieved invalid status code '" + code + "'"); …Run Code Online (Sandbox Code Playgroud)