Mike Salvatore
ba7dab26d7
Island: Refactor how Machine objects are managed by IMachineRepository
...
- Replace `create_machine()` with `get_new_id()`
- Replace `update_machine()` with `upsert_machine()`
Benefits:
The repository doesn't store Machine objects that only have the ID
populated (unless that is the caller's desire).
Upsert instead of update allows the interface to be more permissive.
2022-08-31 10:17:20 -04:00
Mike Salvatore
81128a4842
Island: Don't use Field() for simple defaults in Machine
2022-08-30 09:34:17 -04:00
Mike Salvatore
b538842e84
Island: Remove display_name from MongoMachineRepository._find_one()
2022-08-30 09:32:47 -04:00
Mike Salvatore
bf5e54ebc9
Island: Raise RemovalError from IMachineRepository.reset()
2022-08-30 07:34:20 -04:00
Mike Salvatore
383cfdfefe
Island: Rename `id_` parameter to `machine_id` in IMachineRepository
2022-08-30 07:30:41 -04:00
Mike Salvatore
0adf9d8467
Island: Add MongoMachineRepository
2022-08-30 05:03:47 -04:00
Mike Salvatore
5713d1c99b
UT: Add test_hardware_id_default()
2022-08-29 20:30:07 -04:00
Mike Salvatore
ac1cda40a8
Island: Add default value for Machine.hostname
2022-08-29 20:27:57 -04:00
Mike Salvatore
5d51b40475
Island: Add default value for Machine.operating_system_version
2022-08-29 20:26:11 -04:00
Mike Salvatore
3e2244cd62
UT: Add test_operating_system_default_value()
2022-08-29 20:26:11 -04:00
Mike Salvatore
40601b955c
Island: Add default value for Machine.network_interfaces
2022-08-29 20:26:05 -04:00
Mike Salvatore
da8ed9e6db
Island: Fix ICredentialsRepository import in MongoCredentialsRepository
2022-08-29 19:35:04 -04:00
Mike Salvatore
10d8d8e756
Island: Use MONGO_OBJECT_ID_KEY in MongoCredentialsRepository
2022-08-29 19:32:40 -04:00
Mike Salvatore
bf6125dd55
Island: Add MONGO_OBJECT_ID_KEY
2022-08-29 19:31:35 -04:00
Mike Salvatore
3eda8d640d
Island: Export IMachineRepository from repository package
2022-08-29 19:27:17 -04:00
Mike Salvatore
eb3fe21b11
Island: Redefine IMachineRepository
2022-08-29 19:27:14 -04:00
Mike Salvatore
6b083ca61b
Island: Remove superfluous "pass" from repository.errors
2022-08-29 15:15:49 -04:00
Mike Salvatore
1de552ea94
Island: Add UnknownRecordError to repository.errors
2022-08-29 15:14:42 -04:00
Mike Salvatore
694cdca883
Island: Make Machine.operating_system Optional
2022-08-29 15:00:45 -04:00
Mike Salvatore
ebcfe5a9fc
Island: Add docstrings to Machine
2022-08-29 14:35:45 -04:00
Mike Salvatore
43a53112fc
Island: Use monkey_island.cc.models.Machine in IMachineRepository
2022-08-29 14:35:10 -04:00
Mike Salvatore
cff363597a
Common: Annotate HardwareID as a TypeAlias
2022-08-29 14:34:28 -04:00
Mike Salvatore
b1f15b59f7
Common: Ignore arg-type error in DIContainer.register()
2022-08-29 14:28:48 -04:00
Mike Salvatore
4662dd8bed
Island: Annotate MachineID as a TypeAlias
...
See https://mypy.readthedocs.io/en/stable/common_issues.html#variables-vs-type-aliases
2022-08-29 13:50:12 -04:00
Ilija Lazoroski
1deb03b6d7
Island: Fix type annotation in AWSService
2022-08-29 12:46:34 -04:00
Ilija Lazoroski
6adacf702e
Island: Don't drop collections that starts with "config"
...
Fixes #2210
PR #2227
2022-08-29 12:46:20 -04:00
Mike Salvatore
40d4f7f50c
Island: Remode disused deb-package/
2022-08-29 10:31:18 -04:00
Mike Salvatore
3000304d28
Island: Remove disused and empty `environment` subpackage
2022-08-29 10:30:01 -04:00
Mike Salvatore
def1dce86b
Common: Rename MutableBaseModel -> MutableInfectionMonkeyBaseModel
2022-08-25 11:50:12 -04:00
Mike Salvatore
8e3abe7601
Merge branch 'prototype-register-agents' into develop
2022-08-25 10:21:54 -04:00
Kekoa Kaaikala
2f50e30a92
Agent: Remove debug code
2022-08-24 20:10:35 +00:00
Kekoa Kaaikala
6bb710a495
Agent: Name the batching telemetry thread
2022-08-24 15:59:09 -04:00
Kekoa Kaaikala
bcc0c86526
Agent: Fix batching telemetry thread shutdown
2022-08-24 19:51:19 +00:00
Mike Salvatore
ab399e4f34
Island: Add debug logging to Agents resource
2022-08-24 08:54:41 -04:00
Mike Salvatore
9c32dee739
Agent: Register agent on startup
2022-08-24 08:54:41 -04:00
Mike Salvatore
80b4b05b65
Agent: Add pydantic as a dependency
2022-08-24 08:54:41 -04:00
Mike Salvatore
09739268fa
Agent: Add get_machine_id()
2022-08-24 08:54:41 -04:00
Mike Salvatore
160d2d11cf
Agent: Add get_agent_id()
2022-08-24 08:54:41 -04:00
Mike Salvatore
78f792aee9
Island: Add /api/agents endpoint
2022-08-24 08:54:41 -04:00
Mike Salvatore
00514a3c0d
Common: Add AgentRegistrationData
2022-08-24 08:54:41 -04:00
Mike Salvatore
0607f36404
Common: Move transforms from monkey_island to common
2022-08-24 08:54:41 -04:00
Mike Salvatore
fc14a1f573
Common: Make InfectionMonkeyModelConfig immutable
2022-08-24 08:54:41 -04:00
Mike Salvatore
3a94be8766
Common: Move base_models.py to common
2022-08-24 08:54:41 -04:00
Mike Salvatore
acc158db44
Island: Use HardwareId in Machine model
2022-08-24 08:54:41 -04:00
Mike Salvatore
f418571d93
Common: Add HardwareID type
2022-08-24 08:54:41 -04:00
Kekoa Kaaikala
15bd9a31c6
Agent: Pass ITelemetryMessenger to Ransomware
2022-08-23 20:05:52 -04:00
Mike Salvatore
a28cd97c0d
Common: Store strongrefs to subscribers
2022-08-23 19:59:57 -04:00
Mike Salvatore
9ab2c0bc6a
Agent: Add debug logging to add_creds_from_event_to_prop_creds_repo()
2022-08-23 19:59:57 -04:00
Mike Salvatore
0b8355c8a4
Common: Add debug logging to PyPubSubEventQueue
2022-08-23 10:00:34 -04:00
Mike Salvatore
0864593176
Agent: Add more debug logging to Agg'Prop'Cred'Repo'
2022-08-23 10:00:26 -04:00