ansible을 이용하여 ubuntu image에서 oracle java 7을 설치하는 방법이다.
apt-get은 update_cache를 이용해서 재설치를 피할 수 있는 방법이 있지만, apt-get을 사용하지 않으면 매번 재설치를 해야 하는 번거로움을 피하기 위해서 java_exists 변수를 사용하였다.
그리고, oracle java 설치시 oracle license를 수락하는 부분도 추가되었다.
---
- name: Check if the java compiler exists
command : java -version
ignore_errors: True
register: java_exists
# - name: Java already installed
# command: echo "Java already installed"
# when: java_exists.rc == 0
- name: ensuring add-apt-repository is installed
apt: pkg=python-software-properties state=latest
when: java_exists.rc != 0
- name: adding webupd8 ppa for java7 installer
apt_repository: repo=ppa:webupd8team/java
when: java_exists.rc != 0
- name: updating apt cache
apt: update_cache=yes
when: java_exists.rc != 0
- name: installing java7
shell: echo debconf shared/accepted-oracle-license-v1-1 select true |
debconf-set-selections &&
echo debconf shared/accepted-oracle-license-v1-1 seen true |
debconf-set-selections &&
apt-get -y install oracle-java7-installer
when: java_exists.rc != 0
결과화면
$ vagrant ssh
Welcome to Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-generic x86_64)
* Documentation: https://help.ubuntu.com/
Welcome to your Vagrant-built virtual machine.
Last login: Tue Jun 17 21:11:36 2014 from 192.168.1.1
vagrant@web:~$ java -version
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)
'Ansible-Puppet-Chef' 카테고리의 다른 글
[ansible] directory 가 없을 때 생성하기 (if directory not exists, make the directory) (0) | 2014.06.25 |
---|---|
[ansible] whitespace, indent (0) | 2014.06.18 |
[ansible] 디버그하기 ( debug ) - echo, debug, tags, step (0) | 2014.06.18 |
[ansible] MAC OS에서 ansible 설치 & 이슈 (0) | 2014.06.13 |
MAC OS에서 virtualbox , vagrant 설치 (0) | 2014.06.13 |