Централизованное распространение произвольных файлов и архивов
РОСА Центр управления поддерживает централизованное распространение произвольных файлов и архивов (например, скриптов, сертификатов, дистрибутивов ПО, конфигураций) с использованием механизма пользовательского типа содержимого и интеграции с инструментами управления (Puppet, Ansible).
Добавление произвольного файла в cодержимое
Для добавления файла необходимо:
- перейти в меню "Содержимое → Продукты" и создать новый продукт (если он ещё не существует);
- на вкладке "Репозитории" нажать Новый репозиторий;
- в поле "Тип" выбрать значение "file" (пользовательский тип файла);
- указать:
- Имя репозитория;
- URL-адрес (если файлы размещены во внешнем источнике);
Примечание — Можно загрузить файлы на сервер РОСА Центр управления вручную (например, в каталог /var/www/html/custom-files/) и указать его как источник.
- нажать кнопку Сохранить, далее нажать Действия и выбрать "Синхронизировать" (рисунок 128).

Рисунок 128 — Синхронизация созданных репозиториев
Примечание — Для файлов, размещённых локально на сервере, можно использовать альтернативный источник содержимого (п. Альтернативные источники содержимого).
Доставка файлов на узлы
Доставка файлов на управляемые узлы осуществляется с помощью:
- Классов Puppet, например, через модуль file или archive, который ссылается на URL файла вида:
https://cc.rosa.int/pulp/content/<организация>/library/files/<путь_к_файлу>
- Плейбуков Ansible, использующих модули get_url, unarchive и др.
Пример Puppet-кода для доставки файла:
file { '/opt/scripts/myscript.sh':
ensure => file,
source => 'puppet:///custom-files/myscript.sh',
mode => '0755',
}
Для архивов рекомендуется использовать класс rcc_custom_archive (если он предусмотрен в модулях) или создать собственный шаблон на основе archive.
Безопасность и контроль версий
Все файлы, размещённые через Katello, доступны только авторизованным узлам. При обновлении файла в репозитории и повторной публикации представления обеспечивается контроль версий. Для подписанных архивов или файлов можно привязать GPG-ключ (п. Импорт ключа GPG).