name: recon-pipeline build on: [push] jobs: lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Set up Python 3.7 uses: actions/setup-python@v1 with: python-version: 3.7 - name: Set up pipenv run: | python -m pip install --upgrade pip pip install pipenv pipenv install -d - name: Lint with flake8 run: | pipenv install flake8 # stop the build if there are Python syntax errors or undefined names pipenv run flake8 . --count - name: Check code formatting with black run: | pipenv install "black==19.10b0" pipenv run black -l 120 --check . test-shell: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Set up Python 3.7 uses: actions/setup-python@v1 with: python-version: 3.7 - name: Set up pipenv run: | python -m pip install --upgrade pip pip install pipenv pipenv install -d - name: Test with pytest run: | pipenv install pytest cmd2 luigi sqlalchemy python-libnmap pipenv run python -m pytest tests/test_shell test-recon: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Set up Python 3.7 uses: actions/setup-python@v1 with: python-version: 3.7 - name: Set up pipenv run: | python -m pip install --upgrade pip pip install pipenv pipenv install -d - name: Test with pytest run: | pipenv install pytest cmd2 luigi sqlalchemy python-libnmap pipenv run python -m pytest tests/test_recon test-web: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Set up Python 3.7 uses: actions/setup-python@v1 with: python-version: 3.7 - name: Set up pipenv run: | python -m pip install --upgrade pip pip install pipenv pipenv install -d - name: Test with pytest run: | pipenv install pytest cmd2 luigi sqlalchemy python-libnmap pipenv run python -m pytest tests/test_web test-models: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Set up Python 3.7 uses: actions/setup-python@v1 with: python-version: 3.7 - name: Set up pipenv run: | python -m pip install --upgrade pip pip install pipenv pipenv install -d - name: Test with pytest run: | pipenv install pytest cmd2 luigi sqlalchemy python-libnmap pipenv run python -m pytest tests/test_models test-unmocked-tool-installs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Set up Python 3.7 uses: actions/setup-python@v1 with: python-version: 3.7 - name: Set up pipenv run: | python -m pip install --upgrade pip pip install pipenv pipenv install -d - name: Test with pytest run: | pipenv install pytest cmd2 luigi sqlalchemy python-libnmap pipenv run python -m pytest -vv --show-capture=all tests/test_tools_install