---
# Build the /p4 directory layout with mkdirs.sh, then wire the SDP environment
# into the perforce user's shell.
- name: "Build the SDP layout with mkdirs.sh"
ansible.builtin.include_tasks: "common/run_mkdirs.yml"
- name: "Add source script to perforce user bashrc"
ansible.builtin.lineinfile:
path: "/p4/.bashrc"
create: true
line: "source /p4/common/bin/p4_vars {{ perforce_id }}"
insertafter: "EOF"
owner: "{{ perforce_user }}"
group: "{{ perforce_group }}"
mode: '0644'
# - name: "Copy perforce license file"
# ansible.builtin.copy:
# force: true
# src: "./perforce-license"
# dest: "/p4/{{ perforce_id }}/root/license"
# owner: "{{ perforce_user }}"
# group: "{{ perforce_group }}"
# mode: '0644'
# when: copy_license
| # | Change | User | Description | Committed | |
|---|---|---|---|---|---|
| #3 | 32855 | Russell C. Jackson (Rusty) | Revert change 32851: configurables.cfg is now copied by mkdirs.sh in the SDP (change 32852), making the Ansible-side copy redundant | ||
| #2 | 32851 | Russell C. Jackson (Rusty) |
perforce-sdp-install: copy configurables.cfg into /p4/common/config after mkdirs mkdirs.sh renders the per-instance config files but does not copy the SDP configurables.cfg into the deployed /p4/common/config. ccheck.sh (invoked by configure_new_server.sh) loads its [prod] profile from that path, so a new install would fail configure_new_server until the file is placed by hand. |
||
| #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. |