- Создана новая роль repo для добавления репозиториев на все ОС - Добавлена поддержка Docker, PostgreSQL, Elasticsearch, Patroni репозиториев - Реализована специальная поддержка российских дистрибутивов: - Astra Linux: добавлены репозитории Lab50 и debian-archive-keyring - Alt Linux: добавлены репозитории Sisyphus (alt-sisyphus, classic, contrib) и Autoimports - Обновлена документация README.md с информацией о новой роли - Обновлен .ansible-lint для подавления необходимых правил - Автор: Сергей Антропов, https://devops.org.ru
84 lines
4.1 KiB
YAML
84 lines
4.1 KiB
YAML
---
|
||
# Задачи для Alt Linux
|
||
# Автор: Сергей Антропов
|
||
# Сайт: https://devops.org.ru
|
||
# Alt Linux использует apt и свои внутренние репозитории
|
||
|
||
- name: Обновить кэш пакетов Alt Linux
|
||
ansible.builtin.raw: apt-get update -qq
|
||
register: update_result
|
||
changed_when: update_result.rc == 0
|
||
failed_when: false
|
||
|
||
- name: Установить необходимые пакеты для работы с репозиториями в Alt Linux
|
||
ansible.builtin.raw: apt-get install -y ca-certificates curl gnupg || true
|
||
register: install_result
|
||
changed_when: install_result.rc == 0
|
||
failed_when: false
|
||
|
||
- name: Создать директорию для GPG ключей
|
||
ansible.builtin.file:
|
||
path: /usr/share/keyrings
|
||
state: directory
|
||
mode: '0755'
|
||
failed_when: false
|
||
|
||
- name: Получить и добавить Docker GPG ключ (используем ключ Debian)
|
||
ansible.builtin.raw: curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg || true
|
||
args:
|
||
creates: /usr/share/keyrings/docker-archive-keyring.gpg
|
||
changed_when: false
|
||
failed_when: false
|
||
|
||
- name: Попытаться добавить репозиторий Docker для Alt Linux
|
||
ansible.builtin.raw: echo "deb [arch={{ ansible_architecture }} signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian buster stable" > /etc/apt/sources.list.d/docker.list || true
|
||
changed_when: false
|
||
failed_when: false
|
||
when: ansible_architecture in ["amd64", "x86_64"]
|
||
|
||
- name: Проверить и добавить репозиторий Sisyphus (alt-sisyphus)
|
||
ansible.builtin.raw: grep -q "Sisyphus.*alt-sisyphus" /etc/apt/sources.list || echo "{{ alt_repos['sisyphus_repo'] }}" >> /etc/apt/sources.list
|
||
register: sisyphus_result
|
||
changed_when: sisyphus_result.rc == 0
|
||
failed_when: false
|
||
|
||
- name: Проверить и добавить репозиторий Sisyphus classic
|
||
ansible.builtin.raw: grep -q "Sisyphus.*classic" /etc/apt/sources.list || echo "{{ alt_repos['sisyphus_classic_repo'] }}" >> /etc/apt/sources.list
|
||
register: sisyphus_classic_result
|
||
changed_when: sisyphus_classic_result.rc == 0
|
||
failed_when: false
|
||
|
||
- name: Проверить и добавить репозиторий Sisyphus contrib
|
||
ansible.builtin.raw: grep -q "Sisyphus.*contrib" /etc/apt/sources.list || echo "rpm [alt] http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus x86_64 contrib" >> /etc/apt/sources.list
|
||
register: sisyphus_contrib_result
|
||
changed_when: sisyphus_contrib_result.rc == 0
|
||
failed_when: false
|
||
|
||
- name: Проверить и добавить репозиторий autoimports
|
||
ansible.builtin.raw: grep -q "autoimports" /etc/apt/sources.list || echo "{{ alt_repos['autoimports_repo'] }}" >> /etc/apt/sources.list
|
||
register: autoimports_result
|
||
changed_when: autoimports_result.rc == 0
|
||
failed_when: false
|
||
|
||
- name: Обновить кэш пакетов после добавления репозиториев
|
||
ansible.builtin.raw: apt-get update -qq
|
||
register: cache_update
|
||
changed_when: cache_update.rc == 0
|
||
failed_when: false
|
||
|
||
- name: Выполнить обновление пакетов Alt Linux
|
||
ansible.builtin.raw: apt-get upgrade -y -qq || true
|
||
register: upgrade_result
|
||
changed_when: upgrade_result.rc == 0
|
||
failed_when: false
|
||
|
||
- name: Информационное сообщение о репозиториях Alt Linux
|
||
ansible.builtin.debug:
|
||
msg: |
|
||
Роль repo выполнена для Alt Linux.
|
||
Добавлены репозитории:
|
||
- Sisyphus (alt-sisyphus) - rolling release с ежедневными обновлениями
|
||
- Sisyphus (classic) - классический репозиторий
|
||
- Autoimports - автоматически собранные свежие пакеты из GitHub/GitLab
|
||
ВНИМАНИЕ: Sisyphus может быть нестабилен, используйте осторожно.
|
||
PostgreSQL, Elasticsearch и Patroni обычно доступны в базовых репозиториях Alt Linux. |