将Wagtail站点部署到Netlify
项目描述
wagtail-netlify
在Netlify上部署您的Wagtail站点。功能包括
- 页面发布时的自动部署
- 新的
netlify
管理命令 - Wagtail重定向转换为Netlify格式
安装
- 如果您还没有安装,请安装 Wagtail Bakery。
- 如果您还没有安装,请安装 Netlify CLI v2.x。
- 使用pip安装Wagtail-Netlify(使用
pip install wagtailnetlify
)。
配置
- 将
wagtailnetlify
添加到您的INSTALLED_APPS
中。 - 运行迁移:
./manage.py migrate wagtailnetlify
。 - 将
NETLIFY_PATH
或NETLIFY_BUILD_HOOK
添加到您的设置中。
有关更多自定义选项,请参阅下面的 设置 部分。
使用
如果将 NETLIFY_AUTO_DEPLOY
设置为 True
,则Wagtail将在每次发布页面时自动部署您的站点。
或
要手动部署更改,请使用 ./manage.py netlify
。
要在不部署的情况下生成重定向,请使用 -n
或 --no-deploy
标志: ./manage.py netlify --no-deploy
。
要在Netlify服务器上触发构建,请配置 settings.NETLIFY_BUILD_HOOK
并使用 -t
或 --trigger-build
标志: ./manage.py netlify --trigger-build
。
设置
NETLIFY_PATH
Netlify CLI的路径。提示:输入which netlify
来检查位置。
NETLIFY_SITE_ID
默认值:None
如果设置,将部署到特定的Netlify网站。
如果没有设置,Netlify CLI可能会提示您选择一个。
NETLIFY_API_TOKEN
默认值:None
如果设置,Netlify CLI将不会在控制台中提示您点击认证链接。在部署到看不到控制台输出的远程服务器时,这可能很有用。
连接到您的Netlify账户,在生成令牌后设置设置。警告:您永远不应该在版本控制系统中检查凭证。请使用环境变量或本地设置文件代替。
NETLIFY_AUTO_DEPLOY
默认值:False
每次发布页面时是否自动将您的网站部署到Netlify。这可能需要几秒到几分钟,具体取决于网站的大小以及受您更改影响的部分页面数。如果您已配置settings.NETLIFY_BUILD_HOOK
,则发布页面将触发Netlify服务器上的构建。
NETLIFY_DEPLOY_FUNCTION
默认值:wagtailnetlify.models.deploy
在触发部署时将被调用的函数(不包括使用./manage.py netlify
命令手动触发的情况)。如果您想使用自己的任务运行器(如Celery)而不是内置的线程模型,这可能很有用。
该函数需要是一个有效的Django信号接收器。
NETLIFY_BUILD_HOOK
默认值:None
Netlify构建钩子的URL。如果提供,./manage.py netlify --trigger-build
将调用此钩子,在Netlify服务器上触发构建。如果您在Netlify上有一个处理其自己的静态网站生成的无头前端(例如Nuxt、Next或Gatsby),这可能很有用。有关详细信息,请参阅https://docs.netlify.com/configure-builds/build-hooks/。
可选的管理员视图和端点
Netlify在成功部署后可以发送webhook。此应用程序提供了一个端点用于该webhook以及完成部署的管理员视图。要启用此视图
- 将
wagtail.contrib.modeladmin
添加到您的INSTALLED_APPS
- 更新您的项目的
urls.py
# in your imports
from wagtailnetlify import urls as netlify_urls
# in urlpatterns, before including wagtail_urls
url(r"^netlify/", include(netlify_urls)),
- 在您的应用程序的Netlify管理员界面中,将http://yourdomain/netlify/success添加为通知出站webhook的URL(在设置 / 构建 & 部署 / 部署通知中)。
视图将在您网站的管理员中的设置 / 部署
下可用。
包含wagtailnetlify
URL还将启用位于/netlify/redirects的视图,该视图以Netlify纯文本格式输出任何Wagtail重定向。如果您使用Netlify托管Wagtail网站的头部前端,这可能很有用。
开发
版本
- 确保您在虚拟环境中安装了最新的
pip
、setuptools
和twine
版本。 - 确保您的
master
分支是最新的。 - 为新版本的发布创建一个新的分支(例如
release/v1.1.3
)。 - 按照语义化版本控制更新
wagtailnetlify/__init__.py
中的版本号。 - 更新
CHANGELOG.md
。 - (可选)如果您需要验证任何内容,请使用
make publish-test
上传到https://test.pypi.org并按需输入您的PyPi 测试凭据。 - 在GitHub上创建一个pull request并squash merge它。
- 在本地上检出并拉取
master
分支。 - 使用
make publish
并根据需要输入您的 PyPi 凭据。 - 在 GitHub 上,为新版本创建一个发布和标签。
项目详情
wagtailnetlify-0.7.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 96f57a10179be835fa9ee703c42591d6b9284c8043953a951f1684eb1812c282 |
|
MD5 | 20bb19c5eee29128c3011c1053c309bd |
|
BLAKE2b-256 | 1d73b243278091bdbf3ecd9a40476da30b48c9153b0bbabb1e53fba3737e0e37 |