jmri: version-aware install/upgrade via marker file

Replace binary-exists check with .jmri_installed_version marker pattern.
- Reads marker on each run; skips install if version matches
- On version mismatch: stops JMRI, wipes /opt/JMRI, downloads new archive
- Separates build hash into jmri_build_hash var (templated into download URL)
- Config is preserved — lives in git-managed .jmri symlink
To upgrade: bump jmri_version + jmri_build_hash, re-run playbook.
This commit is contained in:
Hermes Agent service account
2026-07-29 21:34:26 -05:00
parent d974c75d7c
commit 11d8796764
2 changed files with 58 additions and 7 deletions

View File

@@ -1,8 +1,12 @@
---
# JMRI version to install
# Update both jmri_version AND jmri_build_hash together when upgrading.
# Find the build hash in the release asset filename on:
# https://github.com/JMRI/JMRI/releases
jmri_version: "5.10"
jmri_build_hash: "ca461bd266"
jmri_install_dir: /opt/JMRI
jmri_download_url: "https://github.com/JMRI/JMRI/releases/download/v{{ jmri_version }}/JMRI.{{ jmri_version }}+Rca461bd266.tgz"
jmri_download_url: "https://github.com/JMRI/JMRI/releases/download/v{{ jmri_version }}/JMRI.{{ jmri_version }}+R{{ jmri_build_hash }}.tgz"
# Service user
jmri_user: jmri