Skip to content

William-Yeh/ansible-oracle-java

Folders and files

NameName
Last commit message
Last commit date
Feb 2, 2017
Jun 23, 2016
Jun 13, 2016
Feb 2, 2017
Jun 1, 2016
Jun 13, 2016
Apr 11, 2016
Apr 11, 2016
Mar 1, 2016
Feb 2, 2017
Apr 11, 2016
Apr 8, 2016
Feb 2, 2017
Feb 2, 2017

Repository files navigation

williamyeh.oracle-java for Ansible Galaxy

Build Status Circle CI

Summary

Role name in Ansible Galaxy: williamyeh.oracle-java

This Ansible role has the following features for Oracle JDK:

  • Install JDK 7 or 8 version.
  • Install optional Java Cryptography Extensions (JCE)
  • Install for CentOS, Debian/Ubuntu, SUSE, and Mac OS X families.

If you prefer OpenJDK, try alternatives such as geerlingguy.java or smola.java.

Role Variables

Mandatory variables

None.

Optional variables

User-configurable defaults:

# which version?
java_version: 8

# which subversion?
java_subversion: 112

# which directory to put the download file?
java_download_path: /tmp

# rpm/tar.gz file location:
#   - true: download from Oracle on-the-fly;
#   - false: copy from `{{ playbook_dir }}/files` on the control machine.
java_download_from_oracle: true

# remove temporary downloaded files?
java_remove_download: true

# set $JAVA_HOME?
java_set_javahome: false

# install JCE?
java_install_jce: false

For other configurable internals, read tasks/set-role-variables.yml file; for example, supported java_version/java_subversion combinations.

If you want to install a Java release which is not supported out-of-the-box, you have to specify the corresponding Java build number in the variable java_build in addition to java_version and java_subversion, e.g.

---
- hosts: all

  roles:
    - williamyeh.oracle-java

  vars:
    java_version: 8
    java_subversion: 91
    java_build: 14

Customized variables, if absolutely necessary

If you have a pre-downloaded jdk_tarball_file whose filename cannot be inferred successfully by tasks/set-role-variables.yml, you may specify it explicitly:

# Specify the pre-fetch filename (without tailing .tar.gz or .rpm or .dmg);
# used in conjunction with `java_download_from_oracle: false`.

jdk_tarball_file

# For example, if you have a `files/jdk-7u79-linux-x64.tar.gz` locally,
# but the filename cannot be inferred successfully by `tasks/set-role-variables.yml`,
# you may specify the following variables in your playbook:
#
#    java_version:    7
#    java_subversion: 79
#    java_download_from_oracle: false
#    jdk_tarball_file: jdk-7u79-linux-x64
#

Usage

Step 1: add role

Add role name williamyeh.oracle-java to your playbook file.

Step 2: add variables

Set vars in your playbook file.

Simple example:

---
# file: simple-playbook.yml

- hosts: all

  roles:
    - williamyeh.oracle-java

  vars:
    java_version: 8

(Optionally) pre-fetch .rpm and .tar.gz files

For some reasons, you may want to pre-fetch .rpm and .tar.gz files before the execution of this role, instead of downloading from Oracle on-the-fly.

To do this, put the file on the {{ playbook_dir }}/files directory in advance, and then set the java_download_from_oracle variable to false:

---
# file: prefetch-playbook.yml

- hosts: all

  roles:
    - williamyeh.oracle-java

  vars:
    java_version: 8
    java_download_from_oracle: false

Dependencies

License

Licensed under the Apache License V2.0. See the LICENSE file for details.

History

Rewritten from my pre-Galaxy version: server-config-template.

About

An Ansible role that installs Oracle JDK, in the format for Ansible Galaxy.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages