Jenkins Python 自动添加机器到 jenkins 节点

laofo · 发布于 2017年6月23日 · 最后由 pasey 回复于 2018年1月21日 · 190 次阅读
4
#!python

import jenkins


# create node with parameters
params = {
    'port': '22',
    'username': 'root',
    'credentialsId': '6c537fe9-57c6-431e-af86-c4886d8e8b6f',
    'host': '10.95.120.225'
}


if __name__ == '__main__':
    server = jenkins.Jenkins('http://jenkins.scmroad.com', username='user', password='passwd')
    user = server.get_whoami()

    slaveName = "abc-salve4"
    #server.create_node(slaveName)
    server.create_node(
            slaveName,
            nodeDescription='my test slave',
            remoteFS='/root/jenkins',
            labels='precise',
            exclusive=True,
            launcher=jenkins.LAUNCHER_SSH,
            launcher_params=params)

    node_config = server.get_node_info(slaveName)
    print node_config
    server.disable_node(slaveName)
    server.enable_node(slaveName)

创建个容器后,就可以利用这段把这个容器变成jenkins slave ,加到jenkins 节点里

运行之前要装 python-jenkins 这个库

pip install python-jenkins
共收到 3 条回复
4
laofo · #1 · 2017年6月23日

下面要做的工作就是自动创建个job,然后把这个job 关联到上面的节点

96
kilo_0115 · #2 · 2017年7月19日

👍 这个很有用

96
pasey · #3 · 2018年1月21日

现在软件行业发展太快了,特别是框架设计与理念转变后,单一工具优化与升级已无法产生大环境提升,特别是jenkins2.0和工具链的提出,促进了devops整体发展,这一套内容不是一个或几个CM所能做好的,更侧重于开发、测试、度量、SE等各方人员参与和上层有效框架设计。 所以现在CM的工作不再是围一个配置项转,而是参与产品价值提升(准确、高效、安全)——自我价值体现工作了。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册