Add issue/MR state string to Project Export
What does this MR do?
Currently exported Projects that have closed issues/MRs will have opened
state on Import. This is due to a fact that state
column has been removed in favour of integer state_id
!25561 (merged) which Import/Export relied on.
Because Import/Export excludes any attribute that ends on _id
, state_id
is getting filtered out as well.
Additionaly, our unit tests did not catch that, because our fixture json files do not represent latest schema, and in fact had state
field present in them, making all tests pass. https://gitlab.com/gitlab-org/gitlab/-/blob/master/spec/fixtures/lib/gitlab/import_export/light/project.json#L55
This MR fixes the issue of state always being opened
. Adding it back to the export, using a method call, when exporting. No changes required from Import side.
Mentions #212182 (closed)
Screenshots
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team