Skip to content

Instantly share code, notes, and snippets.

@renoirb
Last active March 30, 2023 03:15
Show Gist options
  • Save renoirb/6722890 to your computer and use it in GitHub Desktop.
Save renoirb/6722890 to your computer and use it in GitHub Desktop.
How to install Oracle Java from ppa webupd8team/java using Salt stack, in ONE state file
#
# How to install automatically Oracle Java 7 under Salt Stack
#
# Thanks Oracle for complicating things :(
#
# 1. Create a java/ folder in your salt master
# 2. Paste this file in init.sls
# 3. salt '*' state.sls java
#
# Source:
# * https://github.com/log0ymxm/salt-jvm/blob/master/init.sls
# * http://architects.dzone.com/articles/puppet-installing-oracle-java
#
oracle-ppa:
pkgrepo.managed:
- humanname: WebUpd8 Oracle Java PPA repository
- ppa: webupd8team/java
oracle-license-select:
cmd.run:
- unless: which java
- name: '/bin/echo /usr/bin/debconf shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections'
- require_in:
- pkg: oracle-java7-installer
- cmd: oracle-license-seen-lie
oracle-license-seen-lie:
cmd.run:
- name: '/bin/echo /usr/bin/debconf shared/accepted-oracle-license-v1-1 seen true | /usr/bin/debconf-set-selections'
- require_in:
- pkg: oracle-java7-installer
oracle-java7-installer:
pkg:
- installed
- require:
- pkgrepo: oracle-ppa
@cr0ss
Copy link

cr0ss commented Jun 1, 2017

In my case keyserver has been unavailable so I've used - keyserver: hkp://keyserver.ubuntu.com:80 which seems to got a problem fixed.

@felixhummel
Copy link

You might want to consider using prereq, so the debconf selects only run when pkg.installed is triggered, e.g.

https://github.com/felixhummel/saltstates/blob/master/java/oracle.sls

Thanks for sharing!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment