Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2698 plugin selector core #2841

Merged
merged 10 commits into from
Jan 17, 2023
Merged

2698 plugin selector core #2841

merged 10 commits into from
Jan 17, 2023

Conversation

VakarisZ
Copy link
Contributor

What does this PR do?

Part of #2698
Implements the core of plugin selection logic.
Enables selection/deselection of plugins and changes to their configuration options. On submit/export configuration state contains the changes

Add any further explanations here.

PR Checklist

  • Have you added an explanation of what your changes do and why you'd like to include them?
  • Is the TravisCI build passing?
  • Was the CHANGELOG.md updated to reflect the changes?
  • Was the documentation framework updated to reflect the changes?
  • Have you checked that you haven't introduced any duplicate code?

Testing Checklist

  • Added relevant unit tests?
  • Have you successfully tested your changes locally? Elaborate:

    Tested manually (changing the configuration options and making sure the submitted configuration state represents the state of the UI)

  • If applicable, add screenshots or log transcripts of the feature working
    image
    image

@@ -10,7 +10,7 @@ export default function UiSchema(props) {
propagation: {
exploitation: {
exploiters: {
classNames: 'config-template-no-header',
'ui:classNames': 'config-template-no-header',
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could've been a separate PR, but for the sake of speed left it here

@codecov
Copy link

codecov bot commented Jan 16, 2023

Codecov Report

Base: 64.53% // Head: 64.78% // Increases project coverage by +0.24% 🎉

Coverage data is based on head (fed2e4f) compared to base (c0d5fbd).
Patch has no changes to coverable lines.

❗ Current head fed2e4f differs from pull request most recent head 0eb4649. Consider uploading reports for the commit 0eb4649 to get more accurate results

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #2841      +/-   ##
===========================================
+ Coverage    64.53%   64.78%   +0.24%     
===========================================
  Files          414      413       -1     
  Lines        11743    11752       +9     
===========================================
+ Hits          7578     7613      +35     
+ Misses        4165     4139      -26     
Impacted Files Coverage Δ
...onkey/monkey/common/utils/file_utils/file_utils.py 87.50% <0.00%> (-2.50%) ⬇️
monkey/monkey/infection_monkey/main.py 0.00% <0.00%> (ø)
monkey/monkey/infection_monkey/monkey.py 0.00% <0.00%> (ø)
monkey/monkey/infection_monkey/exploit/hadoop.py 0.00% <0.00%> (ø)
monkey/monkey/common/utils/file_utils/__init__.py 100.00% <0.00%> (ø)
...y/monkey/infection_monkey/exploit/tools/helpers.py 100.00% <0.00%> (ø)
...y/monkey/infection_monkey/utils/monkey_log_path.py
monkey/monkey/common/utils/code_utils.py 58.92% <0.00%> (+7.86%) ⬆️
...tion_monkey/exploit/log4shell_utils/ldap_server.py 93.13% <0.00%> (+40.91%) ⬆️

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

Comment on lines +35 to +36
const EXPLOITERS_SCHEMA_PATH_NEW = 'definitions.ExploitationConfiguration.properties.exploiters';
const EXPLOITERS_SCHEMA_PATH_LEGACY = 'properties.propagation.properties.exploitation.properties.exploiters';
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe distinguishing between UI schema and Island/AgentConfig schema would be clearer.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've already though about it and it's problematic, because the term UISchema is already used to define the visual properties of the configuration, it's defined in monkey/monkey_island/cc/ui/src/components/configuration-components/UiSchema.js. That's how it's called in rjsf component. I'll add a comment instead

@VakarisZ VakarisZ merged commit 9e64ec9 into develop Jan 17, 2023
@mssalvatore mssalvatore deleted the 2698-plugin-selector-core branch January 18, 2023 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants