Skip to content

Commit

Permalink
Merge branch 'develop' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
ktbyers authored Feb 19, 2025
2 parents fd0e0e5 + d33f56e commit 0c3f45f
Show file tree
Hide file tree
Showing 367 changed files with 20,647 additions and 40,867 deletions.
37 changes: 37 additions & 0 deletions .github/ISSUE_TEMPLATE
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
### Description of Issue/Question

*Note*: Please check https://guides.github.com/features/mastering-markdown/
to see how to properly format your request.

### Setup

### Netmiko version
(Paste verbatim output from `pip freeze | grep netmiko` between quotes below)

```

```

### Netmiko device_type (if relevant to the issue)
(Paste `device_type` between quotes below)

```

```

### Steps to Reproduce the Issue

### Error Traceback
(Paste the complete traceback of the exception between quotes below)

```

```

### Relevant Python code
(Please try to essentialize your Python code to the minimum code needed to reproduce the issue)
(Paste the code between the quotes below)

```python

```
101 changes: 0 additions & 101 deletions .github/workflows/commit.yaml

This file was deleted.

217 changes: 217 additions & 0 deletions .github/workflows/main_testing.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,217 @@
---
name: Netmiko
on: [push,pull_request]
env:
environment: gh_actions
FORCE_COLOR: 1

jobs:
linters:
name: linters
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4

- name: Setup python
uses: actions/setup-python@v5
with:
python-version: '3.11'
architecture: x64

- name: Install poetry
run: |
pipx install poetry
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
cache: 'poetry'

- name: Install dependencies
run: |
poetry install
- name: Run pylama
run: |
poetry run pylama .
- name: Run black
run: |
poetry run black --check .
- name: Run mypy
run: |
poetry run mypy --version
poetry run mypy ./netmiko/
pytest:
name: Std Test on Python ${{ matrix.python-version }} (${{ matrix.platform}})
defaults:
run:
shell: bash
strategy:
matrix:
python-version: [ '3.9', '3.10', '3.11', "3.12", "3.13" ]
platform: [ubuntu-24.04, windows-2022]

runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4

- name: Setup python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
architecture: x64
- uses: actions/checkout@v4

- name: Install poetry
run: |
pipx install poetry
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: 'poetry'

- name: Install dependencies
run: |
poetry install
- name: Run Tests
run: |
poetry run pytest -v -s tests/test_import_netmiko.py
poetry run pytest -v -s tests/unit/test_base_connection.py
poetry run pytest -v -s tests/unit/test_ssh_autodetect.py
poetry run pytest -v -s tests/unit/test_connection.py
poetry run pytest -v -s tests/unit/test_entry_points.py
# ARM/X86_64 issues on macos
pytest-macos13:
name: Std Test on Python ${{ matrix.python-version }} (${{ matrix.platform}})
defaults:
run:
shell: bash
strategy:
matrix:
python-version: [ '3.9', '3.10', '3.11' ]
platform: [macos-13]

runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4

- name: Setup python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
architecture: x64
- uses: actions/checkout@v4

- name: Install poetry
run: |
pipx install poetry
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install dependencies
run: |
poetry install
- name: Run Tests
run: |
poetry run pytest -v -s tests/test_import_netmiko.py
poetry run pytest -v -s tests/unit/test_base_connection.py
poetry run pytest -v -s tests/unit/test_ssh_autodetect.py
poetry run pytest -v -s tests/unit/test_connection.py
poetry run pytest -v -s tests/unit/test_entry_points.py
pytest-macos14:
name: Std Test on Python ${{ matrix.python-version }} (${{ matrix.platform}})
defaults:
run:
shell: bash
strategy:
matrix:
python-version: [ "3.12", "3.13.0-beta.2" ]
platform: [macos-14]

runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4

- name: Setup python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
architecture: x64
- uses: actions/checkout@v4

- name: Install poetry
run: |
pipx install poetry
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install dependencies
run: |
poetry install
- name: Run Tests
run: |
poetry run pytest -v -s tests/test_import_netmiko.py
poetry run pytest -v -s tests/unit/test_base_connection.py
poetry run pytest -v -s tests/unit/test_ssh_autodetect.py
poetry run pytest -v -s tests/unit/test_connection.py
poetry run pytest -v -s tests/unit/test_entry_points.py
pytest_parsers:
name: Parsers Test on Python ${{ matrix.python-version }} (${{ matrix.platform}})
defaults:
run:
shell: bash

# Only use latest Python version that will work with pyats/genie due to their
# ongoing issues supporting newer Python versions.
strategy:
matrix:
python-version: [ '3.11']
platform: [ubuntu-24.04]

runs-on: ${{ matrix.platform }}
steps:
- uses: actions/checkout@v4

- name: Setup python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
architecture: x64
- uses: actions/checkout@v4

- name: Install poetry
run: |
pipx install poetry
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: 'poetry'

- name: Install dependencies
run: |
poetry install --with parsers
- name: Run Tests
run: |
poetry run pytest -v -s tests/test_import_netmiko.py
poetry run pytest -v -s tests/unit/test_utilities.py
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ tests/etc/test_devices.yml
tests/etc/commands.yml
tests/etc/responses.yml
tests/etc/test_devices_exc.yml
tests/SLOG/test_logging_filter_secrets-netmiko.log

examples/SECRET_DEVICE_CREDS.py
./build
Expand Down
Loading

0 comments on commit 0c3f45f

Please sign in to comment.