публікація до блогу через owncloud

гаразд… отже, це невеличкий текст публікації дописів до щоденника через owncloud. як, в теорії, це повинно працювати? замість лізти на сервер по ssh, створювати файл markdonw в теці jekyll — хочеться просто додати такий файл до якоїсь особливої теки (скажімо, щоденник/blog) на onwcloud, і отримати автоматично згенерований jekyll’ом допис у щоденнику.

як це зробити? просте локальне лінкування тек з owncloud до jekyll не працює через дуже суворі обмеження в owncloud на локальний доступ до файлів, і небажання ці обмеження обходити (що призводить рано чи пізно до проблем). інший спосіб — змонтувати потрібні теки з owncloud до jekyll за допомогою webdav/davfs2…

перевіримо, чи працює?

поновлено (2019-08-02, 15:05) халепа! поки що не можу вимудрувати, як публікувати дописи через owncloud… наче ж весь ланцюжок на місці — але jekyll відмовляється додавати нові дописи, хоча повинен був би.

поновлено (2019-08-02, 15:30). гаразд, до дупи webdav — ймовірно, jekyll просто не може зрозуміти, що тека поновлюється, саме через те, що це змонтована віддалена тека? тоді спробуємо інакше: rsync (з правами рута) може копіювати нові/змінені файли з теки owncloud до теки jekyll, при цьому міняючи власника:

rsync -zrvhog --chown tivasyk:tivasyk /var/lib/docker/volumes/.../Щоденник/blog/ /home/tivasyk/jekyll/.../_posts --delete
rsync -zrvhog --chown tivasyk:tivasyk /var/lib/docker/volumes/.../Щоденник/images/ /home/tivasyk/jekyll/.../assets/images --delete

параметри -og обов’язкові, щоби –chown працював. sudo опустив, тому що обидва рядки закинув до скрипта, який запускаю з sudo. останній параметр –delete видаляє з теки jekyll файли, яких немає на owncloud: достатньо прибрати допис там, щоби він зник з блогу.

перехрестився, перевірив — працює! додаю або редагую файл makrdown через веб-інтерфейс owncloud, запускаю скрипт — jekyll підхоплює додані дописи і поновлює сайт.

залишилося додати задачу cron від адміністратора, щоби автоматизувати цю процедуру.

поновлено (2019-08-02, 16:25). відтепер cron має синхронізувати вміст блогу на owncloud до теки jekyll що п’ять хвилин. залишилося почекати й перевірити, чи працює. ну, і зображення (так само додане через owncloud) на випробу.

картинка для тесту