Версионирование коллекций#
При описании зависимостей Ansible рекомендуется всегда явно указывать номер версии используемой коллекции. Это позволит избежать незапланированных изменений в существующем окружении и несовместимости новой версии коллекции с ним.
Коллекции версионируются согласно правилу семантического версионирования. Версия коллекции выглядит как:
<major_version>.<minor_version>.<patch>[-rc.<rc_version>]
где:
<major_version>
– номер мажорной версии. Версия0
используется для начальной разработки. Номер мажорной версии увеличивается, если в код коллекции добавляются изменения API.<minor_version>
– номер минорной версии. Увеличивается при добавлении новой функциональности или существенных изменениях в уже существующей функциональности без нарушения совместимости с более ранним API. Минорная версия обнуляется при увеличении мажорной версии.<patch>
– номер срочного обновления при исправлении ошибок. Увеличивается после исправления ошибок в имеющейся функциональность без потери обратной совместимости. Новая функциональность не вносится, существенные изменения в уже существующей не производятся. Это поле обнуляется при увеличении мажорной и минорной версий.(опционально)
-rc.<rc_version>
– версия Release Candidate (RC) указывает на то, что это еще не финальная версия, но функциональность почти готова к выпуску. Номер версии RC увеличивается по мере подготовки коллекции к выпуску.
Получение списка версий коллекции#
Для получения списка доступных версий коллекции выполните следующие действия:
Перейдите на страницу коллекции в соответствующем разделе Automation Hub.
Нажмите ссылку Tags в описании репозитория.
Указание версии коллекции в файле зависимостей#
Чтобы зафиксировать номер версии используемой коллекции, добавьте к соответствующей записи в файле зависимостей строку с параметром version
, например:
---
collections:
- name: astra.ald_pro
type: git
source: ssh://git@hub.astra-automation.ru:2222/aa-gca/ARFA/cups.git
version: "<version>"
Если это поле отсутствует, будет загружена самая свежая версия коллекции из доступных.
В значении поля version
можно задать условия, определяющие допустимый диапазон номеров устанавливаемой версии коллекции:
*
– самая свежая (latest) версия. Это значение используется по умолчанию.!=
– использовать любую версию, кроме указанной.==
– использовать строго указанную версию.>=
– использовать указанную версию или более новую.>
– использовать более новую версию, чем указанная.<=
– использовать указанную версию или более старую.<
– использовать версию более старую, чем указанная.
Смотрите более подробную информацию о версионировании коллекций в документации Ansible.
Примеры#
Строгое указание версии
version: "==0.1.1"
Указанная или более новая версия
version: ">=0.1"