Commit Graph

10680 Commits

Author SHA1 Message Date
Kekoa Kaaikala 0d959e891a Island: Add functions to encrypt agent events 2022-09-20 15:28:00 +00:00
Mike Salvatore 930256f581 Agent: Take OperatingSystem in IIslandAPIClient.get_agent_binary() 2022-09-20 11:07:09 -04:00
Mike Salvatore 741d192eab Merge branch '2292-modify-agent-forwarder' into develop
PR #2320
2022-09-20 11:03:42 -04:00
Mike Salvatore 2281dde795
Merge pull request #2319 from guardicore/2292-HTTPIslandAPIClient-in-CachingAgentBinaryRepository
HTTPIslandAPIClient in CachingAgentBinaryRepository
2022-09-20 10:47:43 -04:00
Mike Salvatore 9807c23571 Agent: Add IIslandAPIClient.connect()
Different clients may have different dependencies in their constructors.
Use connect() instead of __init__() to connect to the Island. Add an
AbstractIslandAPIClientFactory and HTTPIslandAPIClientFactory to
facilitate this.
2022-09-20 10:23:21 -04:00
Mike Salvatore e9433ad23b Agent: Initialize _agent_event_serializer_registry in __init__() 2022-09-20 10:05:47 -04:00
Mike Salvatore eea7fc1ee2 Agent: Add AbstractIslandAPIClientFactory 2022-09-20 09:58:15 -04:00
Mike Salvatore 17cb77cfdd Agent: Move AbstractAgentEvent serialization to HTTPIslandAPIClient 2022-09-20 09:45:00 -04:00
Mike Salvatore 34a4d81336 Agent: Reraise IslandAPIError in handle_island_errors() 2022-09-20 09:39:20 -04:00
Shreya Malviya 7884f96a9c UT: Fix broken HTTPIslandAPIClient.get_agent_binary() tests 2022-09-20 18:45:39 +05:30
Shreya Malviya 2bd64a3175 Agent: Make variable `island_api_client` protected in InfectionMonkey 2022-09-20 18:38:09 +05:30
Shreya Malviya 9b3950e8eb Agent: Accept OperatingSystem instead of str in HTTPIslandAPIClientget_agent_binary() 2022-09-20 18:36:22 +05:30
Shreya Malviya 088e020fee Agent: Catch IslandAPIError and raise RetrievalError in CachingAgentBinaryRepository._download_binary_from_island() 2022-09-20 18:36:22 +05:30
Shreya Malviya 0e9397b283 Agent: Add RetrievalError to i_agent_binary_repository.py 2022-09-20 18:36:22 +05:30
Shreya Malviya e8ecaa2169 UT: Add tests for HTTPIslandAPIClient.get_agent_binary() 2022-09-20 18:36:22 +05:30
Shreya Malviya 30cf360e98 Agent: Fix URL in HTTPIslandAPIClient.get_agent_binary() 2022-09-20 18:36:22 +05:30
Shreya Malviya 2cebc19843 Agent: Add get_agent_binary() to the IIslandAPIClient interface 2022-09-20 18:36:22 +05:30
Shreya Malviya d84550ba23 Agent: Fix return type hint in CachingAgentBinaryRepository._download_binary_from_island() 2022-09-20 18:36:21 +05:30
Shreya Malviya 4605722874 Agent: Add logging in CachingAgentBinaryRepository._download_binary_from_island() 2022-09-20 18:36:21 +05:30
Shreya Malviya 3b3f39065d Agent: Remove comment no longer relevant from monkey.py 2022-09-20 18:36:19 +05:30
Shreya Malviya 8b52ba0686 Agent: Modify docstring in IIslandAPIClient.send_events() 2022-09-20 18:01:17 +05:30
Mike Salvatore e3adae03b0
Merge pull request #2321 from guardicore/2294-clear-repositories-on-clear-simulation
Clear repositories on CLEAR_SIMULATION_DATA event
2022-09-20 07:56:31 -04:00
Mike Salvatore e5a1a5dc67
Merge pull request #2316 from guardicore/2292-IslandAPIClient-in-ControlClient
Use HTTPIslandAPIClient in ControlClient
2022-09-20 07:53:14 -04:00
Shreya Malviya 5032588c23 Island: Initialize MongoDB connection before DI container so that repositories using mongo can be registered and subscribed 2022-09-20 17:07:28 +05:30
Shreya Malviya 638e4cd7ed Island: Simplify logic in island_event_handlers._subscribe_clear_simulation_data_events 2022-09-20 17:05:53 +05:30
Ilija Lazoroski 14592d964e Agent: Pass island_api_client when constructing AgentEventForwarder 2022-09-20 13:13:01 +02:00
Ilija Lazoroski b320fba2c8 Agent: Modify AgentEventForwarder to use IIslandAPIClient 2022-09-20 12:32:00 +02:00
Ilija Lazoroski f39007b0ce Agent: Implement send_events in HTTPIslandAPIClient 2022-09-20 12:30:08 +02:00
Ilija Lazoroski 9000a01d1d Agent: Add send_events to IIslandAPIClient 2022-09-20 12:28:50 +02:00
Shreya Malviya f93565b2cf Island: Subscribe repository reset functions to CLEAR_SIMULATION_DATA event 2022-09-20 15:50:43 +05:30
Shreya Malviya 51a9bad000 Island: Register instances of INodeRepository, IMachineRepository, IAgentRepository in DI container 2022-09-20 15:48:07 +05:30
Shreya Malviya e23c6de745 Agent: Remove no longer needed `island_url` parameter from CachingAgentBinaryRepository 2022-09-20 14:59:35 +05:30
Shreya Malviya 1355c038b5 Agent: Add and use HTTPIslandAPIClient.get_agent_binary() 2022-09-20 14:56:10 +05:30
Shreya Malviya 9da1ad4c46 Agent: Pass and accept island_api_client in CachingAgentBinaryRepository's constructor 2022-09-20 14:54:25 +05:30
Shreya Malviya 3100e6c010 Project: Remove outdated entried from Vulture allowlist 2022-09-20 12:37:05 +05:30
Shreya Malviya 1480203627 Agent: Modify docstrings in IIslandAPIClient 2022-09-20 12:35:21 +05:30
Ilija Lazoroski 1b4f834f46 UT: Add status code tests for HTTIslandAPIClient 2022-09-20 08:50:55 +02:00
Ilija Lazoroski 0c13298bbb UT: Add error handling tests for HTTPIslandAPIClient send_log and
get_pba_file
2022-09-20 07:52:48 +02:00
Mike Salvatore 107a15b5f0 Agent: Call raise_for_status() in HTTPIslandAPIClient 2022-09-19 20:05:19 -04:00
Mike Salvatore a724758caa Agent: Handle HTTPErrors in HTTPIslandAPIClient 2022-09-19 20:04:52 -04:00
Mike Salvatore cb8fda0bec Agent: Add HTTPIslandAPIClient._api_url attribute 2022-09-19 19:57:28 -04:00
Mike Salvatore 841183d8e7 Agent: Reimplement HTTPIslandAPIClient.get_pba_file() as a method 2022-09-19 19:55:07 -04:00
Mike Salvatore aa3c6c2f4d Agent: Add IIslandAPIClient.get_pba_file() 2022-09-19 19:52:58 -04:00
Mike Salvatore 92da3b78db Agent: Reimplement HTTPIslandAPIClient.send_log() as member, not static 2022-09-19 19:44:16 -04:00
Mike Salvatore aba342b3f2 Agent: Pass IIslandAPIClient to ControlClient.__init__() 2022-09-19 19:41:14 -04:00
Mike Salvatore 9936605242 Agent: Add IIslandAPIClient.send_log() 2022-09-19 19:39:00 -04:00
Shreya Malviya 393bec29e7 Agent: Remove comment from HTTPIslandAPIClient 2022-09-19 19:39:00 -04:00
Shreya Malviya 365376a190 Agent: Change exception handling and log message in ControlClient.get_pba_file() 2022-09-19 19:39:00 -04:00
Shreya Malviya d07760fe60 Agent: Make HTTPIslandAPIClient.send_log() and HTTPIslandAPIClient.get_pba_file() static 2022-09-19 19:39:00 -04:00
Shreya Malviya 8ab17a96e3 Agent: Fix functions defined in HTTPIslandAPIClient and use the handle_island_errors() decorator on them 2022-09-19 19:39:00 -04:00