Hosting di contenuto statico

Servizi di Azure DevOps

Scegliere di ospitare contenuti statici per l'estensione, ad esempio file HTML, CSS e JavaScript, nel proprio servizio, in un servizio di hosting di terze parti, ad esempio Azure o Heroku, o direttamente in Azure DevOps Services.

Importante

Se l'estensione deve creare una tabella personalizzata nel database TFS, non crearla usando lo schema "dbo". Al contrario, le tabelle personalizzate devono essere create in uno schema separato. Ad esempio, 'YourExtensionName'.

Suggerimento

Per le linee guida più recenti per lo sviluppo di estensioni, incluse la tematizzazione e la migrazione da VSS.SDK, vedere il portale per sviluppatori di Azure DevOps Extension SDK.

Host su Azure DevOps Services

In questo modello il contenuto statico viene incluso nel pacchetto con il file vsix dell'estensione e viene gestito da un endpoint pubblico in https://publisher.gallerycdn.vsassets.io.

Il contenuto statico dell'estensione è utile quando si migliorano o si decorano dati da Azure DevOps Services. Il servizio di pubblicazione dell'estensione non richiede che tu (il pubblicatore dell'estensione) configuri, gestisca o paghi per i servizi di hosting per la tua estensione.

Steps

  1. Nel file manifesto dell'estensione specificare i file da includere tramite la files proprietà :
    {
      "files": [
        {
            "path": "scripts", "addressable": true
        },
        {
            "path": "images/extra/icon1.png", "addressable": true
        }
      ]
    }
    
  2. Rimuovere la baseUri proprietà (se impostata) dal manifesto dell'estensione.
  3. Creare un pacchetto per l'estensione (passaggi)
  4. Pubblicare (o ripubblicare) l'estensione (passaggi)
> [! IMPORTANTE] > Assicurati di incrementare la versione dell'estensione quando apporti modifiche ai file di contenuto statici inclusi nel ".vsix".

Tenere presente quanto segue:

  • Il valore specificato dall'attributo path può essere una cartella o un singolo file. Se una cartella, viene inclusa l'intera cartella (e tutte le sottocartelle).
  • L'attributo addressable è importante ed è ciò che indica a Visual Studio Codespaces di rendere indirizzabili gli URL dei file.
  • Tutte le richieste di asset sono sensibili al caso. Se la richiesta di un asset presenta un caso diverso rispetto all'asset caricato effettivo, viene generato un errore HTTP 404 (Non trovato).
  • Se non si specifica un valore baseUri o si imposta un valore vuoto, Visual Studio Codespaces in fase di esecuzione deve calcolare l'URI di base come se il contenuto statico sia ospitato da Azure DevOps Services.

Ospitare in un servizio di terze parti

In questo modello, il contenuto statico viene fornito dal proprio servizio e non è incluso nel file vsix dell'estensione.

Steps

  1. Impostare la proprietà baseUri nel manifesto dell'estensione, ad esempio, assumendo un valore di https://myservice.net/extension e questo contributo dell'hub:
    "baseUri": "https://myservice.net/extension",
    "contributions": [
        {
             "id": "Fabrikam.HelloWorld",
             "type": "ms.vss-web.hub",
             "targets": [
                 "ms.vss-work-web.work-hub-group"
             ],
             "properties": {
                 "name": "Hello",
                 "uri": "hello-world.html"
             }
         }
    ]

Azure DevOps Services carica il contenuto di questo hub quando viene eseguito il rendering in https://myservice.net/extension/hello-world.html.

Passo successivo