Commit dbb0bca5 authored by hardy's avatar hardy

new ci files to build gir MR dashboard

parent f21ac1a8
#!/bin/groovy
/*
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The OpenAirInterface Software Alliance licenses this file to You under
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
* except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.openairinterface.org/?page_id=698
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*-------------------------------------------------------------------------------
* For more information about the OpenAirInterface (OAI) Software Alliance:
* contact@openairinterface.org
*/
// Template Jenkins Declarative Pipeline script to run Test w/ RF HW
// Location of the python executor node shall be in the same subnet as the others servers
def pythonExecutor = params.pythonExecutor
pipeline {
agent {
label pythonExecutor
}
stages {
stage ("Fetch Data") {
steps {
script {
//retrieve MR data from gitlab
sh returnStdout: true, script: 'python3 ci-scripts/data_extraction_from_gitlab.py'
}
}
}
}
}
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Wed Mar 31 21:57:37 2021
@author: hardy
"""
import subprocess
import shlex
import json
import datetime
cmd="""curl --silent "https://gitlab.eurecom.fr/api/v4/projects/oai%2Fopenairinterface5g/merge_requests?state=opened&per_page=100" """
process = subprocess.Popen(shlex.split(cmd), stdout=subprocess.PIPE)
output = process.stdout.readline()
tmp=output.decode("utf-8")
d = json.loads(tmp)
f = open("/tmp/gitlab_dashboard.txt", "w")
f.write("MR;Created_at;Author;Title;CAN START;IN PROGRESS;COMPLETED;OK MERGE;Merge conflicts\n")
for x in range(len(d)):
date_time_str = d[x]['created_at']
date_time_obj = datetime.datetime.strptime(date_time_str, '%Y-%m-%dT%H:%M:%S.%fZ')
milestone1=milestone2=milestone3=milestone4=""
if d[x]['milestone']=="REVIEW_CAN_START":
milestone1="X"
elif d[x]['milestone']=="REVIEW_IN_PROGRESS":
milestone2="X"
elif d[x]['milestone']=="REVIEW_COMPLETED_AND_APPROVED":
milestone3="X"
elif d[x]['milestone']=="OK_TO_BE_MERGED":
milestone4="X"
else:
pass
if d[x]['has_conflicts']==True:
conflicts = "YES"
else:
conflicts = ""
f.write(str(d[x]['iid'])+';'+ str(date_time_obj.date())+';'+ str(d[x]['author']['name'])+';'+str(d[x]['title'])+";" \
+ milestone1 +";"+ milestone2 +";"+ milestone3 +";"+ milestone4 + ";" + conflicts +"\n")
f.close()
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment