rockandska.erlang
ansible-role-erlang
This Ansible role is for installing specific Erlang/OTP versions recommended by RabbitMQ.
Important: This role does not work with Ansible versions greater than 2.8.7 and less than 2.8.13 because of a bug.
Requirements
For Debian / Ubuntu
apt-transport-https
gpg-agent
ca-certificates
For CentOS / RedHat
gnupg2
Role Variables
Default settings can be found in defaults/main.yml
.
---
erlang_series: 22
erlang_rpm_repo_url: https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/rpm/el
erlang_rpm_gpg_url: https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/gpg.E495BB49CC4BBE5B.key
erlang_rpm_repo_tpl: etc/yum.repos.d/rabbitmq_erlang.repo.j2
erlang_series_rpm_version:
erlang_deb_repo_url: https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/deb
erlang_deb_gpg_url: https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/gpg.E495BB49CC4BBE5B.key
erlang_deb_repo_tpl: etc/apt/sources.list.d/rabbitmq_erlang.list.j2
erlang_deb_pinning_tpl: etc/apt/preferences.d/erlang.j2
erlang_series_deb_version:
Explanation of Variables:
erlang_series
- This should be an integer (available options are 21, 22, or 23 as of June 19, 2021).
- Make sure to choose a version compatible with the RabbitMQ version you plan to install (check the RabbitMQ documentation).
erlang_rpm_repo_url
- The base URL for the Yum repository template.
erlang_rpm_gpg_url
- The GPG key used for the Yum template.
erlang_rpm_repo_tpl
- The path to the Yum repository template.
- To use your own template:
- Add your template next to your playbook in the
templates
folder. - Use a different path from the default.
- Keep the repository name as
rabbitmq_erlang
.
- Add your template next to your playbook in the
erlang_series_rpm_version
- Specify a certain version of
erlang_series
for CentOS / RedHat systems. - Examples:
20.3.8.15-1.el7 20.3.8.17-1.el7
- Specify a certain version of
erlang_deb_repo_url
- The base URL for the Apt repository template.
erlang_deb_gpg_url
- The GPG key used for the Apt template.
erlang_deb_repo_tpl
- The path to the Apt repository template.
- To use your own template:
- Add your template next to your playbook in the
templates
folder. - Use a different path from the default.
- Add your template next to your playbook in the
erlang_deb_pinning_tpl
- The path to the Apt pinning template.
- To use your own template:
- Add your template next to your playbook in the
templates
folder. - Use a different path from the default.
- Add your template next to your playbook in the
erlang_series_deb_version
- Specify a certain version of
erlang_series
for Debian systems. - Examples:
1:20.3.8.17-1 1:20.3.8.16-1 1:20.3.8.15-1
- Specify a certain version of
Example Playbook
- hosts: rabbitmq
roles:
- { role: rockandska.erlang, erlang_series: 20 }
Local Testing
Requirements
- Python 3 (version less than 3.8)
- Docker
To run tests
$ make test
After the first run, you can access additional targets for each Tox environment and Molecule scenario through auto-completion.
To debug and run a custom Molecule command with the default test scenario:
$ source tmp/bin/activate
$ tox -e py3-ansible27 -- molecule test -s default
For more info about Molecule, check their documentation.
If you want to run tests on a remote Docker host, set the DOCKER_HOST
variable before running Tox tests.
License
This role is licensed under BSD.
ansible-galaxy install rockandska.erlang