когда я пытаюсь заставить Дженкинса сделать это
Убедитесь, что задание Jenkins действительно выполняется как jenkins
: добавьте в свою работу шаг для печати id -a
.
Скорее всего, он работает не как Jenkins, а как ваша основная учетная запись, которая не имеет права писать в эту папку.
"невозможно создать пользователь каталог данных": возможно, 1766 - это идентификатор учетной записи пользователя, созданной как пользователь.
Проверьте, помогает ли создание (в качестве основной учетной записи) этой папки 1766
с помощью chmod 777 (для тестирования).
Примечание выпуск Hugo 3143 упоминает:
Снимки доступны только для чтения в целях безопасности. Мы хотим не допустить, чтобы враждебная сторона украла программное обеспечение на вашем компьютере, поэтому вы не можете изменять оснастку, установленную в вашей системе. Это также означает, что вы всегда можете проверить подпись на оснастке, даже спустя долгое время после ее установки, чтобы убедиться, что это все та же программа, которую вы намеревались. Если вы хотите изменить оснастку, вы обычно можете создать свою собственную версию, особенно если она с открытым исходным кодом.
Так, где можно мгновенно записывать данные? Каждая привязка получает свой собственный набор доступных для записи каталогов, которые имеют определенные свойства. Есть две директории, которые оснастка может записывать независимо от пользователя. Один из них является версионным - каждый раз при обновлении снимка данные сохраняются, и новая редакция снимка может обновить свою копию. Другой «общий» каталог данных не является версионным и используется для больших двоичных данных, которые вы не хотите дублировать между ревизиями оснастки:
/var/snap/<name>/current/ ← $SNAP_DATA is the versioned snap data directory
/var/snap/<name>/common/ ← $SNAP_COMMON will not be versioned on upgrades
Обычно конфигурация хранится в одном из них вместе с общесистемными данными для привязки.
Существует также два эквивалентных каталога для записи для каждой привязки в домашнем хранилище пользователя, которые могут использоваться для хранения данных привязки, относящихся к тому или иному пользователю, отдельно:
~/snap/<name>/current/ ← $SNAP_USER_DATA that can be rolled back
~/snap/<name>/common/ ← $SNAP_USER_COMMON unversioned user-specific data
Вы можете использовать мгновенную версию Hugo для записи (т.е. запуска hugo new site
и т. Д.) В любом месте вашей директории $HOME
, скажем ~/tmp/htest
, но не в общесистемной /tmp
каталог.
Соответствует разделу «Hugo Install from snap» :
Hugo-as-a-snap может записывать только в пользовательский каталог $ HOME - и монтируемые gvfs каталоги, которыми владеет пользователь - из-за модели привязки и безопасности Snaps .
Используйте sudo snap install hugo --classic
, чтобы отключить модель безопасности по умолчанию, если вы хотите, чтобы hugo
имел доступ к записи в других путях, кроме пользовательского каталога $HOME
.