Move DAST domain validation into Python
Summary
We're currently performing DAST domain validation in the analyze shell script. We'd like to move the validation into Python. Both of the related issues must be completed before this issue can be worked on.
Improvements
Having validation in Python makes it both easier to implement the functionality cleanly and to test it.
Risks
This refactor could break DAST domain validation and DAST full scan.
Involved components
https://gitlab.com/gitlab-org/security-products/dast/blob/master/analyze
Missing test coverage
Right now there is an E2E test for domain validation as a whole, but not an explicit test for the DAST_FULL_SCAN_DOMAIN_VALIDATION_ENABLED environment variable toggle. We should have unit tests for that logic.
Edited by Avielle Wolfe