您好,我正在尝试使用 Azure Web 应用程序服务(使用 github 操作作为部署提供程序)来部署我的 React 应用程序。构建过程已完成,但部署步骤最后显示错误。 这是错误示例:
Run azure/webapps-deploy@v2
with:
app-name: productlister
slot-name: Production
publish-profile: ***
package: .
Package deployment using ZIP Deploy initiated.
Error: Failed to deploy web package to App Service.
Error: Deployment Failed, Error: Failed to deploy web package to App Service.
Unauthorized (CODE: 401)
App Service Application URL: [https://productlister.azurewebsites.net](https://productlister.azurewebsites.net)
我使用 github action yml 文件作为工作流程。我正在寻找这个错误的解决方案。 我不知道错误。
我创建了一个示例 React 应用程序并将其推送到 Github,如下所示:-
我使用 Node 版本 18 创建了一个 Azure Web 应用程序,并在配置中添加了这 2 个设置,请参阅下文:-
设置:-
SCM_DO_BUILD_DURING_DEPLOYMENT true
WEBSITE_WEBDEPLOY_USE_SCM true
转到左侧选项卡上的“部署”>“部署中心”,选择上面的 github 存储库,并启动部署的 Github 操作工作流程,如下所示:-
我的github工作流程:-
您可以在此找到我完整的 github 工作流程链接。
代码参考
name: Build and deploy Node.js app to Azure Web App - siliconwebapp
on:
push:
branches:
- master
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Node.js version
uses: actions/setup-node@v1
with:
node-version: '18.x'
- name: npm install, build, and test
run: |
npm install
npm run build --if-present
npm run test --if-present
- name: Upload artifact for deployment job
uses: actions/upload-artifact@v2
with:
name: node-app
path: .
deploy:
runs-on: ubuntu-latest
needs: build
environment:
name: 'Production'
url: ${{ steps.deploy-to-webapp.outputs.webapp-url }}
steps:
- name: Download artifact from build job
uses: actions/download-artifact@v2
with:
name: node-app
- name: 'Deploy to Azure Web App'
id: deploy-to-webapp
uses: azure/webapps-deploy@v2
with:
app-name: 'siliconwebapp'
slot-name: 'Production'
publish-profile: ${{ secrets.AZUREAPPSERVICE_PUBLISHPROFILE_AB22E951505E4DC799565C7665CCC5D8 }}
package: .
输出:-
注意-除了添加上述设置之外,当我在不同的Web应用程序中部署该应用程序时,即使我收到了与您相同的错误代码,请参阅以下内容:-
另一个名为 Silicon-webapp 的 Web 应用程序,与之前的一个成功的名为 Siliconwebapp 的 Web 应用程序相同。
Package deployment using ZIP Deploy initiated.
[8](https://github.com/xxx/my-app1/actions/runs/xxx/jobs/xxx#step:3:9)Error: Failed to deploy web package to App Service.
[9](https://github.com/xxx/my-app1/actions/runs/xxx06070/jobs/xxx53864#step:3:10)Error: Deployment Failed, Error: Failed to deploy web package to App Service.
[10](https://github.com/xxxdesai/my-app1/actions/runs/xxx306070/jobs/9xxxx#step:3:11)Unauthorized (CODE: 401)
我在另一个区域部署了一个新的Web应用程序siliconwebapp,然后在配置中添加了上述设置,并从部署中心启动了Github工作流程,成功了。
参考:-
如果导航到 Azure 中的“部署中心”,您可以下载发布配置文件。 这可以帮助您检查出了什么问题。 (您也可以只导入发布配置文件,这绝对可行。)
下载发布配置文件"/>的基本身份验证
您的应用程序服务> 配置(在左侧窗格中)> SCM 基本身份验证 > 打开