feat(custom_filename): custom output filename (#1345)

* feat(s3_output): send outputs to S3 bucket

* feat(custom_filename): custom output filename

Co-authored-by: sergargar <sergio@verica.io>
This commit is contained in:
Sergio Garcia
2022-08-26 12:08:34 +01:00
committed by GitHub
parent 65185943ca
commit a63c42f59c
6 changed files with 118 additions and 55 deletions

View File

@@ -1,3 +1,4 @@
import os
from os import path, remove
from colorama import Fore
@@ -6,6 +7,7 @@ from config.config import (
csv_file_suffix,
json_asff_file_suffix,
json_file_suffix,
output_file_timestamp,
prowler_version,
timestamp_iso,
timestamp_utc,
@@ -33,7 +35,7 @@ from providers.aws.models import AWS_Audit_Info
class Test_Outputs:
def test_fill_file_descriptors(self):
audited_account = "123456789012"
output_directory = "."
output_directory = f"{os.path.dirname(os.path.realpath(__file__))}"
csv_fields = generate_csv_fields()
test_output_modes = [
["csv"],
@@ -42,47 +44,47 @@ class Test_Outputs:
["csv", "json"],
["csv", "json", "json-asff"],
]
output_filename = f"prowler-output-{audited_account}-{output_file_timestamp}"
expected = [
{
"csv": open_file(
f"{output_directory}/prowler-output-{audited_account}-{csv_file_suffix}",
f"{output_directory}/{output_filename}{csv_file_suffix}",
"a",
)
},
{
"json": open_file(
f"{output_directory}/prowler-output-{audited_account}-{json_file_suffix}",
f"{output_directory}/{output_filename}{json_file_suffix}",
"a",
)
},
{
"json-asff": open_file(
f"{output_directory}/prowler-output-{audited_account}-{json_asff_file_suffix}",
f"{output_directory}/{output_filename}{json_asff_file_suffix}",
"a",
)
},
{
"csv": open_file(
f"{output_directory}/prowler-output-{audited_account}-{csv_file_suffix}",
f"{output_directory}/{output_filename}{csv_file_suffix}",
"a",
),
"json": open_file(
f"{output_directory}/prowler-output-{audited_account}-{json_file_suffix}",
f"{output_directory}/{output_filename}{json_file_suffix}",
"a",
),
},
{
"csv": open_file(
f"{output_directory}/prowler-output-{audited_account}-{csv_file_suffix}",
f"{output_directory}/{output_filename}{csv_file_suffix}",
"a",
),
"json": open_file(
f"{output_directory}/prowler-output-{audited_account}-{json_file_suffix}",
f"{output_directory}/{output_filename}{json_file_suffix}",
"a",
),
"json-asff": open_file(
f"{output_directory}/prowler-output-{audited_account}-{json_asff_file_suffix}",
f"{output_directory}/{output_filename}{json_asff_file_suffix}",
"a",
),
},
@@ -90,7 +92,10 @@ class Test_Outputs:
for index, output_mode_list in enumerate(test_output_modes):
test_output_file_descriptors = fill_file_descriptors(
output_mode_list, audited_account, output_directory, csv_fields
output_mode_list,
output_directory,
csv_fields,
output_filename,
)
for output_mode in output_mode_list:
assert (