Публикация
«Сохранить» хранит правки в CMS. «Опубликовать» выкладывает сохранённую версию на сайт: CMS запускает workflow GitHub Actions в репозитории сайта, а он собирает сайт с опубликованным контентом и выкладывает его на хостинг.
Опубликованный контент
Заголовок раздела «Опубликованный контент»Сборка берёт контент у CMS по открытому адресу — без паролей:
GET https://<CMS>/api/sites/<сайт>/publishedТам только опубликованная версия: сохранённые, но не опубликованные правки сюда не попадают. До первой публикации — начальный контент сайта. В коде сайта это site.loadPublishedContent().
Фото из контента лежат в CMS по адресам /media/<сайт>/…. Статическая сборка копирует их к себе. Сайт на сервере может отдавать их через маршрут, который добавляет интеграция.
Workflow сайта
Заголовок раздела «Workflow сайта»Workflow запускается вручную — через workflow_dispatch, — именно так его запускает CMS:
name: Deploy
on: workflow_dispatch:
jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: 24 cache: npm - run: npm ci - run: npm run build # дальше — выкладка dist/ на хостинг сайта, например по SFTPПодключить к CMS
Заголовок раздела «Подключить к CMS»- Создайте fine-grained токен с доступом только к репозиторию сайта и правом Actions: Read and write.
- В CMS: Сайты → Настройки сайта → раздел Публикация → репозиторий, файл workflow, ветка и токен → Подключить. CMS сразу проверит, что видит workflow с этим токеном.
Токен хранится только на сервере CMS, страницы видят лишь его последние четыре символа.
Что видит владелец
Заголовок раздела «Что видит владелец»После «Опубликовать» редактор показывает, как идёт выкладка: «Сайт обновляется…», «Опубликовано, сайт обновлён» или «Сайт не обновился» с кнопкой «Опубликовать ещё раз». CMS не запускает сборку впустую: не чаще раза в 30 секунд, не пока идёт прошлая и не повторно для уже выложенной версии.