import paramiko import sys sys.stdout.reconfigure(encoding='utf-8') ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('140.44.4.11', username='root', key_filename=r'C:\Users\Snarf\.ssh\id_ed25519_snarfnet', timeout=10) py_check = """ from awx.main.models import Job job = Job.objects.get(id=134) failed_events = job.job_events.filter(failed=True) for e in failed_events: res = e.event_data.get('res', {}) msg = res.get('msg') or res.get('stderr') or res.get('stdout') or str(res) print(f"Host: {e.event_data.get('host')}, Task: {e.event_data.get('task')}") print(f"Details: {msg[:300]}") """ cmd = f"kubectl exec -i -n awx -c awx-task deployment/awx-task -- awx-manage shell_plus --quiet << 'EOF'\n{py_check}\nEOF" stdin, stdout, stderr = ssh.exec_command(cmd) print(stdout.read().decode()) ssh.close()