{"id":15069484,"url":"https://github.com/lean-delivery/ansible-role-java","last_synced_at":"2026-01-16T11:36:22.575Z","repository":{"id":33308703,"uuid":"139833681","full_name":"lean-delivery/ansible-role-java","owner":"lean-delivery","description":"Ansible Role - Java","archived":false,"fork":false,"pushed_at":"2026-01-14T15:09:02.000Z","size":344,"stargazers_count":60,"open_issues_count":14,"forks_count":31,"subscribers_count":18,"default_branch":"master","last_synced_at":"2026-01-14T16:54:33.755Z","etag":null,"topics":["adoptopenjdk","ansible","java","openjdk","oracle","oracle-java","role","sapjvm","sapmachine","zulu"],"latest_commit_sha":null,"homepage":"https://galaxy.ansible.com/lean_delivery/java","language":"Jinja","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lean-delivery.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-07-05T10:29:35.000Z","updated_at":"2026-01-14T13:48:01.000Z","dependencies_parsed_at":"2024-07-24T15:31:32.719Z","dependency_job_id":"656e93a5-001b-49d1-9e10-ec65088276ff","html_url":"https://github.com/lean-delivery/ansible-role-java","commit_stats":null,"previous_names":[],"tags_count":38,"template":false,"template_full_name":null,"purl":"pkg:github/lean-delivery/ansible-role-java","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fansible-role-java","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fansible-role-java/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fansible-role-java/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fansible-role-java/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lean-delivery","download_url":"https://codeload.github.com/lean-delivery/ansible-role-java/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lean-delivery%2Fansible-role-java/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478350,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["adoptopenjdk","ansible","java","openjdk","oracle","oracle-java","role","sapjvm","sapmachine","zulu"],"created_at":"2024-09-25T01:42:45.140Z","updated_at":"2026-01-16T11:36:22.569Z","avatar_url":"https://github.com/lean-delivery.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":"java role\n=========\n[![License](https://img.shields.io/badge/license-Apache-green.svg?style=flat)](https://raw.githubusercontent.com/lean-delivery/ansible-role-java/master/LICENSE)\n[![Build Status](https://gitlab.com/lean-delivery/ansible-role-java/badges/master/pipeline.svg)](https://gitlab.com/lean-delivery/ansible-role-java/pipelines)\n[![Galaxy](https://img.shields.io/badge/galaxy-lean__delivery.java-blue.svg)](https://galaxy.ansible.com/lean_delivery/java)\n![Ansible](https://img.shields.io/ansible/role/d/27687.svg)\n![Ansible](https://img.shields.io/badge/dynamic/json.svg?label=min_ansible_version\u0026url=https%3A%2F%2Fgalaxy.ansible.com%2Fapi%2Fv1%2Froles%2F27687%2F\u0026query=$.min_ansible_version)\n## Summary\n\nThis Ansible role has the following features for:\n\n**OpenJDK**\n\n- Install JRE, JDK\n- Additional opportunity to install from openjdk-fallback, repositories, s3, web, chocolatey, local source.\n\n**ZULU**\n\n- Install JDK\n- Additional opportunity to install from zulu-fallback, s3, web, local source, chocolatey.\n\n**Oracle Java:**\n\n - Install JRE, JDK, Server-JRE\n - Additional opportunity to install from s3, web, local source.\n\n**DISCLAIMER**: usage of any version of this role implies you have accepted the\n[Oracle Binary Code License Agreement for Java SE](http://www.oracle.com/technetwork/java/javase/terms/license/index.html).\n\n**SAPJVM**\n\n- Install JDK\n- Additional opportunity to install from sapjvm-fallback, s3, web, local source.\n\n**Adoptium**\n\n- Install JDK, JRE\n- Additional opportunity to install from adoptium-fallback, repositories, web, local source, s3, chocolatey.\n\n**SapMachine**\n\n- Install JDK, JRE\n- Additional opportunity to install from sapmachine-fallback, web, local source, chocolatey (only latest version), s3.\n\n**Alibaba Dragonwell 8 JDK**\n\n- Install JDK\n- Alibaba Dragonwell 8 corresponds to OpenJDK 8 and is compatible with the Java SE Standard\n- Linux/x86_64 platform only\n- Additional opportunity to install from dragonwell8-fallback, web, local source, s3.\n\n**Amazon Corretto**\n\n- Install JDK 8 and 11 \n- Install JRE 8 (Amazon Linux 2 only)\n- Additional opportunity to install from fallback, web, local source, s3.\n\n\nRequirements\n------------\n\n - Version of the ansible for installation: 2.10 - 13\n- **Supported OpenJDK version**:\n   - 8\n      - EL 6: repositories, tarball\n      - EL 7: repositories, tarball\n      - EL 8: repositories, tarball\n      - Ubuntu bionic: repositories, tarball\n      - Debian stretch: repositories, tarball\n      - Windows: tarball\n   - 11\n      - EL 6: tarball\n      - EL 7: repositories, tarball\n      - Ubuntu bionic: repositories, tarball\n      - Debian stretch: tarball\n      - Windows: tarball\n   - 17\n   - 21\n   - 25\n - **Supported zulu version**:\n   - 8\n   - 11\n   - 17\n   - 21\n   - 25\n - **Supported oracle java version**:\n   - 7\n   - 8\n   - 11\n   - 12\n - **Supported sapjvm version**:\n   - 7\n   - 8\n - **Supported Adoptium version**:\n   - 8\n   - 11\n   - 12\n   - 13\n- **Supported SapMachine version**:\n    - 11\n      - EL 7: fallback\n      - EL 8: fallback\n      - Ubuntu bionic: fallback\n      - Debian stretch: fallback\n      - Windows: chocolatey (only latest version, don't support java_minor_version variables), fallback\n   - 12\n      - EL 7: tarball\n      - EL 8: tarball\n      - Ubuntu bionic: tarball\n      - Debian stretch: tarball\n      - Windows: tarball\n   - 13\n      - EL 7: fallback\n      - EL 8: fallback\n      - Ubuntu bionic: fallback\n      - Debian stretch: fallback\n      - Windows: chocolatey (only latest version, don't support java_minor_version variables), fallback\n - **Supported Alibaba Dragonwell version**:\n   - 8.0.0\n   - 8.1.1\n - **Supported Amazon Corretto version**:\n   - 8\n   - 11\n - **Supported OS**:\n   - Ubuntu\n     - bionic\n     - xenial\n     - trusty\n   - Debian\n     - stretch\n     - buster\n   - Amazon Linux\n   - Amazon Linux 2\n   - EL (RHEL/CentOS)\n     - 6\n     - 7\n     - 8\n   - Windows\n     - 10\n     - 2016\n     - 2019\n\n## Role Variables\n  - `java_distribution` Java distribution type, one of:\n     - `openjdk` (default)\n     - `oracle_java`\n     - `sapjvm`\n     - `zulu`\n     - `adoptium`\n     - `sapmachine`\n     - `dragonwell8`\n     - `corretto`\n\n        **Notice**: this variable is mandatory in case of installing other distribution than 'openjdk'.\n\n  - `java_package` Java package type.\n\n    Available:\n      - `jdk` (default)\n      - `jre`\n\n  - `transport` Artifact source transport. Use `fallback` (OpenJDK, SAPJVM, Adoptium, SapMachine, ZULU, Alibaba Dragonwell, Amazon Corretto distributions are supported), `repositories`(OpenJDK, Adoptium, Amazon Corretto distributions are supported), `local`, `web` or `s3` according to your requirements.\n\n    Available:\n      - `repositories` Installing java from system repositories (yum or apt, Linux only)\n      - `web` Fetching artifact from custom web url\n      - `chocolatey` Windows specific package manager (Supported OpenJDK: JDK 11, 12 or JRE 8, SapMachine, ZULU, Adoptium)\n      - `local` Local artifact stored on ansible master (can be used as cache for other transport)\n      - `s3` Download artifact from s3 bucket (Linux clients only, for Windows please use other transports)\n      - `fallback` fetching artifacts from official sites (available for distributions: openjdk, sapjvm, zulu, adoptium, sapmachine, dragonwell8, corretto).   \n         This is *default* value for `transport` variable\n\n        **Notice** using `s3` transport requires specific packages to be installed on target host:\n          - 'botocore'\n          - 'boto'\n          - 'boto3'\n        These packages are not included in given role. You should install them preliminary.\n\n  - `java_tarball_install` - boolean parameter to choose between tarball and package installation. Default is `true` if `transport` is not `repositories`.\n  - `java_major_version` - major version of OpenJDK (8,11,17) or oracle-java (6,7,8, 11 etc.) Default is 12.\n  - `java_minor_version` - minor version of oracle-java. For version `8.202` minor will be `202` (default). For OpenJDK this variable not needed setup manually.\n  - `java_arch` Package architecture. (With installing OpenJDK from repositories its variable you may use only for RHEL )\n\n    Available:\n      - `x64` for x86_64 (default)\n      - `i586` for x86\n\n  - `java_path` Where java package will be installed.\n    **Notice** Not use this variable if transport = repositories selected\n\n    default values depend on OS distribution:\n      - RedHat: `/usr/java` (`/usr/lib/jvm` from repositories)\n      - Debian: `/usr/lib/jvm`\n      - Windows: `C:\\Program Files\\Java`\n\n  - `java_download_path`: Local folder for downloading artifacts\n\n    Linux default: `/tmp`\n\n    Windows default: `TEMP environment variable`\n\n  - `transport_web` URI for http/https artifact  e.g. \"http://my-storage.com/jdk-8u172-linux-x64.tar.gz\"\n  - `transport_web: \"https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz\"` (OpenJDK 11 for example)\n  - `transport_local` Path for local artifact e.g. \"/tmp/jdk-8u172-linux-x64.tar.gz\"\n\n  - `transport_s3_bucket` - s3 bucket name\n\n    default: `s3_bucket`\n  - `transport_s3_path` - path to patch folder in bucket\n\n    default: `/folder`\n  - `transport_s3_aws_access_key` - aws key. Need to be set as parameter or env variables according to https://docs.ansible.com/ansible/latest/modules/aws_s3_module.html\n\n    default: `{{ lookup('env','AWS_ACCESS_KEY') }}`\n  - `transport_s3_aws_secret_key` - aws secret key. Need to be set as parameter or env variables according to https://docs.ansible.com/ansible/latest/modules/aws_s3_module.html\n\n    default: `{{ lookup('env','AWS_SECRET_KEY') }}`\n\n#  Configure Adoptium\n  - `adoptium_impl` Adoptium Implementation\n     - `hotspot` (default)\n     - `openj9`\n\n# Configure executable paths\n\n  - `java_setup_path` - to enable binary path setup. If `true` java binaries are added to system paths, profile is updated and alternatives are set. If set to `false` - no system settings updates will be done excepting performed by package scenarios.   \n    default: `true`\n\n# Configure alternatives priority\n\n  - `java_alternative_priority` - priority configuration. Usefull if you need low priority setup.\n    default: 100\n\n# Configure unlimited policy\n\n  - `java_unlimited_policy_enabled` - to apply unlimited policy\n\n    default: `false`\n  - `java_unlimited_policy_transport` Artifact source transport. Use `fallback`, `local`, `web` or `s3` for more predictable result.   \n    defaule: `fallback`\n\n    Available:\n      - `web` Fetching artifact from custom web url\n      - `local` Local artifact stored on ansible master\n      - `s3` artifact in s3 bucket\n  - `java_unlimited_policy_transport_web` URI for http/https artifact  e.g. \"http://my-storage.com/jce_policy-8.zip\"\n  - `java_unlimited_policy_transport_local` Path for local artifact e.g. \"/tmp/jce_policy-8.zip\"\n  - `java_unlimited_policy_transport_s3_bucket` - s3 bucket name\n\n    default: `s3_bucket`\n  - `java_unlimited_policy_transport_s3_path` - path to patch folder in bucket\n\n    default: `/folder`\n\n## Some examples of the installing current role\n\nansible-galaxy install lean_delivery.java\n\nExample Playbook\n----------------\n### Installing OpenJDK 25 from openjdk-fallback (default role behaviour):\n```yaml\n- name: Install openjdk java\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_major_version: 25\n```\n\n### Installing OpenJDK 21, 17, 11, 8 from repositories:\n```yaml\n- name: Install openjdk java\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_major_version: 21\n      transport: repositories\n```\n\n### Installing OpenJDK 11 from web:\n```yaml\n- name: Install openjdk java\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_major_version: 11\n      java_tarball_install: true\n      transport: web\n      transport_web: https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz\n```\n\n### Installing OpenJDK 11.0.2 on Windows host with win_chocolatey:\n```yaml\n- name: Install java\n  hosts: windows\n\n  roles:\n    - role: lean_delivery.java\n      java_package: jdk\n      transport: chocolatey\n      java_major_version: 11\n      java_minor_version: 0.2\n```\n\n### Installing ZULU 25, 21, 17, 11, 8 from zulu-fallback:\n```yaml\n- name: Install zulu\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_major_version: 25\n      java_distribution: zulu\n```\n\n### Installing Oracle java 8 from local file:\n```yaml\n- name: Install oracle java\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_distribution: oracle_java\n      transport: local\n      transport_local: /tmp/jdk-8u181-linux-x64.tar.gz\n```\n\n### Installing Oracle java 8 from S3 bucket:\nBefore install you should prepare host to use aws_s3 module\nhttps://docs.ansible.com/ansible/latest/modules/aws_s3_module.html#requirements\n\n```yaml\n- name: Install java\n  hosts: all\n  \n  roles:\n    - role: lean_delivery.java\n        java_distribution: oracle_java\n        java_package: jre\n        java_major_version: 8\n        transport: s3\n        transport_s3_bucket: java-s3-bucket\n        transport_s3_path: /java/jre-8u181-linux-x64.tar.gz\n```\n\n### Installing SAPJVM 8 from sapjvm-fallback:\n\n```yaml\n- name: Install sapjvm\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_distribution: sapjvm\n      transport: fallback\n      java_major_version: 8\n```\n\n### Installing Adoptium 8-openj9-jre from adoptium-fallback:\n\n```yaml\n- name: Install Adoptium\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_distribution: adoptium\n      transport: fallback\n      java_package: jre\n      adoptium_impl: openj9\n      java_major_version: 8\n```\n\n### Installing SapMachine sapmachine-jre-10 from sapmachine-fallback:\n\n```yaml\n- name: Install SapMachine\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_distribution: sapmachine\n      transport: fallback\n      java_package: jre\n      java_major_version: 10\n```\n### Installing Alibaba Dragonwell 8 from dragonwell8-fallback:\n\n```yaml\n- name: Install Alibaba Dragonwell8\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_distribution: dragonwell8\n      transport: fallback\n      java_major_version: 8\n```\n### Installing Amazon Corretto JDK 8 from corretto-fallback:\n\n```yaml\n- name: Install Amazon Corretto\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_distribution: corretto\n      transport: fallback\n      java_major_version: 8\n```\n\n### Installing Amazon Corretto JDK 11 from repo on Amazon Linux 2:\n\n```yaml\n- name: Install Amazon Corretto\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_distribution: corretto\n      transport: repositories\n      java_major_version: 11\n```\n\n### Installing Amazon Corretto JDK 11 on Ubuntu 18.04 from web:\n\n```yaml\n- name: Install Amazon Corretto\n  hosts: all\n\n  roles:\n    - role: lean_delivery.java\n      java_distribution: corretto\n      transport: web\n      transport_web: https://d3pxv6yz143wms.cloudfront.net/11.0.5.10.1/amazon-corretto-11.0.5.10.1-linux-x64.tar.gz\n```\n\nLicense\n-------\n\nApache\n\nAuthor Information\n------------------\n\nauthors:\n  - Lean Delivery Team \u003cteam@lean-delivery.com\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flean-delivery%2Fansible-role-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flean-delivery%2Fansible-role-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flean-delivery%2Fansible-role-java/lists"}