Am nevoie să creez un manual care:
- verifică dacă aplicația1 este instalată - dacă nu reușește, părăsiți această gazdă și treceți la următoarea gazdă
- verifică dacă aplicația2 este instalată - dacă nu reușește, ieșiți și treceți la următoarea gazdă
- oprirea serviciilor application2
- dezinstalați aplicația1 - asigurați-vă că serviciile application2 sunt oprite înainte de a instala aplicația3 - apoi instalați aplicația3
- porniți serviciile application2
###################################################################
- Playbook Identificați dacă sunt instalate aplicații
- sarcini
- nume: verificați dacă aplicația1 este instalată dacă da, continuați
win_shell: |
$application1 = ("","Wow6432Node: |ForEach-Object {Get-ChildItem HKLM:/SOFTWARE\$_\Microsoft\hostname }}"Windows\CurrentVersion\Uninstall\}
select@(n=Nume;e={$.getvalue("nume afișat")}} Unde {$. -cum ar fi "*application1*"}).name.length -gt 0
with_items:"{{ hostname }}"
changed_when: fals
ignore_errors: adevărat
registru: iesire
win_shell: echo output.stdout
EXIT LOGIC
- nume: verificați dacă aplicația2 este instalată dacă da, continuați
win_shell: |
$application1 = ("","Wow6432Node: |ForEach-Object {Get-ChildItem HKLM:/SOFTWARE\$_\Microsoft\hostname }}"Windows\CurrentVersion\Uninstall\}
select@(n=Nume;e={$.getvalue("nume afișat")}} Unde {$. -cum ar fi "*application2*"}).name.length -gt 0
with_items:"{{ hostname }}"
changed_when: fals
ignore_errors: adevărat
registru: output2
win_shell: echo output2.stdout
EXIT LOGIC
###################################################################
- nume: oprirea serviciilor application2
win_shell: Stop-Process -Nume „Application2*” -Force
with_items"{{ hostname" }}
changed_when: fals
ignore_errors: adevărat
register:instalat
- depanare: msg="Opriți serviciile Application2"
###################################################################
- nume: dezinstalează aplicația1
win_command: C:\Windows\System32\msiexec.exe /i C:\Program Files (x86)\Application1\uninstall.exe /qn /norestart
register:application1uninstall
- nume: se instalează Application3 folosind win_command
win_command: Application3_installer.exe
register:application3install
###################################################################
- nume: Pornirea serviciilor Application2
win_service:
nume: Aplicație2
stare: a început