-
Notifications
You must be signed in to change notification settings - Fork 0
/
jenkins_helper.py
34 lines (26 loc) · 929 Bytes
/
jenkins_helper.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import os
import jenkins
import jenkinsCurator
import another_config
from models.jenkinsConfig import JenkinsConfig
from utils.logging import logger
class JenkinsHandler(jenkinsCurator.JenkinsCurator):
_server = None
@property
def server(self):
if not self._server:
raise Exception
return self._server
def setup_repo(self, metadata):
self._current_job = metadata.url
logger.info('working on jenkins job: {}'.format(metadata.url))
def run(self, branch):
self.server.build_job('{job}/{branch}'.format(
job = self._current_job,
branch = branch
))
if __name__ == '__main__':
jobs = list(map(lambda x: JenkinsConfig(x), another_config.config))
handler = JenkinsHandler()
handler._server = jenkins.Jenkins('http://192.168.96.25:8082', username='liminchien', password='xxxx')
handler.run_for_each_repo(jobs)