Skip to content

Commit ccffdb5

Browse files
GSVarshapvital
authored andcommitted
currency: Add new libraries to report
- fix warnings Signed-off-by: Varsha GS <[email protected]>
1 parent a9c7a91 commit ccffdb5

File tree

2 files changed

+49
-44
lines changed

2 files changed

+49
-44
lines changed

.tekton/.currency/docs/report.md

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -3,31 +3,33 @@
33
| Package name | Support Policy | Beta version | Last Supported Version | Latest version | Up-to-date | Release date | Latest Version Published At | Days behind | Cloud Native |
44
|:---------------------|:-----------------|:---------------|:-------------------------|:-----------------|:-------------|:---------------|:------------------------------|:--------------|:---------------|
55
| ASGI | 45-days | No | 3.0 | 3.0 | Yes | 2019-03-04 | 2019-03-04 | 0 day/s | No |
6-
| Celery | 45-days | No | 5.5.3 | 5.5.3 | Yes | 2025-06-01 | 2025-06-01 | 0 day/s | No |
7-
| Django | 45-days | No | 5.2.3 | 5.2.3 | Yes | 2025-06-10 | 2025-06-10 | 0 day/s | No |
8-
| FastAPI | 45-days | No | 0.115.12 | 0.115.12 | Yes | 2025-03-23 | 2025-03-23 | 0 day/s | No |
9-
| Flask | 45-days | No | 3.1.1 | 3.1.1 | Yes | 2025-05-13 | 2025-05-13 | 0 day/s | No |
6+
| WSGI | 0-day | Yes | 1.0.1 | 1.0.1 | Yes | 2010-09-26 | 2010-09-26 | 0 day/s | No |
7+
| Django | 45-days | No | 5.2.7 | 5.2.7 | Yes | 2025-10-01 | 2025-10-01 | 0 day/s | No |
8+
| FastAPI | 45-days | No | 0.118.0 | 0.118.0 | Yes | 2025-09-29 | 2025-09-29 | 0 day/s | No |
9+
| Flask | 45-days | No | 3.1.2 | 3.1.2 | Yes | 2025-08-19 | 2025-08-19 | 0 day/s | No |
1010
| Pyramid | 45-days | No | 2.0.2 | 2.0.2 | Yes | 2023-08-25 | 2023-08-25 | 0 day/s | No |
1111
| Sanic | On demand | No | 25.3.0 | 25.3.0 | Yes | 2025-03-31 | 2025-03-31 | 0 day/s | No |
12-
| Starlette | 45-days | No | 0.47.0 | 0.47.0 | Yes | 2025-05-29 | 2025-05-29 | 0 day/s | No |
13-
| Tornado | 45-days | No | 6.5.1 | 6.5.1 | Yes | 2025-05-22 | 2025-05-22 | 0 day/s | No |
14-
| Webapp2 | On demand | No | 2.5.2 | 2.5.2 | Yes | 2012-09-28 | 2012-09-28 | 0 day/s | No |
15-
| WSGI | 0-day | Yes | 1.0.1 | 1.0.1 | Yes | 2010-09-26 | 2010-09-26 | 0 day/s | No |
16-
| Aiohttp | 45-days | No | 3.12.13 | 3.12.13 | Yes | 2025-06-14 | 2025-06-14 | 0 day/s | No |
17-
| Asynqp | Deprecated | No | 0.6 | 0.6 | Yes | 2019-01-20 | 2019-01-20 | 0 day/s | No |
18-
| Boto3 | 45-days | No | 1.38.36 | 1.38.36 | Yes | 2025-06-12 | 2025-06-12 | 0 day/s | Yes |
19-
| Google-cloud-pubsub | 45-days | No | 2.30.0 | 2.30.0 | Yes | 2025-06-09 | 2025-06-09 | 0 day/s | Yes |
20-
| Google-cloud-storage | 45-days | No | 3.1.0 | 3.1.0 | Yes | 2025-02-28 | 2025-02-28 | 0 day/s | Yes |
21-
| Grpcio | 45-days | No | 1.73.0 | 1.73.0 | Yes | 2025-06-09 | 2025-06-09 | 0 day/s | Yes |
12+
| Starlette | 45-days | No | 0.48.0 | 0.48.0 | Yes | 2025-09-13 | 2025-09-13 | 0 day/s | No |
13+
| Tornado | 45-days | No | 6.5.2 | 6.5.2 | Yes | 2025-08-08 | 2025-08-08 | 0 day/s | No |
14+
| Aiohttp | 45-days | No | 3.13.0 | 3.13.0 | Yes | 2025-10-06 | 2025-10-06 | 0 day/s | No |
15+
| Httpx | 45-days | No | 0.28.1 | 0.28.1 | Yes | 2024-12-06 | 2024-12-06 | 0 day/s | No |
16+
| Requests | 45-days | No | 2.32.5 | 2.32.5 | Yes | 2025-08-18 | 2025-08-18 | 0 day/s | No |
17+
| Urllib3 | 45-days | No | 2.5.0 | 2.5.0 | Yes | 2025-06-18 | 2025-06-18 | 0 day/s | No |
18+
| Grpcio | 45-days | No | 1.75.1 | 1.75.1 | Yes | 2025-09-26 | 2025-09-26 | 0 day/s | Yes |
19+
| Cassandra-driver | 45-days | No | 3.29.2 | 3.29.2 | Yes | 2024-09-10 | 2024-09-10 | 0 day/s | No |
2220
| Mysqlclient | 45-days | No | 2.2.7 | 2.2.7 | Yes | 2025-01-10 | 2025-01-10 | 0 day/s | Yes |
23-
| Pika | 45-days | No | 1.3.2 | 1.3.2 | Yes | 2023-05-05 | 2023-05-05 | 0 day/s | No |
24-
| PyMySQL | 45-days | No | 1.1.1 | 1.1.1 | Yes | 2024-05-21 | 2024-05-21 | 0 day/s | Yes |
25-
| Pymongo | 45-days | No | 4.13.1 | 4.13.1 | Yes | 2025-06-11 | 2025-06-11 | 0 day/s | Yes |
21+
| PyMySQL | 45-days | No | 1.1.2 | 1.1.2 | Yes | 2025-08-24 | 2025-08-24 | 0 day/s | Yes |
22+
| Pymongo | 45-days | No | 4.15.3 | 4.15.3 | Yes | 2025-10-07 | 2025-10-07 | 0 day/s | Yes |
2623
| Psycopg2 | 45-days | No | 2.9.10 | 2.9.10 | Yes | 2024-10-16 | 2024-10-16 | 0 day/s | No |
27-
| Redis | 45-days | No | 6.2.0 | 6.2.0 | Yes | 2025-05-28 | 2025-05-28 | 0 day/s | Yes |
28-
| Requests | 45-days | No | 2.32.4 | 2.32.4 | Yes | 2025-06-09 | 2025-06-09 | 0 day/s | Yes |
29-
| SQLAlchemy | 45-days | No | 2.0.41 | 2.0.41 | Yes | 2025-05-14 | 2025-05-14 | 0 day/s | Yes |
30-
| Urllib3 | 45-days | No | 2.4.0 | 2.4.0 | Yes | 2025-04-10 | 2025-04-10 | 0 day/s | No |
31-
| Spyne | 45-days | No | 2.14.0 | 2.14.0 | Yes | 2022-02-03 | 2022-02-03 | 0 day/s | No |
32-
| Aio-pika | 45-days | No | 9.5.5 | 9.5.5 | Yes | 2025-02-26 | 2025-02-26 | 0 day/s | No |
24+
| Redis | 45-days | No | 6.4.0 | 6.4.0 | Yes | 2025-08-07 | 2025-08-07 | 0 day/s | Yes |
25+
| SQLAlchemy | 45-days | No | 2.0.43 | 2.0.43 | Yes | 2025-08-11 | 2025-08-11 | 0 day/s | Yes |
3326
| Aioamqp | 45-days | No | 0.15.0 | 0.15.0 | Yes | 2022-04-05 | 2022-04-05 | 0 day/s | No |
27+
| Aio-pika | 45-days | No | 9.5.7 | 9.5.7 | Yes | 2025-08-05 | 2025-08-05 | 0 day/s | No |
28+
| Confluent-kafka | 45-days | No | 2.11.1 | 2.11.1 | Yes | 2025-08-18 | 2025-08-18 | 0 day/s | No |
29+
| Kafka-python-ng | 45-days | No | 2.2.3 | 2.2.3 | Yes | 2024-10-02 | 2024-10-02 | 0 day/s | No |
30+
| Pika | 45-days | No | 1.3.2 | 1.3.2 | Yes | 2023-05-05 | 2023-05-05 | 0 day/s | No |
31+
| Boto3 | 45-days | No | 1.40.47 | 1.40.47 | Yes | 2025-10-07 | 2025-10-07 | 0 day/s | Yes |
32+
| Google-cloud-pubsub | 45-days | No | 2.31.1 | 2.31.1 | Yes | 2025-07-28 | 2025-07-28 | 0 day/s | Yes |
33+
| Google-cloud-storage | 45-days | No | 3.4.0 | 3.4.0 | Yes | 2025-09-15 | 2025-09-15 | 0 day/s | Yes |
34+
| Gevent | On demand | No | 25.9.1 | 25.9.1 | Yes | 2025-09-17 | 2025-09-17 | 0 day/s | No |
35+
| Celery | 45-days | No | 5.5.3 | 5.5.3 | Yes | 2025-06-01 | 2025-06-01 | 0 day/s | No |

.tekton/.currency/scripts/generate_report.py

Lines changed: 24 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ def get_upstream_version(dependency, last_supported_version):
3131
last_supported_version_release_date = "Not found"
3232
if dependency in SPEC_MAP:
3333
# webscrape info from official website
34-
version_pattern = "(\d+\.\d+\.?\d*)"
34+
version_pattern = r"(\d+\.\d+\.?\d*)"
3535
latest_version_release_date = ""
3636

3737
url = SPEC_MAP[dependency]
@@ -181,17 +181,17 @@ def process_taskrun_logs(
181181
f"Retrieving container logs from the successful taskrun pod {pod_name} of taskrun {taskrun_name}.."
182182
)
183183
if task_name == "python-tracer-unittest-gevent-starlette-task":
184-
match = re.search("Successfully installed .* (starlette-[^\s]+)", logs)
185-
tekton_ci_output += f"{match[1]}\n"
186-
elif task_name == "python-tracer-unittest-googlecloud-task":
187-
match = re.search(
188-
"Successfully installed .* (google-cloud-storage-[^\s]+)", logs
189-
)
184+
match = re.search(r"Successfully installed .*(gevent-[^\s]+) .* (starlette-[^\s]+)", logs)
185+
tekton_ci_output += f"{match[1]}\n{match[2]}\n"
186+
elif task_name == "python-tracer-unittest-kafka-task":
187+
match = re.search(r"Successfully installed .*(confluent-kafka-[^\s]+) .* (kafka-python-ng-[^\s]+)", logs)
188+
tekton_ci_output += f"{match[1]}\n{match[2]}\n"
189+
elif task_name == "python-tracer-unittest-cassandra-task":
190+
match = re.search(r"Successfully installed .*(cassandra-driver-[^\s]+)", logs)
190191
tekton_ci_output += f"{match[1]}\n"
191192
elif task_name == "python-tracer-unittest-default-task":
192-
for line in logs.splitlines():
193-
if "Successfully installed" in line:
194-
tekton_ci_output += line
193+
lines = re.findall(r"^Successfully installed .*", logs, re.M)
194+
tekton_ci_output += "\n".join(lines)
195195
break
196196
else:
197197
print(
@@ -202,36 +202,39 @@ def process_taskrun_logs(
202202

203203
def get_tekton_ci_output():
204204
"""Get the latest successful scheduled tekton pipeline output"""
205+
# # To run locally
205206
# config.load_kube_config()
207+
208+
## To run inside the tekton kubernetes cluster
206209
config.load_incluster_config()
207210

208211
namespace = "default"
209212
core_v1_client = client.CoreV1Api()
210213

211-
task_name = "python-tracer-unittest-gevent-starlette-task"
212214
taskrun_filter = lambda tr: tr["status"]["conditions"][0]["type"] == "Succeeded" # noqa: E731
215+
216+
task_name = "python-tracer-unittest-gevent-starlette-task"
213217
starlette_taskruns = get_taskruns(namespace, task_name, taskrun_filter)
214218

215219
tekton_ci_output = process_taskrun_logs(
216220
starlette_taskruns, core_v1_client, namespace, task_name, ""
217221
)
218222

219-
task_name = "python-tracer-unittest-googlecloud-task"
220-
taskrun_filter = ( # noqa: E731
221-
lambda tr: tr["metadata"]["name"].endswith("unittest-googlecloud-0")
222-
and tr["status"]["conditions"][0]["type"] == "Succeeded"
223+
task_name = "python-tracer-unittest-kafka-task"
224+
kafka_taskruns = get_taskruns(namespace, task_name, taskrun_filter)
225+
226+
tekton_ci_output = process_taskrun_logs(
227+
kafka_taskruns, core_v1_client, namespace, task_name, tekton_ci_output
223228
)
224-
googlecloud_taskruns = get_taskruns(namespace, task_name, taskrun_filter)
229+
230+
task_name = "python-tracer-unittest-cassandra-task"
231+
cassandra_taskruns = get_taskruns(namespace, task_name, taskrun_filter)
225232

226233
tekton_ci_output = process_taskrun_logs(
227-
googlecloud_taskruns, core_v1_client, namespace, task_name, tekton_ci_output
234+
cassandra_taskruns, core_v1_client, namespace, task_name, tekton_ci_output
228235
)
229236

230237
task_name = "python-tracer-unittest-default-task"
231-
taskrun_filter = ( # noqa: E731
232-
lambda tr: tr["metadata"]["name"].endswith("unittest-default-3")
233-
and tr["status"]["conditions"][0]["type"] == "Succeeded"
234-
)
235238
default_taskruns = get_taskruns(namespace, task_name, taskrun_filter)
236239

237240
tekton_ci_output = process_taskrun_logs(

0 commit comments

Comments
 (0)