Skip to content

Allow Prowler to be installed just for an specific provider #4696

@jfagoagas

Description

@jfagoagas

New feature motivation

We want to allow Prowler to be installed just for an specific provider without the need of installing all the providers dependencies.

Currently the package installed contains the evaluations for all the providers regardless of where exactly the scans are going to be run. e.g. If a user wants to use Prowler to scan an AWS environment, the install process should skip installing the relevant checks for Azure, GCP or other providers.

This will help reduce the install size and also speed up the installation times.

Solution Proposed

A flag / parameter can be added that the user can supply at install time, like pip install prowler[<provider>].

Describe alternatives you've considered

Workaround to install Prowler in the AWS CloudShell service due to the storage limitation:

pip install "alive-progress==3.1.5" "awsipranges==0.3.3" "colorama==0.4.6" "dash==2.17.1" "dash-bootstrap-components==1.6.0" "detect-secrets==1.5.0" "jsonschema==4.23.0" "numpy==2.0.0" "pandas==2.2.2" "py-ocsf-models==0.1.1" "pydantic==1.10.15"  "pytz==2024.1" "schema==0.7.7" "shodan==1.31.0" "tabulate==0.9.0" "tzlocal==5.2" "slack-sdk==3.31.0"
pip install --no-deps prowler

Please, take into account the libraries versions installed.

Thanks to @jchrisfarris 🙌

Additional context

No response

Metadata

Metadata

Assignees

Labels

feature-requestNew feature request for Prowler.not-plannedIssues that are not in the Prowler roadmap.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions