Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add new "references" attribute to saved objects for relationships #28199

Merged
merged 65 commits into from Jan 30, 2019

Conversation

mikecote
Copy link
Contributor

@mikecote mikecote commented Jan 7, 2019

Summary

Fixes #28377
Fixes #27210

This implements the saved object relationships proposed here #27210.

A new attribute is added to the saved objects structure called references. This is an array of {type, id, name} that will contain all external references a given saved object has.

The saved object courier class will add index patterns to the references array and have pre save / post read hooks allow injecting and extracting references for the new array.

Converted apps include: dashboard, visualization, search and graph.

Other changes in this PR

  • Modified the management relationships API to use new references
  • Modified the dashboard export API to use new references
  • The management relationships API will no longer pluralize the results by type. (ex { searches: [] } becomes { search: [] })
  • Added extractReferences and injectReferences capabilities to the saved object UI class.
  • Visualizations is ready to display saved searches and index patterns once they are converted to use references attribute.
  • Modified current saved object import / export to handle references
  • Converts dashboard, visualization, search and graph to use the new feature

@mikecote mikecote added WIP Work in progress Team:Core Core services & architecture: plugins, logging, config, saved objects, http, ES client, i18n, etc v7.0.0 enhancement New value added to drive a business result labels Jan 7, 2019
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-platform

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

Copy link
Contributor

@spalger spalger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a couple nits, mostly superficial, but functions great and looks really good!

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@elasticmachine

This comment has been minimized.

@mikecote mikecote requested a review from spalger January 30, 2019 17:30
Copy link
Contributor

@spalger spalger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes LGTM

@elasticmachine
Copy link
Contributor

💚 Build Succeeded

@epixa
Copy link
Member

epixa commented Feb 4, 2019

This is a breaking change, right? Can you add the breaking change label and update the breaking change documentation?

@mikecote
Copy link
Contributor Author

mikecote commented Feb 4, 2019

@epixa correct, I will update the documentation 👍

@elasticmachine
Copy link
Contributor

💚 Build Succeeded

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
release_note:breaking review Team:Core Core services & architecture: plugins, logging, config, saved objects, http, ES client, i18n, etc v7.0.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants