AnsibleでCentOS 8にAmazon Corretto 8をインストールする時の書き方。


下記Amazon Corretto 8をインストールするコマンドをAnsibleで実行したい。

$ sudo rpm --import https://yum.corretto.aws/corretto.key
$ sudo curl -L -o /etc/yum.repos.d/corretto.repo https://yum.corretto.aws/corretto.repo
$ sudo yum install -y java-1.8.0-amazon-corretto-devel

下記のように書けばインストール出来る。

playbooks/roles/server/tasks/main.yml
- name: Import rpm key.
  rpm_key:
    key: https://yum.corretto.aws/corretto.key

- name: Add corretto repository.
  yum_repository:
    name: corretto
    description: "Amazon Corretto repository"
    baseurl: https://yum.corretto.aws/$basearch

- name: Install Amazon Corretto 8.
  yum:
    name: java-1.8.0-amazon-corretto-devel
    state: present
    enablerepo: corretto

インストール確認

$ docker exec -it server_container bash
[root@target /]# java -version
openjdk version "1.8.0_275"
OpenJDK Runtime Environment Corretto-8.275.01.1 (build 1.8.0_275-b01)
OpenJDK 64-Bit Server VM Corretto-8.275.01.1 (build 25.275-b01, mixed mode)

baseurlとenablerepoの設定に気が付かず、多少ハマった。
また、CentOS 8内部では、yumではなくdnfが動いている様子