[PACT] [7.9.x] feat: add Contract tests for Kibana Fleet#340
[PACT] [7.9.x] feat: add Contract tests for Kibana Fleet#340mdelapenya wants to merge 37 commits into
Conversation
We are creating it here, instead of in Kibana for simplicity
💔 Build Failed
Expand to view the summary
Build stats
Test stats 🧪
Steps errors
Expand to view the steps failures
|
| Test | Results |
|---|---|
| Failed | 0 |
| Passed | 25 |
| Skipped | 0 |
| Total | 25 |
cachedout
left a comment
There was a problem hiding this comment.
This is really cool. 💯
|
❄️ The following tests failed but also have a history of flakiness and may not be related to this change: [Initializing / End-To-End Tests / ingest-manager_agent_endpoint_integration / Adding the Endpoint Integration to an Agent makes the host to show in Security App – Agent Endpoint Integration, Initializing / End-To-End Tests / ingest-manager_agent_endpoint_integration / Deploying an Endpoint makes policies to appear in the Security App – Agent Endpoint Integration, Initializing / End-To-End Tests / ingest-manager_agent_endpoint_integration / Un-enrolling Elastic Agent stops Elastic Endpoint – Agent Endpoint Integration, Initializing / End-To-End Tests / ingest-manager_agent_endpoint_integration / Removing Endpoint from Agent configuration stops the connected Endpoint – Agent Endpoint Integration, Initializing / End-To-End Tests / ingest-manager_fleet_mode / Deploying the centos agent – Fleet Mode Agent, Initializing / End-To-End Tests / ingest-manager_fleet_mode / Deploying the debian agent – Fleet Mode Agent, Initializing / End-To-End Tests / ingest-manager_fleet_mode / Stopping the centos agent stops backend processes – Fleet Mode Agent, Initializing / End-To-End Tests / ingest-manager_fleet_mode / Stopping the debian agent stops backend processes – Fleet Mode Agent] |
What does this PR do?
It adds a contract tests with Pact.io, allowing two things:
It simply adds 3 tests in the contract:
The generated contracts are stored locally for simplicity, instead of using a Pact Broker (see docs).
Why is it important?
This is a PoC, but it will allow decoupling Kibana from its consumers, verifying they are not broken in a proactive manner, instead of in a reactive one (when their tests fail, if executed)
Checklist
make noticein the proper directory)Author's Checklist
How to test this PR locally
From root directory:
Related issues
Follow-ups
Move the verification process to Kibana (or the sotware identified as provider)