中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中怎么調用Jenkins接口

發布時間:2020-07-28 09:07:07 來源:億速云 閱讀:200 作者:小豬 欄目:開發技術

這篇文章主要講解了python中怎么調用Jenkins接口,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。

本來非常喜歡偷懶

最好就是不干活那種

所以最近在研究把Jenkins模塊集成起來

做成傻瓜界面這樣就給他們用

本人Python搓望大神不要噴,多多指導

jenkins的Python模塊模塊安裝

pip:
pip install python-jenkins

easy_install:
easy_install python-jenkins

使用:

class jenkins_tools():
  def __init__(self):
    cf = get_conf()
    self.username = cf.get('jenkins', 'username')
    self.password = cf.get('jenkins', 'password')
    self.php_jenkins = '''			#本屌自己的jenkins的conf文件
    <project>				#這里可以去抄jenkins的項目文件夾里面的配置文件
     <actions/>				#記得不要加xml頭,源碼哪里幫我們加了,自己加就是作死
     <description></description>		#項目需求不一樣,配置文件也不一樣,你們不要抄我的
     <keepDependencies>false</keepDependencies>
     <properties>
      <hudson.model.ParametersDefinitionProperty>
       <parameterDefinitions>
        <hudson.model.StringParameterDefinition>
         <name>Branch</name>
         <description></description>
         <defaultValue>%s</defaultValue>
        </hudson.model.StringParameterDefinition>
       </parameterDefinitions>
      </hudson.model.ParametersDefinitionProperty>
     </properties>
     <scm class="hudson.scm.NullSCM"/>
     <canRoam>true</canRoam>
     <disabled>false</disabled>
     <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
     <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
     <triggers/>
     <concurrentBuild>false</concurrentBuild>
     <builders>
      <hudson.tasks.Shell>
       <command>xxxxxxx</command>	
      </hudson.tasks.Shell>
     </builders>
     <publishers/>
     <buildWrappers/>
    </project>
      '''
    self.java_newjenkins = '''		#本屌的另外一個jenkins的conf文件
      <project>
       <actions/>
       <description></description>
       <keepDependencies>false</keepDependencies>
       <properties>
        <hudson.model.ParametersDefinitionProperty>
         <parameterDefinitions>
          <hudson.model.StringParameterDefinition>
           <name>Branch</name>
           <description></description>
           <defaultValue>%s</defaultValue>
          </hudson.model.StringParameterDefinition>
         </parameterDefinitions>
        </hudson.model.ParametersDefinitionProperty>
       </properties>
       <scm class="hudson.scm.NullSCM"/>
       <canRoam>true</canRoam>
       <disabled>false</disabled>
       <blockBuildWhenDownstreamBuilding>false</blockBuildWhenDownstreamBuilding>
       <blockBuildWhenUpstreamBuilding>false</blockBuildWhenUpstreamBuilding>
       <triggers/>
       <concurrentBuild>false</concurrentBuild>
       <builders>
        <hudson.tasks.Shell>
         <command>xxxx</command>	
        </hudson.tasks.Shell>
       </builders>
       <publishers/>
       <buildWrappers/>
      </project>
        '''
  def __conn_jenkins_server(self, url):
    try:
	  #獲得一個jenkins的操作實例
      server = jenkins.Jenkins(url, username=self.username, password=self.password)
      return server
    except Exception:
      logging.warning('login jenkins failed!')
      return None
	
  def create_project(self, host_ip, project_name, git_path, git_branch, url, environment):
    server = self.__conn_jenkins_server(url)
    if server:
      server.create_job(project_name, self.php_jenkins)	#參數1寫的是項目名稱,參數2是xml文檔
      return True
    else:
      return None
 
  def project_built(self, url, project_name, git_branch):	#這個函數作用是構建項目
    server = self.__conn_jenkins_server(url)		
    server.build_job(project_name, {'Branch': git_branch})
 
  def check_project_exist(self, project_name, url):		#這個函數是檢查項目是否已經存在雖然寫得很挫忘不要見怪
    server = self.__conn_jenkins_server(url)
    name = server.get_job_name(project_name)
    if name is None:
      return False
    return True

詳細可以看官方文檔:http://python-jenkins.readthedocs.io/en/latest/api.html

補充知識:python調用jenkinsapi

在通過python 調用jenkinsapi的時候,需要對一些作業進行定時對構建

python中怎么調用Jenkins接口

報錯:

<title>Error 403 No valid crumb was included in the request</title>\n</head>\n<body><h3>HTTP ERROR 403</h3>

原因是在jenkins的安全配置里勾選里下面這個選項,在預防跨站點請求,將其勾掉即可。

python中怎么調用Jenkins接口

看完上述內容,是不是對python中怎么調用Jenkins接口有進一步的了解,如果還想學習更多內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

资阳市| 屯昌县| 绥化市| 白水县| 汤原县| 芜湖市| 龙江县| 平顺县| 荔波县| 张北县| 梓潼县| 太保市| 贡嘎县| 云梦县| 耿马| 延津县| 乐都县| 奉化市| 恩施市| 碌曲县| 绥德县| 托克逊县| 齐河县| 清新县| 西盟| 榆社县| 青龙| 察雅县| 横峰县| 万源市| 六安市| 临洮县| 清远市| 汪清县| 伊宁市| 大关县| 湖口县| 高雄县| 吉水县| 重庆市| 偏关县|