Registry /
workflow / apache-airflow-providers-microsoft-winrm
Install & Compatibility
Where this runs
tested against v3.14.3 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 6.274s · 252.4MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 23.7s · import 5.952s · 250MB
252MB installed
● package 252MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
WinRMOperator
✓ from airflow.providers.microsoft.winrm.operators.winrm import WinRMOperator
✗ from airflow.providers.microsoft.winrm.operators.winrm_operator import WinRMOperator
Old import path from Airflow 1.x; current module is 'winrm' (not 'winrm_operator')
WinRMHook
✓ from airflow.providers.microsoft.winrm.hooks.winrm import WinRMHook
✗ from airflow.providers.microsoft.winrm.hooks import WinRMHook
Direct import from hooks package is misleading; must specify module 'winrm'
Minimal DAG that runs 'ipconfig /all' on a remote Windows machine via WinRM.
from datetime import datetime
from airflow import DAG
from airflow.providers.microsoft.winrm.operators.winrm import WinRMOperator
with DAG(dag_id='winrm_test', start_date=datetime(2023,1,1), schedule_interval=None, catchup=False) as dag:
task = WinRMOperator(
task_id='run_ipconfig',
winrm_host='192.168.1.100',
winrm_login='Administrator',
winrm_password='password',
command='ipconfig /all'
)
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'airflow.providers.microsoft.winrm'
Provider package not installed or Airflow environment not restarted after installation.
fixRun 'pip install apache-airflow-providers-microsoft-winrm' and restart the Airflow scheduler/webserver.
KeyError: 'winrm_host'
Missing required parameter in WinRMOperator or incorrect connection ID used.
fixEnsure you pass both winrm_host and winrm_login when not using an Airflow connection URI.
Connection to (192.168.1.100) timed out. (connect timeout=60)
Remote WinRM service not reachable (firewall, wrong IP, WinRM not enabled).
fixVerify remote host WinRM status with 'Test-WSMan -ComputerName 192.168.1.100' and check firewall rules.
Upgrade
Version history
3.14.3latest on PyPI · released Jun 7, 2026
Audit
Dependencies
apache-airflowrequiredCore dependency; provider requires Airflow >=2.19
pywinrmrequiredPython WinRM client library