Project

General

Profile

action #115733

Updated by cdywan 5 months ago

## Observation

```
Traceback (most recent call last):
File "./qem-bot/bot-ng.py", line 7, in <module>
main()
File "/builds/qa-maintenance/bot-ng/qem-bot/openqabot/main.py", line 41, in main
sys.exit(cfg.func(cfg))
File "/builds/qa-maintenance/bot-ng/qem-bot/openqabot/args.py", line 41, in do_sync_smelt
syncer = SMELTSync(args)
File "/builds/qa-maintenance/bot-ng/qem-bot/openqabot/smeltsync.py", line 19, in __init__
self.incidents = get_incidents(get_active_incidents())
File "/builds/qa-maintenance/bot-ng/qem-bot/openqabot/loader/smelt.py", line 50, in get_active_incidents
active.update(x["node"]["incidentId"] for x in incidents["edges"])
TypeError: 'NoneType' object is not subscriptable
```

See the [pipeline logs](https://gitlab.suse.de/qa-maintenance/bot-ng/-/jobs/1111813) for details.

## Acceptance criteria
* **AC1:** A good error message is shown



## Suggestions
* The issue occurred during the maintenance window:
- Implement deployment freeze
Research if there was a change in the GitLab pipeline to avoid running the pipeline during the maintenance window (see https://gitlab.suse.de/qa-maintenance/bot-ng/-/merge_requests/54) what smelt is returning
* Check more carefully what smelt is returning
* Improve error handling in case of unexpected data e.g. in the easiest case at least handle the exception and show the data that was not parsed correctly
* Add unit tests covering this type of data

Back