--- # Задачи для 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.