- New ansible/roles/jmri role: installs OpenJDK 21 headless, creates jmri service user, downloads JMRI 5.10, deploys JmriFaceless systemd unit - Handles dialout group membership for serial device access - Config restore task for post-reinstall recovery from GitHub backup - host_vars/main-street-station: profile_id and serial device (TODO: fill in) - Inventory: jmri_server group with main-street-station at 192.168.10.45 - Playbook: day1_deploy_jmri.yml (linux-baseline + jmri)
25 lines
867 B
YAML
25 lines
867 B
YAML
---
|
|
# ============================================================================
|
|
# day1_deploy_jmri.yml
|
|
# ----------------------------------------------------------------------------
|
|
# Deploys JMRI JmriFaceless headless server on main-street-station.
|
|
# Applies linux-baseline first, then the jmri role.
|
|
#
|
|
# Usage:
|
|
# ansible-playbook playbooks/day1_deploy_jmri.yml
|
|
# ansible-playbook playbooks/day1_deploy_jmri.yml -e target=main-street-station
|
|
#
|
|
# Prerequisites:
|
|
# 1. Host is in inventory under jmri_server group
|
|
# 2. jmri_profile_id is set in host_vars/main-street-station.yml
|
|
# 3. SSH access as 'wed' with sudo
|
|
# ============================================================================
|
|
|
|
- name: Deploy JMRI headless server
|
|
hosts: "{{ target | default('jmri_server') }}"
|
|
become: true
|
|
gather_facts: true
|
|
roles:
|
|
- linux-baseline
|
|
- jmri
|