Link to Aikido Blog for Command Injection attacks #559
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: End-to-End tests | |
on: [pull_request] | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
- name: Start databases | |
working-directory: ./sample-apps/databases | |
run: docker compose up --build -d | |
- name: Build and start aikido mock server | |
working-directory: ./end2end/server | |
run: docker build -t mock-core . && docker run --name mock_core -d -p 5000:5000 mock-core | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
make install | |
# django-mysql | |
- name: Start django-mysql | |
working-directory: ./sample-apps/django-mysql | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for django-mysql | |
run: sleep 5 && poetry run pytest ./end2end/django_mysql_test.py | |
# django-mysql-gunicorn | |
- name: Restart mock server | |
run: docker restart mock_core | |
- name: Start django-mysql-gunicorn | |
working-directory: ./sample-apps/django-mysql-gunicorn | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for django-mysql-gunicorn | |
run: sleep 5 && poetry run pytest ./end2end/django_mysql_gunicorn_test.py | |
# django-postgres-gunicorn | |
- name: Restart mock server | |
run: docker restart mock_core | |
- name: Start django-postgres-gunicorn | |
working-directory: ./sample-apps/django-postgres-gunicorn | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for django-postgres-gunicorn | |
run: sleep 5 && poetry run pytest ./end2end/django_postgres_gunicorn_test.py | |
# flask-mongo | |
- name: Restart mock server | |
run: docker restart mock_core | |
- name: Start flask-mongo | |
working-directory: ./sample-apps/flask-mongo | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for flask-mongo | |
run: sleep 5 && poetry run pytest ./end2end/flask_mongo_test.py | |
# flask-mysql | |
- name: Restart mock server | |
run: docker restart mock_core | |
- name: Start flask-mysql | |
working-directory: ./sample-apps/flask-mysql | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for flask-mysql | |
run: sleep 5 && poetry run pytest ./end2end/flask_mysql_test.py | |
# flask-mysql-uwsgi | |
- name: Restart mock server | |
run: docker restart mock_core | |
- name: Start flask-mysql-uwsgi | |
working-directory: ./sample-apps/flask-mysql-uwsgi | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for flask-mysql-uwsgi | |
run: sleep 5 && poetry run pytest ./end2end/flask_mysql_uwsgi_test.py | |
# flask-postgres | |
- name: Restart mock server | |
run: docker restart mock_core | |
- name: Start flask-postgres | |
working-directory: ./sample-apps/flask-postgres | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for flask-postgres | |
run: sleep 5 && poetry run pytest ./end2end/flask_postgres_test.py | |
# flask-postgres-xml | |
- name: Restart mock server | |
run: docker restart mock_core | |
- name: Start flask-postgres-xml | |
working-directory: ./sample-apps/flask-postgres-xml | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for flask-postgres-xml | |
run: | | |
sleep 5 | |
poetry run pytest ./end2end/flask_postgres_xml_test.py | |
docker restart mock_core | |
poetry run pytest ./end2end/flask_postgres_xml_lxml_test.py | |
# quart-postgres-uvicorn | |
- name: Restart mock server | |
run: docker restart mock_core | |
- name: Start quart-postgres-uvicorn | |
working-directory: ./sample-apps/quart-postgres-uvicorn | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for quart-postgres-uvicorn | |
run: sleep 5 && poetry run pytest ./end2end/quart_postgres_uvicorn_test.py | |
# starlette-postgres-uvicorn | |
- name: Restart mock server | |
run: docker restart mock_core | |
- name: Start starlette-postgres-uvicorn | |
working-directory: ./sample-apps/starlette-postgres-uvicorn | |
run: | | |
docker compose -f docker-compose.yml -f docker-compose.benchmark.yml up --build -d | |
- name: Run end2end tests for starlette-postgres-uvicorn | |
run: sleep 5 && poetry run pytest ./end2end/starlette_postgres_uvicorn_test.py |