gh_role_installer
Ansible Роль: gh_role_installer
Это Ansible роль, которая устанавливает релизы с GitHub. Она создана для установки бинарных файлов из релизов GitHub. Она предназначена только для установки простых бинарных файлов (написанных на Go или Rust) и не предназначена для установки сложного программного обеспечения.
Вы можете использовать ее для настройки инструментов, таких как:
- bat
- d2
- gini
- goreleaser
- helm
- k9s
- pgweb
- vhs
- ...
Требования
Нет.
Переменные Роли
Доступные переменные перечислены ниже, только gh_role_installer_tmp_directory
и gh_role_installer_binary_path
установлены по умолчанию:
gh_role_installer_version: "latest" # latest - специальное значение для получения последнего релиза (будет использован API GitHub для получения последнего релиза)
gh_role_installer_os: "linux" # название ОС, используется для загрузки релиза
gh_role_installer_arch: "amd64" # архитектура, используется для загрузки релиза
gh_role_installer_repository: "sgaunet/jwt-cli"
# url релиза, используется для загрузки релиза, будьте осторожны: version_to_install - специальное значение, которое будет заменено на версию, которую нужно установить
gh_role_installer_release: "https://github.com/{{ gh_role_installer_repository }}/releases/download/v{{ version_to_install }}/jwt-cli_{{ version_to_install }}_{{ gh_role_installer_os }}_{{ gh_role_installer_arch }}"
gh_role_installer_release_is_archive: false # если true, релиз является архивом, он будет загружен и распакован
gh_role_installer_binary_name: "jwt-cli" # имя бинарного файла для установки
gh_role_installer_cmd_to_get_version: "jwt-cli version" # команда для получения версии установленного бинарного файла
gh_role_installer_tmp_directory: "{{ lookup('env', 'TMPDIR') | default('/tmp', true) }}" # временный каталог для загрузки релиза
gh_role_installer_binary_path: "/usr/local/bin/{{ gh_role_installer_binary_name }}" # каталог, куда будет установлен бинарный файл
Зависимости
Нет.
Пример Playbook
- hosts: all
roles:
- role: sgaunet.gh_role_installer
vars:
gh_role_installer_version: "latest"
gh_role_installer_os: "unknown-linux-musl"
gh_role_installer_arch: "x86_64"
gh_role_installer_repository: "zellij-org/zellij"
gh_role_installer_release: "https://github.com/{{ gh_role_installer_repository }}/releases/download/v{{ version_to_install }}/zellij-{{ gh_role_installer_arch }}-{{ gh_role_installer_os }}.tar.gz"
gh_role_installer_release_is_archive: true
gh_role_installer_binary_name: "zellij"
gh_role_installer_cmd_to_get_version: 'zellij --version | sed "s#zellij ##g"'
# gh_role_installer_tmp_directory: "{{ lookup('env', 'TMPDIR') | default('/tmp', true) }}"
# gh_role_installer_binary_path: "/usr/local/bin/{{ gh_role_installer_binary_name }}"
Роль также содержит переменные для установки различных инструментов. Смотрите список доступных инструментов в этой документации.
Лицензия
MIT
Установить
ansible-galaxy install sgaunet/ansible-role-gh-release-installer
Лицензия
mit
Загрузки
216
Владелец