(self, plugins=())
| 280 | await self.store(obj) |
| 281 | |
| 282 | async def _load(self, plugins=()): |
| 283 | try: |
| 284 | async_tasks = [] |
| 285 | if not plugins: |
| 286 | plugins = [p for p in await self.locate('plugins') if p.data_dir and p.enabled] |
| 287 | if not [plugin for plugin in plugins if plugin.data_dir == 'data']: |
| 288 | plugins.append(Plugin(data_dir='data')) |
| 289 | for plug in plugins: |
| 290 | await self._load_payloads(plug) |
| 291 | await self._load_abilities(plug, async_tasks) |
| 292 | await self._load_objectives(plug) |
| 293 | await self._load_adversaries(plug) |
| 294 | await self._load_planners(plug) |
| 295 | await self._load_sources(plug) |
| 296 | await self._load_packers(plug) |
| 297 | for task in async_tasks: |
| 298 | await task |
| 299 | await self._load_extensions() |
| 300 | await self._load_data_encoders(plugins) |
| 301 | await self.create_or_update_everything_adversary() |
| 302 | await self._verify_data_sets() |
| 303 | except Exception as e: |
| 304 | self.log.debug(repr(e), exc_info=True) |
| 305 | |
| 306 | async def _load_adversaries(self, plugin): |
| 307 | for filename in glob.iglob('%s/adversaries/**/*.yml' % plugin.data_dir, recursive=True): |
no test coverage detected