首页 > 解决方案 > 使用 Azure DevOps 将我的 Angular Universal (SSR) 上传到 Azure 的问题

问题描述

我使用 Angular Universal 为服务器端渲染创建了一个简单的 Angular 项目,并尝试通过 Azure DevOpds 管道将其发布为 Azure 中的 Azure App Service。

这是我创建的管道的 YAML:

pool:
  name: Azure Pipelines
steps:
- task: NodeTool@0
  displayName: 'Use Node 12.x'
  inputs:
    versionSpec: 12.x

- task: Npm@1
  displayName: 'Angular CLI'
  inputs:
    command: custom
    workingDir: MySSRSite
    verbose: false
    customCommand: 'install @angular/cli@10.2.0'

- task: Npm@1
  displayName: 'npm install'
  inputs:
    workingDir: MySSRSite
    verbose: false

- task: Npm@1
  displayName: Build
  inputs:
    command: custom
    workingDir: MySSRSite
    verbose: false
    customCommand: 'run build:ssr'

- task: CopyFiles@2
  displayName: 'Copy Files to: MySSRSite/dist/MySSRSite'
  inputs:
    SourceFolder: MySSRSite/dist/MySSRSite/server
    TargetFolder: MySSRSite/dist/MySSRSite

- task: DeleteFiles@1
  displayName: 'Delete files from MySSRSite/dist/MySSRSite/server'
  inputs:
    SourceFolder: MySSRSite/dist/MySSRSite/server
    Contents: '**'
    RemoveSourceFolder: true

- task: ArchiveFiles@2
  displayName: 'Archive MySSRSite/dist/MySSRSite/browser'
  inputs:
    rootFolderOrFile: MySSRSite/dist/MySSRSite/browser

- task: ArchiveFiles@2
  displayName: 'Archive MySSRSite/dist/MySSRSite/main.js'
  inputs:
    rootFolderOrFile: MySSRSite/dist/MySSRSite/main.js

- task: PublishBuildArtifacts@1
  displayName: 'Publish Artifact: drop'

我已将此管道与 Azure DevOps 中的发布连接,当管道成功运行时,它会自动运行发布

发布图片 1

发布图片 2

发布图片 3

所以这些是设置。

一切正常,但是当我要检查上传的内容时,这就是我得到的:

网站

这就是上传到 Azure App Service 的内容:

Azure 应用服务文件

问题出在管道中还是在发布中?


编辑

我试图将管道更改为:

pool:
  name: Azure Pipelines
steps:
- task: NodeTool@0
  displayName: 'Use Node 12.x'
  inputs:
    versionSpec: 12.x

- task: Npm@1
  displayName: 'Angular CLI'
  inputs:
    command: custom
    workingDir: MySSRSite
    verbose: false
    customCommand: 'install @angular/cli@10.2.0'

- task: Npm@1
  displayName: 'npm install'
  inputs:
    workingDir: MySSRSite
    verbose: false

- task: Npm@1
  displayName: Build
  inputs:
    command: custom
    workingDir: MySSRSite
    verbose: false
    customCommand: 'run build:ssr'

- task: CopyFiles@2
  displayName: 'Copy Files to: MySSRSite/dist/MySSRSite'
  inputs:
    SourceFolder: MySSRSite/dist/MySSRSite/server
    TargetFolder: MySSRSite/dist/MySSRSite

- task: DeleteFiles@1
  displayName: 'Delete files from MySSRSite/dist/MySSRSite/server'
  inputs:
    SourceFolder: MySSRSite/dist/MySSRSite/server
    Contents: '**'
    RemoveSourceFolder: true

- task: ArchiveFiles@2
  displayName: 'Archive MySSRSite/dist/MySSRSite/browser'
  inputs:
    rootFolderOrFile: MySSRSite/dist/MySSRSite/browser
    archiveFile: '_MySSRSite-CI/drop/deploy.zip'

- task: ArchiveFiles@2
  displayName: 'Archive MySSRSite/dist/MySSRSite'
  inputs:
    rootFolderOrFile: MySSRSite/dist/MySSRSite/main.js
    archiveFile: '_MySSRSite-CI/drop/deploy1.zip'

- task: PublishBuildArtifacts@1
  displayName: 'Publish Artifact: drop'
  inputs:
    PathtoPublish: '_MySSRSite-CI/drop'

但还是一无所获。通过此更改,它只需将 2 个 zip 文件 deploy.zip 和 deploy1.zip 上传到 Azure 应用服务。

所以有2个问题:

标签: angularazureazure-devopsazure-web-app-serviceangular-universal

解决方案


推荐阅读