---
# Download the p4, p4d, and p4broker binaries into p4_bin_dest.
# Callers must set:
# p4_bin_dest - directory the binaries are downloaded into
# Release directories come from perforce_version / perforce_broker_version.
- name: "Download Perforce binaries"
ansible.builtin.get_url:
url: "https://ftp.perforce.com/perforce/r{{ item.version }}/bin.linux26{{ perforce_arch }}/{{ item.name }}"
dest: "{{ p4_bin_dest }}"
owner: "{{ perforce_user }}"
group: "{{ perforce_group }}"
mode: '0700'
loop:
- { name: 'p4', version: "{{ perforce_version }}" }
- { name: 'p4d', version: "{{ perforce_version }}" }
- { name: 'p4broker', version: "{{ perforce_broker_version }}" }
loop_control:
label: "{{ item.name }}"
| # | Change | User | Description | Committed | |
|---|---|---|---|---|---|
| #2 | 32879 | Russell C. Jackson (Rusty) | Harness: tolerate optional/absent scripts + accept ccheck PASS (Grade A or B) | ||
| #1 | 32842 | Russell C. Jackson (Rusty) |
Reorganize ansible-sdp into per-concern task files; ansible-lint production-clean - Split install.yml/cron.yml/dependencies.yml and the monitoring role into thin orchestrators plus single-purpose phase files; extract shared steps into tasks/common/ (fetch_sdp, fetch_binaries, run_mkdirs, copy_ssl, configure_broker, sudoers). - Full best-practices pass: FQCN, true/false, quoted modes, changed_when, loops, document-start markers; fill both roles' meta; add .ansible-lint. - RedHat parity: parameterized EPEL enable, dnf, full upgrade, sysctl/bbr tuning. - Collapse the 12 journal-rotation cron tasks to one; consolidate duplicate download/broker logic; fix broken tests/test.yml role reference. - Validated ansible-lint clean at the production profile (ansible-core 2.21 / python 3.12) and ansible-playbook --syntax-check OK. |