- Adds a check to aiops API endpoints to only allow requests with active platinum license.
- Adds integration tests for basic license where the endpoints should return permission denied.
- Improved error handling:
- Low level errors (like a non valid argument pushed to a stream) will now be logged to Kibana server's console, because the way HTTP streams work we cannot really emit a useful error to an already running stream to the client. So the stream will just abort but Kibana server will log an error.
- Higher level errors on the application level (like when we find out an index does not exist to run the analysis) will be pushed to the stream now as an error type action and we can update the UI accordingly. Note this PR only updates the API and corresponding tests to support this, the UI doesn't make use of it yet.
* [ftr] automatically determine config run order
* split lens config into two groups
* support ftr configs always running against CI
* Split detection_engine_api_integration rule exception list tests
* Add configs from previous commit
* [ftr] remove testMetadata and maintain a unique lifecycle instance per run
* Revert "[ftr] remove testMetadata and maintain a unique lifecycle instance per run"
This reverts commit d2b4fdb824.
* Split alerting_api_integration/security_and_spaces tests
* Add groups to yaml
* Revert "Revert "[ftr] remove testMetadata and maintain a unique lifecycle instance per run""
This reverts commit 56232eea68.
* stop ES more forcefully and fix timeout
* only cleanup lifecycle phases when the cleanup is totally complete
* only use kill when cleaning up an esTestInstance
* fix broken import
* fix runOptions.alwaysUseSource implementation
* fix config access
* fix x-pack/ccs config
* fix ml import file paths
* update kibana build id
* revert array.concat() change
* fix baseConfig usage
* fix pie chart data
* split up maps tests
* pull in all of group5 so that es archives are loaded correctly
* add to ftr configs.yml
* fix pie chart data without breaking legacy version
* fix more pie_chart stuff in new vis lib
* restore normal PR tasks
* bump kibana-buildkite-library
* remove ciGroup validation
* remove the script which is no longer called from checks.sh
* [CI] Auto-commit changed files from 'yarn kbn run build -i @kbn/pm'
* adapt flaky test runner scripts to handle ftrConfig paths
* fix types in alerting_api_integration
* improve flaky config parsing and use non-local var name for passing explicit configs to ftr_configs.sh
* Split xpack dashboard tests
* Add configs
* [flaky] remove key from ftr-config steps
* [CI] Auto-commit changed files from 'node scripts/eslint --no-cache --fix'
* restore cypress builds
* remove ciGroups from FTR config files
* fixup some docs
* add temporary script to hunt for FTR config files
* use config.base.js naming for clarity
* use script to power ftr_configs.yml
* remove usage of removed x-pack/scripts/functional_tests
* fix test names in dashboard snapshots
* bump kibana-buildkite-library
* Try retrying only failed configs
* be a little quieter about trying to get testStats from configs with testRunners defined
* Remove test code
* bump kibana-buildkite-library
* update es_snapshot and on_merge jobs too
* track duration and exit code for each config and print it at the end of the script
* store results in order, rather than by key, in case there are duplicates in $config
* bash is hard
* fix env source and use +e rather than disabling e for whole file
* bash sucks
* print config summary in jest jobs too
* define results in jest_parallel.sh
* simplify config summary print, format times a little better
* fix reference to unbound time variable, use better variable name
* skip the newline between each result
* finish with the nitpicking
* sync changes with ftr_configs.sh
* refuse to execute config files which aren't listed in the .buildkite/ftr_configs.yml
* fix config.edge.js base config import paths
* fix some readmes
* resolve paths from ftr_configs manifest
* fix readConfigFile tests
* just allow __fixtures__ configs
* list a few more cypress config files
* install the main branch of kibana-buildkite-library
* split up lens group1
* move ml data_visualizer tests to their own config
* fix import paths
* fix more imports
* install specific commit of buildkite-pipeline-library
* sort configs in ftr_configs.yml
* bump kibana-buildkite-library
* remove temporary script
* fix env var for limiting config types
* Update docs/developer/contributing/development-functional-tests.asciidoc
Co-authored-by: Christiane (Tina) Heiligers <christiane.heiligers@elastic.co>
* produce a JUnit report for saved objects field count
* apply standard concurrency limits from flaky test runner
* support customizing FTR concurrency via the env
Co-authored-by: Brian Seeders <brian.seeders@elastic.co>
Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Christiane (Tina) Heiligers <christiane.heiligers@elastic.co>
* [ML] Initial embed
* [ML] Initial embed props
* [ML] Add top nav link to data viz
* Add visible fields
* Add add data service to register links
* Renames, refactor, use constants
* Renames, refactor, use constants
* Update tests and mocks
* Embeddable
* Update hook to update upon time udpate
* Add filter support to query
* Refactor filter utilities
* Add filter support for embeddable
* Fix saved search data undefined
* Prototype aggregated view/document view switcher
* Prototype flyout
* Prototype save document view option in storage
* Fix filter and query conflict with saved search
* Minor styling edits
* [ML] Initial embed
* [ML] Initial embed props
* Add embeddable 1
* Add visible fields
* Embeddable 2
* Add filter support to query
* Refactor filter utilities
* Add filter support for embeddable
* Fix saved search data undefined
* Prototype aggregated view/document view switcher
* Prototype flyout
* Prototype save document view option in storage
* Fix filter and query conflict with saved search
* Minor styling edits
* Fix missing code after conflicts
* Remove dv locator and flyout
* Make types happy
* Fix types
* Rename toggle option
* Resolve conflicts
* [ML] Reduce size of chart
* [ML] Unbold name, switch icons of show distributions
* [ML] Make size consistent
* [ML] Make page size 25
* [ML] Switch to arrow right and down
* [ML] Make legend font smaller
* [ML] Add user setting
* [ML] Add show preview by default setting
* [ML] Match icon
* Add panels around the subcontent
* Add preference for aggregated vs doc
* Fix types
* Fix types, add constants for adv settings
* Change to data view type
* Temp fix for Kibana/EUI table overflow issue
* Modify line height so text is not cut off, modify widths for varying screen sizes
* Different width padders for different screens
* Fix CI
* Merge latest, move button to the right
* Fix width for bar charts previews
* Fix toggle buttons, fix maps
* Delete unused file
* Fix boolean styling
* Change to enum, discover mode
* Hide field stats
* Hide field stats
* Persist show mini preview/distribution settings
* Remove window size, use size observer instead
* Default to document view
* Remove bold, switch icon
* Set fixed width for top values, reduce font size in table
* Fix custom url tests
* Update width styling for panels
* Fix missing flag for Discover sidebar, jest tests
* Fix max width
* Workaround for sorting
* Fix import
* Fix styling
* Make height uniform, center alignment, fix map and keyword map not same size
Move styling
* Revert "Make height uniform, center alignment, fix map and keyword map not same size"
This reverts commit 8fc42e2f
* Revert "Make height uniform, center alignment, fix map and keyword map not same size"
This reverts commit 8fc42e2f
* Uniform height, left aligned, flex grid
* Switch top values to have labels
* Center content
* Replace fixed widths with percentage
* Fix table missing field types
* Add dashboard embeddable and filter support
* Fix file data viz styling and tests, lean up imports, remove hard coded pixels
* Add search panel/kql filter bar
* Temporarily fix scrolling
* New kql filters for data visualizer
* Set map height so it will fit the sampler shard size text
* Use eui progress labels
* Fix spacer
* Add beta badge
* Temporarily fix scrolling
* Fix grow for Top Values for
* [ML] Update functional tests to reflect new arrow icons
* [ML] Add filter buttons and KQL bars
* [ML] Update filter bar onChange behavior
* [ML] Update top values filter onChange behavior
* [ML] Update search filters when opening saved search
* [ML] Clean up
* [ML] Remove fit content for height
* [ML] Fix boolean legend
* [ML] Fix header section when browser width is small to large and when index pattern title is too large
* [ML] Hide expander icon when dimension is xs or s & css fixes
* [ML] Delete embeddables because they are not use
* [ML] Rename view mode, refactor to separate hook, add error prompt if can't show, rename wrapper, clean up & fix tests
* [ML] Make doc count 0 for empty fields, update t/f test
* [ML] Add unit testing for search utils
* Fix missing unsubscribe for embeddable output
* Remove redundant onAddFilter for this PR, fix width
* Rename Field Stats to Field stats to match convention
* [ML] Fix expand all/collapse all behavior to override individual setting
* [ML] Fix functional tests should be 0/0%
* [ML] Fix docs content spacing, rename classnames, add filters to Discover, lens, and maps
* [ML] Fix doc count for fields that exists but have no stats
* [ML] Fix icon styling to match Discover but have text/keyword/histogram
* [ML] Fix doc count for fields that exists but have no stats
* [ML] Rename classnames to BEM style
* Resolve latest changes
* Add in place ss
* Refactor helper functions
* Refactor helper functions
* Add error log
* Migrate overall stats to data's search
* Better handle errors
* Fix url so restore session brings back correct view
* Add progress bar
* [ML] Add tests for data viz in Discover
* [ML] Change to combinelatest
* Update tests & dashboard behavior to reflect new advanced settings
* Update telemetry
* Remove workaround after eui bump fix
* Remove dataloader
* Snapshot
* Migrate search to client side
* Consolidate types
* Change back to forkjoin instead of combinelatest for overallstats
* Fix missing bool clause
* Add login
* Fix saved search attributes broken with latest changes
* Update tests
* Fix import
* Match the no results found
* Reset field stats so it reloads when query is refreshed
* Reset field stats so it reloads when query is refreshed
* Add doc stats
* Merge to use hook completely
* Merge to use hook completely
* Fix doc chart doesn't show up when page is first mounted
* Fix Discover auto refresh previously didn't update
* Fix query util to return search source's results right away. Fix texts.
* Refactor documentStats
* Fix doc stats not showing upon page mount
* Fix types
* Delete old files
* Update tests & i18n
* Fix examples, tests
* Remove old files & routes
* Add telemetry, clean up, rename components for clarity
* Fix size of callout message
* Fix texts field
* Consolidate field type
* Consolidate field type, add count to top values
* Clean up
* Update tests
* Remove progress on embedadble
* Update snapshot
* Clean up, consolidate searchOptions
* Fix new es client types
* Fix types
* Fix loading state in Discover
* Remove unused services, Change switchMap to map, mergeMap -> switchMap, update types
* Fix missing filters
* Fix message of table to show searching instead of no items found
* Fix dashboard saved search source persisting time range
* [ML] Fix table message state
* [ML] Fix to not fetch field stats if cardinality is 0
* [ML] Fix locator missing view mode
* [ML] Quit right away if field doesn't exist in docs
* [ML] Change to use batch and only retry with individual field if failed
* [ML] Batch requests for speed and retry failures for resiliency
* No need to fetch field stats if overall stats haven't completed
* Wait on overallStats to complete
* Fix types after merge
* Fix payload size too big 413, num of requests
* Update field icon to using kbn/react-field package
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* Adding feature flag for auth
* Hiding SOs and adding consumer field
* First pass at adding security changes
* Consumer as the app's plugin ID
* Create addConsumerToSO migration helper
* Fix mapping's SO consumer
* Add test for CasesActions
* Declare hidden types on SO client
* Restructure integration tests
* Init spaces_only integration tests
* Implementing the cases security string
* Adding security plugin tests for cases
* Rough concept for authorization class
* Adding comments
* Fix merge
* Get requiredPrivileges for classes
* Check privillages
* Ensure that all classes are available
* Success if hasAllRequested is true
* Failure if hasAllRequested is false
* Adding schema updates for feature plugin
* Seperate basic from trial
* Enable SIR on integration tests
* Starting the plumbing for authorization in plugin
* Unit tests working
* Move find route logic to case client
* Create integration test helper functions
* Adding auth to create call
* Create getClassFilter helper
* Add class attribute to find request
* Create getFindAuthorizationFilter
* Ensure savedObject is authorized in find method
* Include fields for authorization
* Combine authorization filter with cases & subcases filter
* Fix isAuthorized flag
* Fix merge issue
* Create/delete spaces & users before and after tests
* Add more user and roles
* [Cases] Convert filters from strings to KueryNode (#95288)
* [Cases] RBAC: Rename class to scope (#95535)
* [Cases][RBAC] Rename scope to owner (#96035)
* [Cases] RBAC: Create & Find integration tests (#95511)
* [Cases] Cases client enchantment (#95923)
* [Cases] Authorization and Client Audit Logger (#95477)
* Starting audit logger
* Finishing auth audit logger
* Fixing tests and types
* Adding audit event creator
* Renaming class to scope
* Adding audit logger messages to create and find
* Adding comments and fixing import issue
* Fixing type errors
* Fixing tests and adding username to message
* Addressing PR feedback
* Removing unneccessary log and generating id
* Fixing module issue and remove expect.anything
* [Cases] Migrate sub cases routes to a client (#96461)
* Adding sub cases client
* Move sub case routes to case client
* Throw when attempting to access the sub cases client
* Fixing throw and removing user ans soclients
* [Cases] RBAC: Migrate routes' unit tests to integration tests (#96374)
Co-authored-by: Jonathan Buttner <jonathan.buttner@elastic.co>
* [Cases] Move remaining HTTP functionality to client (#96507)
* Moving deletes and find for attachments
* Moving rest of comment apis
* Migrating configuration routes to client
* Finished moving routes, starting utils refactor
* Refactoring utilites and fixing integration tests
* Addressing PR feedback
* Fixing mocks and types
* Fixing integration tests
* Renaming status_stats
* Fixing test type errors
* Adding plugins to kibana.json
* Adding cases to required plugin
* [Cases] Refactoring authorization (#97483)
* Refactoring authorization
* Wrapping auth calls in helper for try catch
* Reverting name change
* Hardcoding the saved object types
* Switching ensure to owner array
* [Cases] Add authorization to configuration & cases routes (#97228)
* [Cases] Attachments RBAC (#97756)
* Starting rbac for comments
* Adding authorization to rest of comment apis
* Starting the comment rbac tests
* Fixing some of the rbac tests
* Adding some integration tests
* Starting patch tests
* Working tests for comments
* Working tests
* Fixing some tests
* Fixing type issues from pulling in master
* Fixing connector tests that only work in trial license
* Attempting to fix cypress
* Mock return of array for configure
* Fixing cypress test
* Cleaning up
* Addressing PR comments
* Reducing operations
* [Cases] Add RBAC to remaining Cases APIs (#98762)
* Starting rbac for comments
* Adding authorization to rest of comment apis
* Starting the comment rbac tests
* Fixing some of the rbac tests
* Adding some integration tests
* Starting patch tests
* Working tests for comments
* Working tests
* Fixing some tests
* Fixing type issues from pulling in master
* Fixing connector tests that only work in trial license
* Attempting to fix cypress
* Mock return of array for configure
* Fixing cypress test
* Cleaning up
* Working case update tests
* Addressing PR comments
* Reducing operations
* Working rbac push case tests
* Starting stats apis
* Working status tests
* User action tests and fixing migration errors
* Fixing type errors
* including error in message
* Addressing pr feedback
* Fixing some type errors
* [Cases] Add space only tests (#99409)
* Starting spaces tests
* Finishing space only tests
* Refactoring createCaseWithConnector
* Fixing spelling
* Addressing PR feedback and creating alert tests
* Fixing mocks
* [Cases] Add security only tests (#99679)
* Starting spaces tests
* Finishing space only tests
* Refactoring createCaseWithConnector
* Fixing spelling
* Addressing PR feedback and creating alert tests
* Fixing mocks
* Starting security only tests
* Adding remainder security only tests
* Using helper objects
* Fixing type error for null space
* Renaming utility variables
* Refactoring users and roles for security only tests
* Adding sub feature
* [Cases] Cleaning up the services and TODOs (#99723)
* Cleaning up the service intialization
* Fixing type errors
* Adding comments for the api
* Working test for cases client
* Fix type error
* Adding generated docs
* Adding more docs and cleaning up types
* Cleaning up readme
* More clean up and links
* Changing some file names
* Renaming docs
* Integration tests for cases privs and fixes (#100038)
* [Cases] RBAC on UI (#99478)
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* Fixing case ids by alert id route call
* [Cases] Fixing UI feature permissions and adding UI tests (#100074)
* Integration tests for cases privs and fixes
* Fixing ui cases permissions and adding tests
* Adding test for collection failure and fixing jest
* Renaming variables
* Fixing type error
* Adding some comments
* Validate cases features
* Fix new schema
* Adding owner param for the status stats
* Fix get case status tests
* Adjusting permissions text and fixing status
* Address PR feedback
* Adding top level feature back
* Fixing feature privileges
* Renaming
* Removing uneeded else
* Fixing tests and adding cases merge tests
* [Cases][Security Solution] Basic license security solution API tests (#100925)
* Cleaning up the fixture plugins
* Adding basic feature test
* renaming to unsecuredSavedObjectsClient (#101215)
* [Cases] RBAC Refactoring audit logging (#100952)
* Refactoring audit logging
* Adding unit tests for authorization classes
* Addressing feedback and adding util tests
* return undefined on empty array
* fixing eslint
* [Cases] Cleaning up RBAC integration tests (#101324)
* Adding tests for space permissions
* Adding tests for testing a disable feature
Co-authored-by: Christos Nasikas <christos.nasikas@elastic.co>
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
* chore(NA): create new x-pack cigroups and rebalancing them all
* chore(NA): better cigroups balancing
* chore(NA): push rollup tests back into ciGroup1
* chore(NA): move some functional ml tests from cigroup3 into cigroup13
* chore(NA): move some more tests into ciGroup13
* chore(NA): use a single top level describe at x-pack/test/functional/apps/ml
* chore(NA): move settings into ciGroup13
* temporary test for es snapshots env
* Revert "temporary test for es snapshots env"
This reverts commit 789ebe7b9c.
* docs(NA): add missing documentation on the function tests describe split
Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>