Skip to content

Commit e941665

Browse files
committed
Updates from Jenkins update
1 parent b9dde8f commit e941665

File tree

4 files changed

+65
-33
lines changed

4 files changed

+65
-33
lines changed

getjobs.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,8 +159,17 @@ def printEnvInfoNoDataAPI(ManageProjectName, printData = True, printEnvType = Fa
159159
out, err = p.communicate()
160160
buildDirInfo = out.splitlines()
161161

162-
max_indent = min(max(len(line) - len(line.lstrip()) for line in enabledList), 8)
162+
# max_indent = min(max(len(line) - len(line.lstrip()) for line in enabledList), 8)
163163

164+
max_indent = 0
165+
veryMax = 8
166+
167+
for line in enabledList:
168+
indent = len(line) - len(line.lstrip())
169+
170+
if indent > max_indent and indent <= veryMax:
171+
max_indent = indent
172+
164173
if max_indent == 8:
165174
source_match_string = "^ [^\s]"
166175
machine_match_string = "^ [^\s]"
@@ -180,6 +189,8 @@ def printEnvInfoNoDataAPI(ManageProjectName, printData = True, printEnvType = Fa
180189
testsuite_match_string = "^ [^\s]"
181190
group_match_string = None
182191
env_match_string = "^ [^\s]"
192+
else:
193+
raise ValueError("error deciphering max_index" + str(max_indent))
183194

184195
source = None
185196
machine = None

safe_open.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,13 +47,16 @@ def new_get_file_encoding():
4747
def open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None):
4848

4949
if 'b' in mode:
50-
fd = _open(file, mode, buffering, encoding, errors, newline, closefd, opener)
50+
try:
51+
fd = _open(file, mode, buffering, encoding, errors, newline, closefd, opener)
52+
except:
53+
fd = _open(file, mode, buffering, encoding, errors, newline, closefd)
5154
else:
5255
if os.path.exists(file):
5356
encoding = new_get_file_encoding()
5457
else:
5558
encoding = "utf-8"
56-
fd = _open(file, mode, buffering, encoding, errors, newline, closefd, opener)
59+
fd = _open(file, mode, buffering, encoding, errors, newline)
5760

5861
try:
5962
yield fd

test_import.py

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,14 @@
1-
import os
1+
import os, sys
22

33
os.environ['JENKINS_URL'] = 'http://localhost:8080/'
44
os.environ['USERNAME'] = 'tms'
55
os.environ['PASSWORD'] = 'schneider'
66

7+
if sys.version_info[0] < 3:
8+
python_path_updates = os.path.join(os.environ['VECTORCAST_DIR'], "DATA", "python")
9+
sys.path.append(python_path_updates)
10+
11+
712

813
try:
914
import archive_extract_reports
@@ -34,6 +39,11 @@
3439
vc_script = os.path.join(os.environ['WORKSPACE'], "vc_scripts", "generate-results.py")
3540
import imp
3641
generate_results = imp.load_source("generate_results", vc_script)
42+
try:
43+
import parallel_build_execute
44+
except:
45+
import prevcast_parallel_build_execute as parallel_build_execute
46+
3747
import generate_lcov
3848
import generate_pclp_reports
3949
import generate_qa_results_xml
@@ -45,7 +55,6 @@
4555
import managewait
4656
import merge_vcr
4757
import patch_rgw_directory
48-
import prevcast_parallel_build_execute
4958
import safe_open
5059
import tee_print
5160
import vcast_exec

vcast_exec.py

Lines changed: 37 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,10 @@
2222
# THE SOFTWARE.
2323
#
2424

25-
import os, subprocess,argparse, glob, sys, shutil
26-
from vector.apps.DataAPI.vcproject_api import VCProjectApi
25+
import os, subprocess,argparse, glob, sys, shutil
2726

2827
from managewait import ManageWait
2928

30-
import cobertura
31-
import generate_lcov
3229
import patch_rgw_directory as rgw
3330

3431
try:
@@ -41,14 +38,17 @@
4138
vc_script = os.path.join(os.environ['WORKSPACE'], "vc_scripts", "generate-results.py")
4239
import imp
4340
generate_results = imp.load_source("generate_results", vc_script)
44-
41+
42+
if sys.version_info[0] < 3:
43+
python_path_updates = os.path.join(os.environ['VECTORCAST_DIR'], "DATA", "python")
44+
sys.path.append(python_path_updates)
45+
4546
try:
46-
import vector.apps.parallel.parallel_build_execute as parallel_build_execute
47+
import parallel_build_execute
4748
except:
4849
import prevcast_parallel_build_execute as parallel_build_execute
4950

5051
from vcast_utils import checkVectorCASTVersion, dump
51-
import generate_sonarqube_testresults
5252

5353
from enum import Enum
5454

@@ -287,12 +287,15 @@ def runLcovMetrics(self):
287287
print("XXX Cannot create LCOV metrics. Please upgrade VectorCAST\n")
288288
else:
289289
print("Creating LCOV Metrics")
290+
import generate_lcov
290291
generate_lcov.generateCoverageResults(self.FullMP, self.xml_data_dir, verbose = self.verbose, source_root = self.source_root)
291292

292293
def runCoberturaMetrics(self):
293294
if not checkVectorCASTVersion(21):
294295
print("Cannot create Cobertura metrics. Please upgrade VectorCAST")
295296
else:
297+
import cobertura
298+
296299
if self.cobertura_extended:
297300
print("Creating Extended Cobertura Metrics")
298301
else:
@@ -306,22 +309,22 @@ def runSonarQubeMetrics(self):
306309
print("Cannot create SonarQube metrics. Please upgrade VectorCAST")
307310
else:
308311
print("Creating SonarQube Metrics")
312+
import generate_sonarqube_testresults
309313
generate_sonarqube_testresults.run(self.FullMP, self.xml_data_dir)
310314

311315
def runPcLintPlusMetrics(self):
312316
print("Creating PC-lint Plus Metrics")
313-
import generate_pclp_reports
314-
os.makedirs(os.path.join(self.xml_data_dir,"pclp"))
315-
report_name = os.path.join(self.xml_data_dir,"pclp","gl-code-quality-report.json")
316-
print("PC-lint Plus Metrics file: " + report_name)
317-
generate_pclp_reports.generate_reports(self.pclp_input, output_gitlab = report_name)
318-
319-
if args.pclp_output_html:
320-
if not checkVectorCASTVersion(21):
321-
print("Cannot create PC-Lint Plus HTML report. Please upgrade VectorCAST")
322-
else:
317+
if not checkVectorCASTVersion(21):
318+
print("Cannot create PC-Lint Plus HTML report. Please upgrade VectorCAST")
319+
else:
320+
import generate_pclp_reports
321+
os.makedirs(os.path.join(self.xml_data_dir,"pclp"))
322+
report_name = os.path.join(self.xml_data_dir,"pclp","gl-code-quality-report.json")
323+
print("PC-lint Plus Metrics file: " + report_name)
324+
generate_pclp_reports.generate_reports(self.pclp_input, output_gitlab = report_name)
325+
326+
if args.pclp_output_html:
323327
print("Creating PC-lint Plus Findings")
324-
import generate_pclp_reports
325328
generate_pclp_reports.generate_html_report(self.FullMP, self.pclp_input, self.pclp_output_html)
326329

327330
def runReports(self):
@@ -341,17 +344,23 @@ def generateTestCaseMgtRpt(self):
341344
else:
342345
for file in glob.glob("management/*_management_report.html"):
343346
os.remove(file)
344-
345-
with VCProjectApi(self.FullMP) as vcprojApi:
346-
for env in vcprojApi.Environment.all():
347-
if not env.is_active:
348-
continue
349-
350-
self.needIndexHtml = True
351347

352-
report_name = env.compiler.name + "_" + env.testsuite.name + "_" + env.name + "_management_report.html"
353-
report_name = os.path.join("management",report_name)
354-
env.api.report(report_type="MANAGEMENT_REPORT", formats=["HTML"], output_file=report_name)
348+
if checkVectorCASTVersion(21):
349+
from vector.apps.DataAPI.vcproject_api import VCProjectApi
350+
351+
with VCProjectApi(self.FullMP) as vcprojApi:
352+
for env in vcprojApi.Environment.all():
353+
if not env.is_active:
354+
continue
355+
356+
self.needIndexHtml = True
357+
358+
report_name = env.compiler.name + "_" + env.testsuite.name + "_" + env.name + "_management_report.html"
359+
report_name = os.path.join("management",report_name)
360+
env.api.report(report_type="MANAGEMENT_REPORT", formats=["HTML"], output_file=report_name)
361+
else:
362+
print("Cannot create Test Case Management HTML report. Please upgrade VectorCAST")
363+
355364

356365
def exportRgw(self):
357366
rgw.updateReqRepo(VC_Manage_Project=self.FullMP, VC_Workspace=os.getcwd() , top_level=False)

0 commit comments

Comments
 (0)