idealista.java_role
Rola Ansible dla Java
Ta rola Ansible instaluję JDK od różnych dostawców (OpenJDK, AdoptOpenJDK i Corretto) w środowisku Debian/Ubuntu lub CentOS.
Jak rozpocząć
Te instrukcje pomogą Ci uzyskać kopię roli do swojego skryptu Ansible.
Po uruchomieniu zainstaluje Javę przy użyciu pakietów Debian lub RHEL.
Wymagania wstępne
Aby użyć tej roli jako zależności w swoim skrypcie, spełnij poniższe wymagania:
Zainstalowana wersja Ansible >= 2.9.0. Przeznaczenie inwentarza musi być w środowisku Debian/Ubuntu lub CentOS.
Do celów testowych potrzebujesz Python 3.7+, Pipenv.
Instalacja
Utwórz lub dodaj do pliku zależności swoich ról (np. requirements.yml):
- src: http://github.com/idealista/java_role.git
scm: git
version: 7.0.0
name: java
lub użyj Ansible Galaxy jako źródła, jeśli wolisz:
- src: idealista.java_role
version: 7.0.0
name: java
Alternatywnie, możesz znaleźć oznakowane obrazy Dockera dla Debian Stretch i Buster, Ubuntu Xenial, Bionic i Focal oraz CentOS 7 i 8 w Docker Hub.
Zainstaluj rolę za pomocą komendy ansible-galaxy:
$ ansible-galaxy install -p roles -r requirements.yml -f
Użyj w skrypcie:
---
- hosts: someserver
roles:
- java
Użycie
Docker Hub
Publikujemy każdą wersję roli jako obraz Dockera w Docker Hub: https://hub.docker.com/r/idealista/jdk.
Możesz pobrać nasze obrazy wykonując:
docker pull idealista/jdk:${JDK_VERSION}-${DOCKER_IMAGE_BASE}-${JDK_VENDOR}headless)
JDK_VERSION:
Preferowana wersja JDK.
DOCKER_IMAGE
: Bieżące wsparcie dla: stretch
/buster/bullseye
dla wyboru wersji Debian, xenial
/bionic
/focal
dla wyboru wersji Ubuntu oraz 7
/8
dla wyboru wersji CentOS.
JDK_VENDOR
: Bieżące wsparcie dla openjdk
/ adoptopenjdk
/corretto
Na przykład:
docker pull idealista/jdk:8u191-xenial-openjdk-headless
Listę dostępnych wersji (tagów) można sprawdzić na Docker Hub.
Ansible
OpenJDK
Należy wybrać konkretną wersję OpenJDK, nadpisując zmienną java_open_jdk_version_major
przy użyciu zmiennych grupowych lub hostowych:
System operacyjny | Wydanie OpenJDK |
---|---|
Debian Stretch | 8 (domyślnie) |
Debian Stretch | 11 |
Debian Buster | 11 (domyślnie) |
Debian Bullseye | 17 |
Debian Bullseye | 11 (domyślnie) |
Debian Bookworm | 17 |
Debian Bookworm | 17 (domyślnie) |
Ubuntu Xenial | 8 |
Ubuntu Xenial | 9 (domyślnie) |
Ubuntu Bionic | 8 |
Ubuntu Bionic | 11 (domyślnie) |
Ubuntu Focal | 8 |
Ubuntu Focal | 11 |
Ubuntu Focal | 17 (domyślnie) |
Ubuntu Jammy | 11 |
Ubuntu Jammy | 17 (domyślnie) |
CentOS 7 | 1.6.0 |
CentOS 7 | 1.7.0 |
CentOS 7 | 1.8.0 |
CentOS 7 | 11 (domyślnie) |
CentOS 8 | 1.8.0 |
CentOS 8 | 11 (domyślnie) |
Inne implementacje OpenJDK spoza strumieni dystrybucji GNU/Linux nie są oficjalnie wspierane, ale można łatwo używać tej roli dodając dodatkowe repozytoria (zobacz zmienne w katalogach AdoptOpenJDK/Temurin i Corretto).
Dodawanie certyfikatów do magazynu zaufania Javy
Ta rola wspiera dodawanie certyfikatów do magazynu zaufania Javy. Lokalizacja magazynu zaufania może się zmieniać w zależności od wersji Javy:
- Lokalizacja magazynu zaufania dla Javy 9 i nowszych: $JAVA_HOME/lib/security/cacerts
- Lokalizacja magazynu zaufania dla Javy przed wersją 9: $JAVA_HOME/jre/lib/security/cacerts
Należy wybrać konkretną lokalizację magazynu zaufania, nadpisując zmienną java_keystore_dir
przy użyciu zmiennych grupowych lub hostowych. Dodatkowo, musisz ustawić, jakie certyfikaty chcesz dodać, ustawiając zmienną java_certs
oraz hasło magazynu certyfikatów, ustawiając java_cert_keystore_pass
.
Testowanie
$ pipenv sync
$ DOCKER_IMAGE_BASE=(debian:stretch-slim|debian:buster-slim|debian_bullseye-slim|amd64/ubuntu:xenial|amd64/ubuntu:bionic|amd64/ubuntu:focal|centos:7|centos:8) JDK_VENDOR=(`java_jdk_version` openjdk|adoptopenjdk|corretto) JDK_MAJOR=(`java_open_jdk_version_major` sprawdź plik [.travis.yml](.travis.yml), aby zobaczyć wspierane wersje) JDK_VERSION=(`java_open_jdk_version` sprawdź plik [.travis.yml](.travis.yml), aby zobaczyć wspierane wersje) pipenv run molecule test
Uwaga: JDK_VENDOR to opcjonalny parametr, jeśli nie jest zdefiniowany, ta rola użyje openjdk. Uwaga: JDK_VERSION to opcjonalny parametr, jeśli nie jest zdefiniowany, ta rola zainstaluje najnowszy dostępny pakiet dla wybranego głównego wydania Javy. Uwaga: debian9 (Debian Stretch) będzie użyty jako domyślna dystrybucja linuksa, jeśli żadna nie zostanie podana.
Zobacz katalog molecule, aby sprawdzić możliwe platformy testowe.
Stworzone przy użyciu
Wersjonowanie
Dostępne wersje można znaleźć na tagach w tym repozytorium.
Dodatkowo możesz sprawdzić, co zmieniło się w każdej wersji w pliku CHANGELOG.md.
Autorzy
- Idealista - Praca z - idealista
Sprawdź również listę współtwórców, którzy wzięli udział w tym projekcie.
Licencja
Ten projekt jest licencjonowany na zasadach licencji Apache 2.0 - zobacz plik LICENSE po szczegóły.
Wkład
Proszę przeczytać CONTRIBUTING.md po szczegóły na temat naszego kodeksu postępowania oraz procesu składania pull requestów do nas.
Java role, installs JDKs from different vendors (OpenJDK, AdoptOpenJDK and Corretto) and sets system defaults
ansible-galaxy install idealista.java_role