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并传递参数。
- 创建 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"})
- 运行Jenkins作业
tools[0].invoke({"job": "job01", "parameters": {}, "action": "run"})
- 获取职位信息
resp = tools[0].invoke({"job": "job01", "number": 1, "action": "status"})
if not resp["inProgress"]:
print(resp["result"])
- 删除 Jenkins 作业
tools[0].invoke({"job": "job01", "action": "delete"})
链式调用
TODO.
API 参考
对于详细的文档,请参阅API 参考