SUSE Linux를 실행하는 가상 머신에 Java를 설치하려면 ansible을 사용해야 합니다.
다음은 내가 사용하는 플레이북 코드입니다.
- name: Download Java
become_user: "{{user}}"
command: "wget -q -O {{java_archive}} --no-check-certificate --no-cookies --header 'Cookie: oraclelicense=accept-securebackup-cookie' {{download_url}} creates={{java_archive}}"
- name: Fix ownership
become_user: "{{user}}"
file: state=directory path={{java_name}} owner={{user}} group={{user}} recurse=yes
- zypper: name={{download_folder}}/jdk-8u5-linux-x64.rpm become_user={{user}} state=present
- name: Clean up
become_user: "{{user}}"
file: state=absent path={{java_archive}}
내가 직면한 문제는 설치 프로그램이 설치하는 동안 약간의 상호 작용이 필요하다는 것입니다. 어떻게 자동화할 수 있나요? 아니면 이것을 달성하는 다른 방법이 있습니까?
댓글에 요청하신대로 앤서블 없이 설치하려고 하면 아래와 같은 메시지가 뜹니다.
답변1
에서 ansible-doc zypper
:
- oldpackage
Adds `--oldpackage' option to `zypper'. Allows to downgrade packages
with less side-effects than force. This is implied as soon as a
version is specified as part of the package name.
(Choices: yes, no)[Default: no]
시도해 보고 oldpackage=yes
그래도 도움이 되지 않으면 보다 공격적인 force=yes
옵션을 사용할 수 있습니다.