Skip to content

Commit ac587ec

Browse files
Roman Plevkarplevka
Roman Plevka
authored andcommitted
update shovel script to skip resources with unreachable jenkins job
1 parent 8db1d9c commit ac587ec

File tree

1 file changed

+12
-17
lines changed

1 file changed

+12
-17
lines changed

scripts/shovel/shovel.py

+12-17
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import json
21
import requests
32
import time
43
import urllib3
@@ -43,22 +42,12 @@ def parse_jenkins_job(correlation_id):
4342
if j.get("_class") == "hudson.model.ParametersAction"
4443
]
4544
try:
46-
job_params = job_param_actions[0]["parameters"]
47-
umb_message_params = [
48-
i["value"] for i in job_params if i["name"] == "CI_MESSAGE"
49-
]
45+
job_params_list = job_param_actions[0]["parameters"]
46+
job_params_dict = {p["name"]: p["value"] for p in job_params_list}
5047
except IndexError():
5148
log.error(f"no action of parameter type found for the given job: {jenkins_url}")
5249
raise
53-
try:
54-
# gotta replace single quotes with double quotes to make it a valid json :(
55-
umb_message = json.loads(umb_message_params[0].replace("'", '"'))
56-
except IndexError():
57-
log.error(
58-
f"error: no CI_MESSAGE parameters found for the given job: {jenkins_url}"
59-
)
60-
raise
61-
sat_ver = f'{umb_message["satellite_version"]}-{umb_message["snap_version"]}'
50+
sat_ver = f'{job_params_dict["sat_version"]}-{job_params_dict["snap_version"]}'
6251
jenkins_job_cache[correlation_id] = sat_ver
6352
return sat_ver
6453

@@ -105,9 +94,15 @@ def parse_jenkins_job(correlation_id):
10594
payload_template = settings.rekuper[resource].payload.to_dict()
10695
for m in metrics:
10796
# try to fetch the sat ver params from jenkins first
108-
job_sat_version = parse_jenkins_job(
109-
m[0][payload_template["jenkins_url"]]
110-
)
97+
try:
98+
job_sat_version = parse_jenkins_job(
99+
m[0][payload_template["jenkins_url"]]
100+
)
101+
except Exception as e:
102+
log.warning(
103+
f"failed to parse jenkins job parameters for {m[0][payload_template["jenkins_url"]]}: {e}"
104+
)
105+
continue
111106
payload = {
112107
"job_sat_version": job_sat_version,
113108
"first_seen": m[1][0],

0 commit comments

Comments
 (0)