From 7bac588cf710dd89d6e38716b3a39f18fcaf7161bde9647d9b2cd31e9299f091 Mon Sep 17 00:00:00 2001 From: bryan Date: Mon, 26 Jan 2026 16:21:31 -0500 Subject: [PATCH] tmux-management: autoreconnect --- bootstrap | 3 ++- deploy-vm | 2 +- deploy.code-workspace | 2 +- dotfiles/common/home/.ssh/config | 8 ++++---- group_vars/workstation/filesystems.yml | 4 ++-- inventories/hosts.ini | 6 ++++-- playbook.yml | 6 ++++++ scripts/tmux-management | 6 ++++++ 8 files changed, 26 insertions(+), 11 deletions(-) diff --git a/bootstrap b/bootstrap index 1f0632a..f406b86 100755 --- a/bootstrap +++ b/bootstrap @@ -2,6 +2,7 @@ # Bootstrap Ansible environment # Usage: ./bootstrap [--force] -pip install --upgrade pip "$@" +python -m ensurepip --upgrade +pip install --upgrade pip pip install --upgrade --requirement pip-requirements "$@" ansible-galaxy install --role-file galaxy-requirements.yml "$@" \ No newline at end of file diff --git a/deploy-vm b/deploy-vm index de89ff1..2b6ec37 100755 --- a/deploy-vm +++ b/deploy-vm @@ -2,4 +2,4 @@ # ansible-playbook playbook.yml -l testing-remote --ask-vault-pass --ask-become-pass --check --diff -ansible-playbook playbook.yml -l testing-remote --ask-vault-pass --ask-become-pass --diff "$@" +ansible-playbook playbook.yml -l workstation-remote-testing --ask-vault-pass --ask-become-pass --diff "$@" diff --git a/deploy.code-workspace b/deploy.code-workspace index 075ff83..173b0fe 100644 --- a/deploy.code-workspace +++ b/deploy.code-workspace @@ -5,7 +5,7 @@ } ], "settings": { - "ansible.python.interpreterPath": "/home/bryan/.virtualenvs/deploy/bin/python", + "ansible.python.interpreterPath": "/home/bryan/develop/deploy/.venv/bin/python", "search.followSymlinks": false, }, diff --git a/dotfiles/common/home/.ssh/config b/dotfiles/common/home/.ssh/config index 3179679..36282ec 100644 --- a/dotfiles/common/home/.ssh/config +++ b/dotfiles/common/home/.ssh/config @@ -18,8 +18,8 @@ Host home-router Hostname home-router User root -Host ax6000 - Hostname ax6000.lan +Host w1700k + Hostname w1700k.lan User root Host bryanroessler.com @@ -35,8 +35,8 @@ Host workstation Host laptop Hostname laptop -Host vm-fedora42 - Hostname vm-fedora42 +Host vm-fedora43 + Hostname 192.168.122.169 Host vm-alma9 Hostname 192.168.122.235 diff --git a/group_vars/workstation/filesystems.yml b/group_vars/workstation/filesystems.yml index 4a0428c..27657d9 100644 --- a/group_vars/workstation/filesystems.yml +++ b/group_vars/workstation/filesystems.yml @@ -31,7 +31,7 @@ mounts: create_dir: false - path: /mnt/downloads - src: /dev/disk/by-uuid/ee6247ed-5bcf-481e-802e-74efbc02eb45 + src: /dev/disk/by-uuid/56a4fe2f-ce26-48cc-b602-548db7357549 fstype: btrfs opts: defaults,compress=zstd:1 state: mounted @@ -41,7 +41,7 @@ mounts: create_dir: false - path: /home/bryan/downloads - src: /dev/disk/by-uuid/ee6247ed-5bcf-481e-802e-74efbc02eb45 + src: /dev/disk/by-uuid/56a4fe2f-ce26-48cc-b602-548db7357549 fstype: btrfs opts: subvol=downloads,defaults,compress=zstd:1,x-systemd.requires=home.mount,x-gvfs-hide state: mounted diff --git a/inventories/hosts.ini b/inventories/hosts.ini index 0760962..f081cdc 100644 --- a/inventories/hosts.ini +++ b/inventories/hosts.ini @@ -5,16 +5,18 @@ htpc-remote ansible_host=htpc ansible_user=bryan [workstation] workstation-local ansible_connection=local ansible_user=bryan workstation-remote ansible_host=workstation ansible_user=bryan +workstation-remote-testing ansible_host=vm-fedora43 ansible_user=bryan [laptop] laptop-local ansible_connection=local ansible_user=bryan laptop-remote ansible_host=laptop ansible_user=bryan +laptop-remote-testing ansible_host=192.168.122.95 ansible_user=bryan [server] bryanroessler.com ansible_host=bryanroessler.com ansible_user=bryan -[testing] -testing-remote ansible_host=192.168.122.205 ansible_user=bryan +# [testing] +# testing-remote ansible_host=192.168.122.205 ansible_user=bryan # [desktops:children] # workstation diff --git a/playbook.yml b/playbook.yml index bd07e0b..8dd1247 100644 --- a/playbook.yml +++ b/playbook.yml @@ -35,6 +35,12 @@ - role: services tags: ['services'] +- name: Deploy quadlets + hosts: all + roles: + - role: quadlets + tags: ['quadlets'] + - name: Deploy sysconfig hosts: all roles: diff --git a/scripts/tmux-management b/scripts/tmux-management index 1c36d5d..8b2e3ae 100755 --- a/scripts/tmux-management +++ b/scripts/tmux-management @@ -71,6 +71,12 @@ done tmux select-layout -t "$SESSION:0" tiled ((SYNCHRONIZE)) && tmux setw -t "$SESSION:0" synchronize-panes on +# Keep panes visible when commands exit +tmux set-option -t "$SESSION:0" remain-on-exit on + +# Auto-respawn any pane whose command dies +tmux set-hook -t "$SESSION" pane-died "run-shell 'tmux respawn-pane -k -t #{pane_id}'" + # Activate the last pane (local host) local_index=$(( ${#TARGETS[@]} - 1 )) tmux select-pane -t "$SESSION:0.$local_index"