def main(): f = open("/home/bi/work/macro/private/private.txt", 'r') # f = open("D:\업무\python\private\private.txt",'r') ID = f.readline()[:-1] PW = f.readline()[:-1] f.close() LOG = logLib.log(ID) # SIC qJira = jira('QTRACKER', ID, PW, LOG) for i in range(Q_FILTER.__len__()): issues = _issues(qJira.searchIssues(Q_FILTER[i])) target = issues.checkLabel(Q_LABEL[i]) LOG.info('target: {0}'.format(target)) issues.uploadLabel(target, Q_LABEL[i]) # RTK, MStar harJira = jira('HARMONY', ID, PW, LOG) for i in range(HAR_FILTER.__len__()): issues = _issues(harJira.searchIssues(HAR_FILTER[i])) target = issues.checkLabel(HAR_LABEL[i]) LOG.info('target: {0}'.format(target)) issues.uploadLabel(target, HAR_LABEL[i]) # HDMI2.1 Switch / MStar인원에게 전달된 O18, M16P3이슈 for i in range(HDMI21_FILTER.__len__()): if HDMI21_FILTER[i]: issues = _issues(harJira.searchIssues(HDMI21_FILTER[i])) target = issues.checkLabel(Q_LABEL[i]) LOG.info('target: {0}'.format(target)) issues.uploadLabel(target, Q_LABEL[i])
def main(): # interval = 18000 # 5시간 # interval = 7200 # 2시간 # interval = 3600 # 1시간 # interval = 60 # 1분 interval = 1800 # 30분 PID = '748003010' PW = getpass.getpass() ID = sys.argv[1] LOG = logLib.log(ID) flag = 0 collab = collabLib.collab(ID, PW, LOG) jira = {} jira['HARMONY'] = jiraLib.jira('HARMONY', ID, PW, LOG) jira['QTRACKER'] = jiraLib.jira('QTRACKER', ID, PW, LOG) jira['DEVTRACKER'] = jiraLib.jira('DEVTRACKER', ID, PW, LOG) _run(ID, jira, collab, PID, LOG) while True: now = datetime.datetime.now() h = now.strftime('%H') m = now.strftime('%M') s = now.strftime('%S') if h in ('08', '13') and flag == 0: LOG.info('{0}시 {1}분 {2}초 매크로 시작'.format(h, m, s)) _run(ID, jira, collab, PID, LOG) flag = 1 if flag == 1 and h not in ('08', '13'): LOG.info('flag toggle : {0}'.format(flag)) flag = 0 LOG.info("{0} 초 동안 sleep / flag:{1}".format(interval, flag)) time.sleep(interval) LOG.info('완료')
sys.path.append('./lib') sys.path.append('./private') import jiraLib import emailLib import htmlLib import datetime import collections import logLib # f = open("D:\업무\python\private\private.txt",'r') f = open("/home/bi/work/macro/private/private.txt", 'r') # f = open("/home/bi/work/macro/README.md", 'r') ID = f.readline()[:-1] PW = f.readline()[:-1] f.close() LOG = logLib.log(ID) OFFSET = '14' # pendding day class soc(object): def __init__(self, name, server, filter, platform, manager=''): self.name = name self.server = server self.jira = jiraLib.jira(server, ID, PW, LOG) self.filter = 'created < "-'+ OFFSET + 'd" and status != FixReady and filter=' + filter self.platform = platform self.manager = manager ADDRESS = {'QTRACKER':jiraLib.ISSUE_ADDRESS[0], 'HARMONY':jiraLib.ISSUE_ADDRESS[1], 'DEVTRACKER':jiraLib.ISSUE_ADDRESS[2]}
def main(): MODULE_NAME = ['AUDIO', 'HDMI', 'MEDIA', 'DECODER', 'VENC','PVR', 'BACKEND', 'DOLBY', 'PQ', 'VIDEO', 'DEMOD', 'NETWORK', 'USB', 'SYSTEM', '신뢰성', 'GRAPHIC', '8K'] KEWORD_QE = 'SQE' KEWORD_QA = '인정' LABEL_QE = 'sic_qe' LABEL_QA = 'sic_qa' LABEL_MODULE = '' LABEL_TEST = '' FILTER_MODULE_1 = 'filter = SIC.' FILTER_MODULE_2 = '.MEMBERS AND resolution = Unresolved AND filter = WEBOS50.PROJECT.SW' FILTER_MODULE = 'DEFAULT' SLEEP = 1800 # PW = getpass.getpass() # ID = sys.argv[1] f = open("/home/bi/work/macro/private/private.txt", 'r') ID = f.readline()[:-1] PW = f.readline()[:-1] f.close() LOG = logLib.log(ID) LOG.info('Labeling START') #============================================================================================ # SIC qJira = jira('QTRACKER', ID, PW, LOG) for i in range(MODULE_NAME.__len__()): # 라벨 정하기 LABEL_MODULE = 'SIC_' + MODULE_NAME[i] # 필터 정하기 FILTER_MODULE = FILTER_MODULE_1+MODULE_NAME[i]+FILTER_MODULE_2 # 필터 사용해서 이슈 뽑기 issues = qJira.searchIssues(FILTER_MODULE) print('filter = ', FILTER_MODULE) # print('issues = ', issues) for issue in issues: print('{0} - '.format(issue), end=' ') ## 테스트 부서 라벨 업데이트 # 이미 라벨이 있다면 기존 라벨 유지 GROUP_UPDATE = True if LABEL_QA in issue.fields.labels or LABEL_QE in issue.fields.labels: print('skip TEST_GROUP_LABEL', end=' ') GROUP_UPDATE = False pass else: if KEWORD_QE in str(issue.fields.components[0]): LABEL_TEST = LABEL_QE elif KEWORD_QA in str(issue.fields.components[0]): LABEL_TEST = LABEL_QA issue.fields.labels.append(LABEL_TEST) print('Append:{0}'.format(LABEL_TEST), end=' ') ## 모듈 라벨 업데이트 # 이미 라벨이 있다면 기존 라벨 유지 MODULE_UPDATE = True for n in MODULE_NAME: if 'SIC_' + n in issue.fields.labels: print('skip MODULE_LABEL', end=' ') MODULE_UPDATE = False ## (임시) 8K 컴포넌트는 라벨을 8K로 일괄 정리 chip = issue.fields.customfield_13802 if (chip is not None) and ('F20' in chip[0]): LABEL_MODULE = 'SIC_8K' if MODULE_UPDATE == True: issue.fields.labels.append(LABEL_MODULE) print('Append:{0}'.format(LABEL_MODULE), end=' ') # 라벨 최종 submit print() if GROUP_UPDATE == True or MODULE_UPDATE == True: LOG.info('{0} - label : {1}'.format(issue, issue.fields.labels)) issue.update(fields={"labels": issue.fields.labels}) LOG.info('Labeling END')