This repository hosts just the AWS inspector script. Thanks to the main azul project which created it.
-
Python, the specific verson is defined in an environment variable called
azul_python_versiondefined in environment.py -
The
bashshell -
GNU make 3.81 or newer
-
git 2.36.0 or newer
-
AWS credentials configured in
~/.aws/credentialsand/or~/.aws/config -
The build process relies on numerous utilities that are pretty much standard on any modern Unix. Things like
perl,sort,comm,uniq,sed,cp,mvandrm. -
For VPN support: OpenSSL (version 1.1.10 and 3.0.5 are known to work but other versions should work, too). LibreSSL, which became the default on macOS at some point, is an acceptible replacement. Version 2.8.3 is known to work.
-
Users of macOS 12 (Monterey) should follow additional steps outlined in Troubleshooting
-
Users of macOS 11 (Big Sur) should follow additional steps outlined in [Troubleshooting](#installing-python-3812-on-macos-11-big-sur
Getting started without attempting to make contributions does not require AWS credentials. A subset of the test suite passes without configured AWS credentials. To validate your setup, we'll be running one of those tests at the end.
-
Load the environment defaults
source environment -
Activate the
devdeployment:_select dev -
Load the environment:
source environmentThe output should indicate that the environment is being loaded from the selected deployment (in this case,
dev). -
Create a Python virtual environment and activate it:
make virtualenv source .venv/bin/activate -
Install the development prerequisites:
make requirementsLinux users whose distribution does not offer the required Python version should consider installing pyenv first, then Python using
pyenv install x.y.zand settingPYENV_VERSIONtox.y.z, wherex.y.zis the value ofazul_python_versionin environment.py. You may need to update pyenv itself before it recognizes the given Python version. Even if a distribution provides the required minor version of Python natively, using pyenv is generally preferred because it offers every patch-level release of Python, supports an arbitrary number of different Python versions to be installed concurrently and allows for easily switching between them.Ubuntu users using their system's default Python installation must install
python3-devbefore any wheel requirements can be built.sudo apt install python3-dev
This should be sufficient to run the script via
python scripts/export_inspector_findings.py