Add server rendering service to enable standalone route rendering#52161
Merged
eliperelman merged 23 commits intoelastic:masterfrom Dec 29, 2019
Merged
Add server rendering service to enable standalone route rendering#52161eliperelman merged 23 commits intoelastic:masterfrom
eliperelman merged 23 commits intoelastic:masterfrom
Conversation
Contributor
|
Pinging @elastic/kibana-platform (Team:Platform) |
eliperelman
commented
Dec 4, 2019
7 tasks
Contributor
💔 Build Failed
|
pgayvallet
reviewed
Dec 4, 2019
db70d9c to
813641e
Compare
Contributor
💔 Build Failed
|
Contributor
💔 Build Failed
|
joshdover
reviewed
Dec 4, 2019
Contributor
joshdover
left a comment
There was a problem hiding this comment.
A few issues I noticed:
- The Kibana logo is missing on the bootstrap loading page spinner
- The frontend fails to boot with this error:
A legacy application is already registered with the id "siem"(I'm guessing you already noticed this one though)
kobelb
reviewed
Dec 5, 2019
mshustov
reviewed
Dec 6, 2019
mshustov
reviewed
Dec 6, 2019
mshustov
reviewed
Dec 6, 2019
mshustov
reviewed
Dec 6, 2019
mshustov
reviewed
Dec 6, 2019
mshustov
reviewed
Dec 6, 2019
mshustov
reviewed
Dec 6, 2019
mshustov
reviewed
Dec 6, 2019
64c967e to
becf2bb
Compare
Contributor
💔 Build FailedTo update your PR or re-run it, just comment with: |
Contributor
💚 Build SucceededTo update your PR or re-run it, just comment with: |
eliperelman
added a commit
to eliperelman/kibana
that referenced
this pull request
Dec 29, 2019
…astic#52161) * Add server rendering service to enable standalone route rendering * Update renovate config * Move legacy rendering functionality to legacy service * Use config for exposed variable in new platform * Lint changes from rebase * Rebase artifact * Remove RenderingProvider, add tests for legacy vars implementation, review notes * Add UI app functionality to legacy service * Update rendering snapshots * Update docs * Fix up functional tests * Clean up legacy types * Revise types from reverting injected metadata changes * Update translations and broken tests * Mock legacy internals in legacy tests * Add missing doc types * Rename InternalRenderOptions to LegacyRenderOptions * Remove extraneous legacy exports, review nits * Functional tests fixes * Rebase, attempt CI test fixes * Only allow specified appIds in testbed rendering integration test * Update snapshot names * Review nits
eliperelman
added a commit
that referenced
this pull request
Dec 29, 2019
…2161) (#53832) * Add server rendering service to enable standalone route rendering * Update renovate config * Move legacy rendering functionality to legacy service * Use config for exposed variable in new platform * Lint changes from rebase * Rebase artifact * Remove RenderingProvider, add tests for legacy vars implementation, review notes * Add UI app functionality to legacy service * Update rendering snapshots * Update docs * Fix up functional tests * Clean up legacy types * Revise types from reverting injected metadata changes * Update translations and broken tests * Mock legacy internals in legacy tests * Add missing doc types * Rename InternalRenderOptions to LegacyRenderOptions * Remove extraneous legacy exports, review nits * Functional tests fixes * Rebase, attempt CI test fixes * Only allow specified appIds in testbed rendering integration test * Update snapshot names * Review nits
gmmorris
added a commit
to gmmorris/kibana
that referenced
this pull request
Dec 30, 2019
* master: Allow chromeless applications to render via non-/app routes (elastic#51527) Add server rendering service to enable standalone route rendering (elastic#52161)
jloleysens
added a commit
to jloleysens/kibana
that referenced
this pull request
Dec 30, 2019
…le-saved-objects * 'master' of github.com:elastic/kibana: (250 commits) Allow chromeless applications to render via non-/app routes (elastic#51527) Add server rendering service to enable standalone route rendering (elastic#52161) Possibility to filter when testing scripted fields (elastic#35379) (elastic#44220) Update maps telemetry mappings to account for recent updates (elastic#53803) [Maps] Only show legend when layer is visible (elastic#53781) remove use of experimental fs.promises api (elastic#53346) [APM] Add log statements for flaky test (elastic#53775) [APM] Transaction page throws unhandled exception if transactions doesn't have `http.request` (elastic#53760) Licensing plugin functional tests (elastic#53580) [Lens] Disable saving visualization until there are no changes to the document (elastic#52982) [Monitoring] Added safeguard for some EUI components (elastic#53318) [Vega] Shim new platform - cleanup vega_visualization dependencies (elastic#53605) Display changed field formats without requiring hard page refresh. (elastic#53746) Upgrade EUI to v17.3.1 (elastic#53655) [APM] Fix missing apm indicies (elastic#53541) Disable inspector for timelion (elastic#53747) Clean up search servie (elastic#53701) [Dashboard] Grid: removing double handler (elastic#53707) Remove SavedObjectRegistryProvider from codebase (elastic#53455) Move ui/courier into data shim plugin (elastic#52359) ...
gmmorris
added a commit
to gmmorris/kibana
that referenced
this pull request
Jan 2, 2020
…ris/kibana into alerting/created_at-and-updated_at * 'alerting/created_at-and-updated_at' of github.com:gmmorris/kibana: Allow chromeless applications to render via non-/app routes (elastic#51527) Add server rendering service to enable standalone route rendering (elastic#52161)
jkelastic
pushed a commit
to jkelastic/kibana
that referenced
this pull request
Jan 8, 2020
…astic#52161) * Add server rendering service to enable standalone route rendering * Update renovate config * Move legacy rendering functionality to legacy service * Use config for exposed variable in new platform * Lint changes from rebase * Rebase artifact * Remove RenderingProvider, add tests for legacy vars implementation, review notes * Add UI app functionality to legacy service * Update rendering snapshots * Update docs * Fix up functional tests * Clean up legacy types * Revise types from reverting injected metadata changes * Update translations and broken tests * Mock legacy internals in legacy tests * Add missing doc types * Rename InternalRenderOptions to LegacyRenderOptions * Remove extraneous legacy exports, review nits * Functional tests fixes * Rebase, attempt CI test fixes * Only allow specified appIds in testbed rendering integration test * Update snapshot names * Review nits
Contributor
💔 Build FailedTo update your PR or re-run it, just comment with: |
2 tasks
Contributor
|
@eliperelman It seems like there is a small typo in your dev docs example - 'content-security-policy': context.core.http.csp.header,should actually be 'content-security-policy': core.http.csp.header,At least that's what the types say. Could you confirm? |
This was referenced Feb 13, 2020
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Introduces a new backend application service which exposes rendering ability from a registered provider. The new server rendering service exposes a
RenderingProviderto core for contextual rendering access during an HTTP request:await context.core.rendering.render(). This can be used directly as the content (i.e. response body) for a bootstrapped page.Blocks #51527.
TODO
bootstrap.jsendpointChecklist
Use
strikethroughsto remove checklist items you don't feel are applicable to this PR.This was checked for cross-browser compatibility, including a check against IE11Any text added follows EUI's writing guidelines, uses sentence case text and includes i18n supportThis was checked for keyboard-only and screenreader accessibilityFor maintainers
Dev Docs
Render a bootstrapped HTML page from a route handler using the
RenderingServicefrom your server plugin: