Skip to content

Commit

Permalink
use PluginResults in retirejs plugin
Browse files Browse the repository at this point in the history
  • Loading branch information
alejandrogr committed Oct 10, 2017
1 parent d72dd1e commit 8b7c092
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 8 deletions.
6 changes: 4 additions & 2 deletions deeptracy/tasks/run_analyzer.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
from typing import List
from deeptracy.plugin_store import plugin_store
from deeptracy_core.dal.database import db
from deeptracy_core.dal.scan_analysis_manager import get_scan_analysis, add_scan_vulnerabilities_results
from deeptracy_core.dal.scan_analysis.manager import get_scan_analysis, add_scan_vulnerabilities_results


@task(name="run_analyzer")
Expand All @@ -18,4 +18,6 @@ def run_analyzer(scan_analysis_id: str) -> List[str]:
plugin = plugin_store.get_plugin(scan_analysis.plugin_id)
results = plugin(scan.source_path)
add_scan_vulnerabilities_results(scan_analysis_id, results, session)
return results

serialized_results = [result.to_dict() for result in results]
return serialized_results
7 changes: 1 addition & 6 deletions deeptracy/tasks/start_scan.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
from deeptracy.config import SHARED_VOLUME_PATH
from deeptracy_core.dal.plugin.manager import get_plugins_for_lang
from deeptracy_core.dal.scan.manager import get_scan, update_scan_state, ScanState
from deeptracy_core.dal.scan_analysis_manager import add_scan_analysis
from deeptracy_core.dal.scan_analysis.manager import add_scan_analysis
from deeptracy_core.dal.database import db
from deeptracy.tasks.run_analyzer import run_analyzer
from deeptracy.tasks.merge_results import merge_results
Expand Down Expand Up @@ -55,10 +55,5 @@ def start_scan(scan_id: str):
analyzers = [run_analyzer.s(scan_analysis_id)
for scan_analysis_id in scan_analysis_ids]

print('-----------')
print(analyzers)
print('-----cloned_dir {} ------'.format(cloned_dir))
print('-----------')

# launch all jobs
chord(analyzers)(merge_results.s(cloned_dir=cloned_dir))
1 change: 1 addition & 0 deletions plugins/retirejs/retirejs-docker.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ def retirejs(source_code_location: str) -> List[Dict]:
json_raw_results = json.loads(f, object_hook=lambda d: Namespace(**d))

results = []

for result in json_raw_results:

# Load partial result
Expand Down
14 changes: 14 additions & 0 deletions tests/acceptance/utils.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,12 @@
import os
import shutil
from sqlalchemy import text
from deeptracy_core.dal.database import db


def clean_db(context):
db.init_engine()
clean_directory(context.SHARED_VOLUME_PATH)

sql = text('DELETE FROM scan_analysis_vulnerability')
context.engine.execute(sql)
Expand All @@ -21,3 +24,14 @@ def clean_db(context):
# context.engine.execute(sql)

context.redis_db.delete('celery')


def clean_directory(folder: str):
for the_file in os.listdir(folder):
file_path = os.path.join(folder, the_file)
try:
if os.path.isfile(file_path):
os.unlink(file_path)
elif os.path.isdir(file_path): shutil.rmtree(file_path)
except Exception as e:
print(e)

0 comments on commit 8b7c092

Please sign in to comment.