Изменить владельца файла с Jenkins

У меня некоторое время был запущен и запущен Jenkins на нескольких сайтах, но есть один сайт, на котором мне все еще нужно входить в систему через день, чтобы сменить владельца файла. На этом сайте есть блог WordPress, работающий под www.somesite.com/blog, а остальная часть сайта не-WP.

WordPress требует, чтобы каталог принадлежал Apache для самостоятельного обновления, установки плагинов, очистки кэша и т. Д. Но на сайте есть настраиваемая тема, включенная в общее хранилище, поэтому Дженкинсу также необходимо владение каталогом, иначе сборка не удастся.

Сейчас я думаю о том, чтобы Дженкинс менял владельца файла при каждом развертывании, но я не знаю, как это сделать. Еще одна идея, которая приходит мне в голову, заключается в том, что мы могли бы раскрутить тему WordPress в ее собственный репозиторий и установить ее, как любую другую тему WordPress (возможно ли это? Я никогда раньше не использовал WP).

Любое понимание приветствуется!

1

Решение

Вы можете запускать сценарии оболочки от Jenkins. Таким образом, вы можете использовать chown, чтобы изменить владельца файла или назначить его другой группе.

Взгляни на Документы Дженкинса.

РЕДАКТИРОВАТЬ:

Вы правы, возможно, вам нужно работать под root.
Я считаю, что у вас есть несколько вариантов:

  • Не меняйте владельца файла, просто предоставьте права доступа к файлу от пользователя, который будет его использовать (например, chmod 770, когда мы предполагаем, что пользователь, выполняющий Jenkins, и пользователь, обращающийся к файлу, находятся в одной группе пользователей). Вы можете создать совершенно отдельную группу пользователей только для этого.
  • Используйте ssh для локальной учетной записи root и делайте так. Вы можете использовать ключи SSH для доступа к учетной записи root, чтобы избежать ввода учетных данных root (ssh-add)
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]