Развертывание функции Nuxt 3 Azure не может получить доступ к статическим активам

Вопрос не требует пояснений.

Я публикую приложение Nuxt 3 в Функциях Azure с помощью DevOps Pipelines. Кажется, все работает нормально, любые активы, которые я указываю в .css файл автоматически получает динамические пути, сгенерированные следующим образом /_nuxt/assets/pattern.79b530f1.svg

Теперь моя проблема в том, что я хочу сослаться на некоторые статические файлы, такие как значок в <Head> компонент.

      <Link :rel="'shortcut icon'" :href="'https://example.com/icon.png'" :type="'image/x-icon'"/>

я пытался assets/icon.pngслишком. Я разместил icon.png файл в assets папка, а также в public папка, но, похоже, ни один из них не ссылается на файл правильно, я предполагаю, что они генерируют некоторые динамические имена, но тогда как мне правильно ссылаться на них?

Вот мой файл .yaml

      # Node.js Function App to Linux on Azure
# Build a Node.js function app and deploy it to Azure as a Linux function app.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript

trigger:
- master

variables:

  # Azure Resource Manager connection created during pipeline creation
  azureSubscription: 'XXXX-XXXX-XXXX-XXXX'

  # Function app name
  functionAppName: 'XXXXX'

  # Environment name
  environmentName: 'development'

  # Agent VM image name
  vmImageName: 'ubuntu-latest'

stages:
- stage: Build
  displayName: Build stage
  jobs:
  - job: Build
    displayName: Build
    pool:
      vmImage: $(vmImageName)

    steps:
    - task: NodeTool@0
      inputs:
        versionSpec: '14.17.6'
      displayName: 'Install Node.js'

    - script: |
        if [ -f extensions.csproj ]
        then
            dotnet build extensions.csproj --runtime ubuntu.16.04-x64 --output ./bin
        fi
      displayName: 'Build extensions'
          
    - script: |
        ls -a
        npm install 
        ls -a
        npm install nuxt3
        npm run build
      displayName: 'Prepare binaries'
      condition: 

    - task: ArchiveFiles@2
      displayName: 'Archive files'
      inputs:
        rootFolderOrFile: '$(System.DefaultWorkingDirectory)/.output'
        includeRootFolder: false
        archiveType: zip
        archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip
        replaceExistingArchive: true

    - upload: $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip
      artifact: drop

- stage: Deploy
  displayName: Deploy stage
  dependsOn: Build
  condition: succeeded()
  jobs:
  - deployment: Deploy
    displayName: Deploy
    environment: $(environmentName)
    pool:
      vmImage: $(vmImageName)
    strategy:
      runOnce:
        deploy:
          steps:
          - task: AzureFunctionApp@1
            displayName: 'Azure Functions App Deploy: '
            inputs:
              azureSubscription: '$(azureSubscription)'
              appType: functionAppLinux
              appName: $(functionAppName)
              package: '$(Pipeline.Workspace)/drop/$(Build.BuildId).zip'

0 ответов

Другие вопросы по тегам