Files
computer-playbook/roles/sys-util-git-pull/defaults/main.yml
T
kevinveenbirkenbach 6726f36799 feat(sys-util-git-pull): introduce reusable shallow git pull role with tag pinning
- Add new role sys-util-git-pull as a generic system utility
- Implement robust shallow clone/update logic in Python helper
- Support detached-safe branch updates and optional tag pinning
- Handle annotated vs lightweight tags and heal local tag conflicts
- Provide deterministic Ansible change detection via machine-readable output
- Add verbose logging to stderr for debuggability
- Integrate sys-util-git-pull into pkgmgr role to replace inline git logic
- Add comprehensive unit tests (option A: file-based import) for helper script
- Add role README and meta information with platform-agnostic support
- Ensure role conforms to existing test expectations (meta/main.yml present)

https://chatgpt.com/share/69481902-a98c-800f-9b3f-9ee13e8e50b7
2025-12-21 16:57:45 +01:00

24 lines
702 B
YAML

---
sys_util_git_pull_repo_url: ""
sys_util_git_pull_dest: ""
# Initial clone/update base ref (branch/commit) used by the helper
sys_util_git_pull_version: "main"
sys_util_git_pull_depth: 1
# Optional: pin to tag (detached). Example: "stable". Empty disables pin.
sys_util_git_pull_pin_tag: ""
# Remove these local tags before fetch --tags (prevents "would clobber existing tag")
sys_util_git_pull_remove_tags: []
# Mark changed if remote pin tag moved compared to local (informational)
sys_util_git_pull_mark_changed_on_tag_move: true
# Remote name to use for git operations
sys_util_git_pull_remote: "origin"
# Privilege handling
sys_util_git_pull_become: true
sys_util_git_pull_become_user: ~