fix(ansible): specify lowercase node-name for k3s etcd snapshot
This commit is contained in:
@@ -19,7 +19,7 @@
|
||||
msg: "{{ inventory_hostname }} current version: {{ k3s_ver.stdout_lines[0] }}"
|
||||
|
||||
- name: Save on-demand etcd snapshot on primary master (.11)
|
||||
ansible.builtin.command: k3s etcd-snapshot save --name "pre-upgrade-snapshot"
|
||||
ansible.builtin.command: k3s etcd-snapshot save --node-name sninfr2lnxctl01 --name "pre-upgrade-snapshot"
|
||||
when: inventory_hostname == "sninfr2lnxctl01"
|
||||
register: etcd_snap
|
||||
|
||||
|
||||
@@ -6,9 +6,9 @@ ssh.connect('140.44.4.11', username='root', key_filename=r'C:\Users\Snarf\.ssh\i
|
||||
|
||||
py_code = """
|
||||
from awx.main.models import Job
|
||||
job = Job.objects.get(id=100)
|
||||
print(f"Job [100]: Status={job.status}, Elapsed={job.elapsed}s, Failed={job.failed}")
|
||||
events = job.job_events.order_by('id')
|
||||
job = Job.objects.order_by('-id').first()
|
||||
print(f"Job [{job.id}] for '{job.name}': Status={job.status}, Elapsed={job.elapsed}s, Failed={job.failed}")
|
||||
events = job.job_events.filter(event__in=['playbook_on_stats', 'runner_on_failed', 'runner_on_unreachable'])
|
||||
for e in events:
|
||||
if e.stdout:
|
||||
print(e.stdout)
|
||||
|
||||
@@ -5,16 +5,20 @@ 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_code = """
|
||||
from awx.main.models import Project, JobTemplate, Job
|
||||
from awx.main.models import Project, JobTemplate, Job, Host
|
||||
import time
|
||||
|
||||
# 0. Clean up homeassistant from inventory
|
||||
Host.objects.filter(name='homeassistant').delete()
|
||||
print("Inventory hosts count:", Host.objects.count())
|
||||
|
||||
# 1. Update project
|
||||
p = Project.objects.get(name='Snarfnet Infrastructure Playbooks')
|
||||
update = p.update()
|
||||
print(f"Triggered project update [{update.id}]...")
|
||||
|
||||
# Wait for project update
|
||||
for _ in range(12):
|
||||
for _ in range(15):
|
||||
update.refresh_from_db()
|
||||
if update.status in ['successful', 'failed', 'error']:
|
||||
break
|
||||
@@ -32,7 +36,7 @@ job.signal_start()
|
||||
print(f"Launched Job [{job.id}] for '{jt.name}': Status={job.status}")
|
||||
|
||||
# 3. Poll for completion
|
||||
for _ in range(40):
|
||||
for _ in range(50):
|
||||
job.refresh_from_db()
|
||||
if job.status in ['successful', 'failed', 'error', 'canceled']:
|
||||
break
|
||||
@@ -41,11 +45,9 @@ for _ in range(40):
|
||||
print(f"Job [{job.id}] finished with Status={job.status}, Elapsed={job.elapsed}s, Failed={job.failed}")
|
||||
|
||||
# 4. Print events / recap
|
||||
print("\n=== JOB RECAP / OUTPUT ===")
|
||||
events = job.job_events.order_by('id')
|
||||
for e in events:
|
||||
if e.stdout:
|
||||
print(e.stdout)
|
||||
print("\n=== PLAY RECAP ===")
|
||||
for e in job.job_events.filter(event='playbook_on_stats'):
|
||||
print(e.stdout)
|
||||
"""
|
||||
|
||||
cmd = f"kubectl exec -i -n awx -c awx-task deployment/awx-task -- awx-manage shell_plus --quiet << 'EOF'\n{py_code}\nEOF"
|
||||
@@ -55,4 +57,3 @@ for line in iter(stdout.readline, ""):
|
||||
print(line, end="")
|
||||
|
||||
ssh.close()
|
||||
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user