import jenkins import json import os from models.config_classes import * from models.ci_config import * from utils.utils import * from xml_re import * CREATE = "config" DELETE = "config_delete" # write config path xmlSaveDir = "./config/xml_get" # load jobs def load_jobs_list(server, configFile): if not os.path.exists(xmlSaveDir): os.makedirs(xmlSaveDir) # generate file by file with open(f'./config/{configFile}.json', 'r') as f: # default `r` mode globalConfig = json.load(f) # get basement config if configFile != DELETE : selected_job = globalConfig["basicJob"] jobConfigXml = server.get_job_config(selected_job) with open(f'./config/xml_get/{selected_job}.xml', 'w') as f: # default `r` mode f.write(jobConfigXml) # jobList jenkinsJobsConfigs = GlobalConfig.from_dict(globalConfig) jobList = ExclusiveConfigList.from_dict(jenkinsJobsConfigs) return jobList, jobConfigXml
时间: 2024-02-14 08:22:15 浏览: 62
这段代码是用 Python 语言编写的,主要是与 Jenkins 服务器进行交互,对其上的任务进行管理。具体实现了以下功能:
1. 导入了 Jenkins、json、os 等库;
2. 导入了自己写的一些模块,如 config_classes、ci_config 和 utils 等;
3. 定义了 CREATE 和 DELETE 两个字符串常量;
4. 定义了 xmlSaveDir 变量,表示保存任务配置文件的路径;
5. 实现了 load_jobs_list 函数,该函数用于加载 Jenkins 服务器中的任务列表,并将其转换成一个 ExclusiveConfigList 对象;
6. 在 load_jobs_list 函数中,使用 Jenkins 的 API 获取某个任务的配置信息,并将其保存到本地文件中。
总体来说,这段代码主要是用于对 Jenkins 服务器上的任务进行配置和管理的,包括获取任务列表、获取任务配置信息等。
阅读全文