action netlify cli
2.0.0
此操作允许使用 Netlify CLI 执行任意操作
此操作是netlify/actions/cli@master
的替代品,没有docker 层,会产生额外 30-50 秒的运行时间(这似乎导致平均部署时间约为 1m 30s)。
此操作通常在一分钟内完成(最好情况下为 30 秒)。
NETLIFY_AUTH_TOKEN
-必需用于身份验证的令牌。通过 UI 获取一个NETLIFY_SITE_ID
- 您想要使用的网站的可选API 网站 ID 从 UI 获取使用此操作的步骤将提供以下输出:
NETLIFY_OUTPUT
,运行netlify
命令的完整标准输出 on : [push]
jobs :
publish :
runs-on : ubuntu-latest
steps :
# build your site for deployment... in this case the `public` folder is being deployed
- name : Publish
uses : South-Paw/action-netlify-cli@v2
id : netlify
with :
# be sure to escape any double quotes with a backslash
args : ' deploy --json --dir "./public" --message "draft [${{ github.sha }}]" '
env :
NETLIFY_AUTH_TOKEN : ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID : ${{ secrets.NETLIFY_SITE_ID }}
# and access outputs in other steps with ${{ steps.netlify.outputs.OUTPUT_ID }}
on : [push]
jobs :
publish :
runs-on : ubuntu-latest
steps :
- name : Start deployment
uses : bobheadxi/deployments@v1
id : deployment
with :
env : production
step : start
# ... steps to build your site for deployment
- name : Deploy to Netlify
uses : South-Paw/action-netlify-cli@v2
id : netlify
with :
# note that the --json flag has been passed so we can parse outputs
args : deploy --json --prod --dir './public' --message 'production [${{ github.sha }}]'
env :
NETLIFY_AUTH_TOKEN : ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID : ${{ secrets.NETLIFY_SITE_ID }}
- name : Finish deployment
uses : bobheadxi/deployments@v1
if : always()
with :
env : ${{ steps.deployment.outputs.env }}
step : finish
status : ${{ job.status }}
deployment_id : ${{ steps.deployment.outputs.deployment_id }}
env_url : ${{ fromJson(steps.netlify.outputs.NETLIFY_OUTPUT).url }}
--json
标志 on : [push]
jobs :
publish :
runs-on : ubuntu-latest
steps :
# ... steps to build your site for deployment
- name : Deploy to Netlify
uses : South-Paw/action-netlify-cli@v2
id : netlify
with :
# note that the --json flag has been passed so we can parse outputs
args : deploy --json --prod --dir './public' --message 'production [${{ github.sha }}]'
env :
NETLIFY_AUTH_TOKEN : ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID : ${{ secrets.NETLIFY_SITE_ID }}
# You can parse the `NETLIFY_OUTPUT` output with `fromJson` function for the following information:
- name : Parse NETLIFY_OUTPUT JSON
run : |
echo "The URL where the logs from the deploy can be found"
echo "${{ fromJson(steps.netlify.outputs.NETLIFY_OUTPUT).logs }}"
echo ""
echo "the URL of the draft site that Netlify provides"
echo "${{ fromJson(steps.netlify.outputs.NETLIFY_OUTPUT).deploy_url }}"
echo ""
echo "the URL of the "real" site, set only if `--prod` was passed"
echo "${{ fromJson(steps.netlify.outputs.NETLIFY_OUTPUT).url }}"
如果您发现任何问题,请在这里报告,以便将它们压扁。
麻省理工学院,请参阅许可证文件。