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

Updated Python Package Manager to Poetry + General Updates #405

Merged
merged 15 commits into from
Oct 24, 2023

Conversation

phutelmyer
Copy link
Contributor

@phutelmyer phutelmyer commented Oct 23, 2023

Describe the change
This PR primarily focused on moving Strelka's Python package management to poetry, to ensure reliable dependency resolution, version control, and package management, making scanner development more efficient and reproducible.

Additional changes include:

  • Adding the ability to use precompiled YARA rules: Speed up YARA initialization on Strelka boot by using precompiled rules
  • Configuration file updates: Adding compiled YARA location
  • Updates to multiple scanners: To accommodate new package versions
  • Updates to multiple scanner tests: To accommodate updated scanners
  • Minor XL4MA scanner updates: Removing references to author / comments
  • Dockerfile improvements and fixes: Removing references to venv as poetry is used. Other various additions to ensure package installs work.
  • Small error handling fixes

Describe testing procedures

  1. docker-compose -f build/docker-compose.yaml build
Test@Desktop strelka % docker-compose -f build/docker-compose.yaml build
[+] Building                                                                                                                                                                                                                         ...
 => [backend stage-0 17/20] RUN cd /strelka/ &&     python3 setup.py -q build &&     python3 setup.py -q install &&     python3 setup.py -q clean --all &&     rm -rf dist/ strelka.egg-info &&     apt-get purge -y     automake     build-essential     cmake     curl     gcc    2.6s
 => [backend stage-0 18/20] RUN echo '[+] Run build checks' &&      cd /strelka/strelka/ &&      python3 -m pytest -p no:cacheprovider -s tests/ &&      if false; then python3 -m pytest -s tests_configuration/; fi &&      echo '[+] Done'                                      24.7s
 => [backend stage-0 19/20] RUN cd /strelka/ &&      rm -rf /strelka/ &&      rm -rf /root/.cache &&      rm -rf /tmp/*                                                                                                                                                             0.7s
 => [backend stage-0 20/20] RUN rm -rf /etc/strelka/            
  1. Logged into strelka-ui at localhost:9800 and uploaded several different file types.

Sample output
N/A

Checklist

  • My code follows the style guidelines of this project
  • I have performed a self-review of and tested my code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings

@phutelmyer phutelmyer linked an issue Oct 23, 2023 that may be closed by this pull request
@phutelmyer phutelmyer merged commit 678c81a into master Oct 24, 2023
3 checks passed
@phutelmyer phutelmyer deleted the poetry-and-fixes branch October 24, 2023 01:05
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.

[BUG] ScanNf Segmentation Fault
1 participant