Skip to main content
Open In ColabOpen on GitHub

Jenkins

工具用于与Jenkins进行交互。

概览

The langchain-jenkins 包允许您使用 Jenkins 执行和控制 CI/CD 管道。

设置

安装 langchain-jenkins

%pip install --upgrade --quiet langchain-jenkins

Credentials

您需要设置或获取访问Jenkins服务器的授权。

import getpass
import os


def _set_env(var: str):
if not os.environ.get(var):
os.environ[var] = getpass.getpass(f"{var}: ")


_set_env("PASSWORD")

Instantiation

要禁用SSL验证,请设置os.environ["PYTHONHTTPSVERIFY"] = "0"

from langchain_jenkins import JenkinsAPIWrapper, JenkinsJobRun

tools = [
JenkinsJobRun(
api_wrapper=JenkinsAPIWrapper(
jenkins_server="https://example.com",
username="admin",
password=os.environ["PASSWORD"],
)
)
]

Invocation

现在您可以调用invoke并传递参数。

  1. 创建 Jenkins 任务
jenkins_job_content = ""
src_file = "job1.xml"
with open(src_file) as fread:
jenkins_job_content = fread.read()
tools[0].invoke({"job": "job01", "config_xml": jenkins_job_content, "action": "create"})
  1. 运行Jenkins作业
tools[0].invoke({"job": "job01", "parameters": {}, "action": "run"})
  1. 获取职位信息
resp = tools[0].invoke({"job": "job01", "number": 1, "action": "status"})
if not resp["inProgress"]:
print(resp["result"])
  1. 删除 Jenkins 作业
tools[0].invoke({"job": "job01", "action": "delete"})

链式调用

TODO.

API 参考

对于详细的文档,请参阅API 参考