Skip to content

Fix the project auto devops API

What does this MR do?

If project_auto_devops.enabled is nil for a project, when setting any auto devops values via the API, we try to create a new row in the DB, instead of re-using the existing one. This leads to the project_id being set to nil, and the database NOT NULL constraint leading to a 500 response.

This commit resolves the issue by correctly detecting the presence of a ProjectAutoDevops row and re-using it. Persistence is also moved away from explicit update! calls and into relying on autosave: true on the model.

Does this MR meet the acceptance criteria?

Conformity

Performance and testing

Related to #64731 (closed)

Edited by Mayra Cabrera

Merge request reports