通过 GitHub Actions (.yml) 部署的 Azure 静态 Web 应用程序在私有(private) npm 包上出现 404 错误

标签 azure github continuous-deployment azure-static-web-app

我在 GitHub 中有一个 Angular 应用程序,它通过 GitHub 操作部署到 Azure 静态 Web 应用程序。

添加私有(private) npm 包时部署失败。

在 GitHub 文档中,我找到了如何通过环境设置为节点脚本指定 npm token ,并将其与 Azure 的文档结合起来定制工作流程文件,这促使我尝试了这个(及其一些变体):

  - name: Build And Deploy
    id: builddeploy
    uses: Azure/static-web-apps-deploy@v1
    with:
      azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_RANDOM }}
      repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for Github integrations (i.e. PR comments)
      action: "upload"
      ###### Repository/Build Configurations - These values can be configured to match your app requirements. ######
      # For more information regarding Static Web App workflow configurations, please visit: https://aka.ms/swaworkflowconfig
      app_location: "/" # App source code path
      api_location: "" # Api source code path - optional
      output_location: "dist" # Built app content directory - optional
      ###### End of Repository/Build Configurations ######
    env:
      NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

我读过的最后一行 NODE_AUTH_TOKEN 将生成一个 .npmrc 文件来验证进程。我有一个名为 NPM_TOKEN 的 GitHub secret ,其中包含我在 npm 中生成的 token ,选择“用于 CI 目的”选项。

但是在尝试安装私有(private)包时我仍然看到 404 错误。

任何想法将不胜感激!

最佳答案

在媒体上找到这篇文章:Install private NPM packages in github actions

按照那里的建议,我在调用 azure 部署操作之前“手动”创建了 .npmrc 文件并解决了这个问题:

      - name: Create .npmrc file
        run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > .npmrc
      - name: Build And Deploy
        id: builddeploy
        uses: Azure/static-web-apps-deploy@v1
        .......

关于通过 GitHub Actions (.yml) 部署的 Azure 静态 Web 应用程序在私有(private) npm 包上出现 404 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68732654/

相关文章:

用于索引 Blob 的 Azure 搜索替代方案

git - 如何根据某些规则拒绝 git push

linux - 为什么我的提交在最新的提交消息中重复了我的用户名?

Jenkins 持续交付管道根据输入跳过阶段

azure - 使用现有 Azure SQL Server 的 Web 应用程序 + SQL 数据库的 ARM 模板

azure - 如果删除具有相同分区键的多个项目,它们的大小或数量是否有限制

Azure Lucene 模糊搜索

Windows 上的 gitlab-runner 没有获得 .ssh 配置设置

c# - 遥测未显示在 Application Insights 中,而是给出错误

git - 如何禁止 Git 弄乱行结尾,同时保留 diff 功能?