Skip to content

Add issue resource_iteration_events to Project Import/Export

What does this MR do and why?

This MR:

  • Adds issue iteration to Export in order to map it on Export
  • Adds resource_iteration_events information to issues in order to show interation related events on issues

This information is require in order to accurately show iteration burn down/up charts.

There are a few limitations:

  • Skip iteration or resource_iteration_event when importing, if a project is being imported to a namespace and not a group. According to our documentation (and model validations) iterations are currently not allowed to be created on a project level
  • When project is imported to a group, we only try to map existing iterations to issues without trying to create them if no iteration was found. This is because iteration cadence is required to be associated with an iteration which we cannot create within ObjectBuilder. Skip creating iterations, at least for now
  • For resource_iteration_event, after we've built the object but the iteration is nil, do not save it, as such object is invalid. It's allowed to persist such object, but if we open this issue in the UI, it will fail to load all comments

Mentions #291983 (closed)

Screenshots or screen recordings

iterations1

How to set up and validate locally

  1. Create a group and a project in it
  2. In a group, create iteration cadences with iterations
  3. In a project, create a new issue
  4. Assign one of iterations to an issue a few times in order to generate resource_iteration_events
  5. Export the project (in General -> Advanced settings)
  6. Download exported project tar.gz file
  7. Import the project using exported project tar.gz file into the same group that has iteration cadences.
  8. Verify imported issue has preserved iteration events
  9. Verify issue has iteration associated with it

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by George Koltsov

Merge request reports

Loading