Параметры пользовательского домена GitHub Pages сбрасываются во время новой фиксации
У меня есть статический сайт, созданный с помощью Zola, и я использую GitHub Actions, чтобы создать свой статический сайт и опубликовать его в ветке gh-pages моего репозитория. Я также настроил свой проект для обслуживания через страницы GitHub, используя ветку gh-pages.
Проблема, с которой я сталкиваюсь, заключается в том, что как только мое действие GitHub создает новую версию и помещает ее в ветку gh-pages, настройка личного домена в настройках GitHub сбрасывается.
Вот что я делаю в своем действии GitHub для создания и отправки в ветку TARGET_BRANCH (gh-pages):
- name: Commit and push to target branch
run: |-
git config --global user.email "workflow-bot@mydomain.com"
git config --global user.name "workflow-bot"
git checkout --orphan $TARGET_BRANCH
rm -rf .github/
mv public ..
rm -rf *
mv ../public/* .
touch .nojekyll
touch README.md
echo 'https://www.bigelectrons.com - SITE GENERATED USING ZOLA' > README.md
git add .
git commit -m "generated using zola build"
git push --set-upstream origin $TARGET_BRANCH --force
Есть идеи, в чем проблема и как я могу ее решить.
3 ответа
Мне просто нужно было добавить файл CNAME в ветку gh-pages. Например, в команде запуска мне пришлось добавить эти две строки:
touch CNAME
echo 'mydomain.com' > CNAME
Если вы используете Zola на страницах GitHub, решение еще проще. Просто создайтеCNAME
файл сcustom domain
на нем внутриstatic/
папку, и она должна работать.
Вы можете проверить документацию на официальной странице Zola здесь: https://www.getzola.org/documentation/deployment/github-pages/#custom-domain.
Я знаю, что это не связано с Zola, но я наткнулся на ту же ошибку при использовании Mkdocs. В документации сказано, что вам нужно создать файл CNAME в вашемdocs_dir
каталог, чтобы ихgh-deploy
script может взять это и скопировать в нужное место в ветке (см. этот документ здесь).
Для информации, использование страницы настроек разработчика Github для установки пользовательского домена делает то же самое, т.е. создание файла CNAME в корнеgh-pages
ветвь.