Push e distribuzione dei bundle

Prima di eseguire l'applicazione di e-commerce su Managed Runtime, effettuare il push di un bundle di codice e distribuirlo in un ambiente target di destinazione.

Questa guida spiega come:

  • Impostare la chiave API.
  • Utilizzare uno script della riga di comando per eseguire il push di un bundle in Managed Runtime.
  • Utilizzare l'applicazione web Runtime Admin per distribuire un bundle all'ambiente Production.

Before you can use Managed Runtime and Runtime Admin, they must be enabled and you must request access to them. To enable Managed Runtime and Runtime Admin for your organization, reach out to your Salesforce account team. For access, ask your Commerce Cloud administrator to add either one of the following roles to your account using Account Manager: Managed Runtime User or Managed Runtime Admin.

Se nella home directory è già presente un file .mobify, è possibile saltare questa sezione.

Prima di eseguire il push di un bundle, è necessario autorizzare il computer.

Avviare il processo di autorizzazione cercando la chiave API personale:

  1. Accedere a Runtime Admin.
  2. Fare clic sull'icona del profilo utente (in alto a destra) e poi su Account Settings (Impostazioni account).
  3. Scorrere fino alla sezione API Key (Chiave API) e cercare Personal API Key (Chiave API personale).
    • Se non è già stata creata una chiave API, fare clic sul link Generate (Genera).
    • Se si dispone già di una chiave API, fare clic sul link Reset (Reimposta) e poi su Reset my API Key (Reimposta la mia chiave API) quando viene chiesta conferma.
  4. Copiare il comando per utilizzare la chiave API.

Per motivi di sicurezza, la volta successiva che si accede alla pagina Account Settings (Impostazioni account), la chiave API non viene visualizzata per intero. Pertanto, per copiarne nuovamente l'intero testo è necessario reimpostarla.

Dalla riga di comando, passare alla directory del progetto PWA Kit ed eseguire il comando copiato.

Eseguire nuovamente il comando sugli altri computer che si desidera utilizzare per il push dei bundle.

Il push di un bundle comporta l'esecuzione di uno script che impacchetta il codice in un bundle Webpack e lo carica in Runtime Manager.

Prima del push del primo bundle, verificare che il file package.json nella directory del progetto PWA Kit sia configurato correttamente:

  1. Accedere a Runtime Admin.
  2. Fare clic sul nome del progetto.
  3. Fare clic su Project Settings (Impostazioni progetto) nel menu di navigazione a sinistra.
  4. Copiare la stringa Project ID (ID progetto). Esempio: my-project.
  5. Incollarla nel campo name in package.json.

Per verificare che il bundle funzioni correttamente una volta distribuito, è necessario impostare i proxy nel proprio ambiente in Runtime Admin.

Per eseguire il push di un bundle, passare alla riga di comando ed eseguire il seguente comando dalla directory del progetto:

Per un elenco di altre opzioni che è possibile fornire allo script di push, eseguire npm run push -- --help.

Quando il push di un bundle va a buon fine, nel terminale viene visualizzato il messaggio Beginning upload… seguito dal messaggio Bundle Uploaded!.

Se si verifica un problema, dopo il messaggio Beginning upload… nel terminale viene visualizzato uno di tre possibili messaggi di errore diversi (a seconda dei codici di stato della risposta HTTP).

Ecco come risolvere ogni messaggio di errore.

Viene restituito un errore HTTP 404 nel terminale quando non esiste un progetto con il nome specificato in package.json o quando non si dispone dell'autorizzazione per modificare il progetto.

Per correggere l'errore:

  1. Ripetere la procedura di push di un bundle e assicurarsi che le impostazioni di indirizzo email e chiave API trasmesse allo script di push corrispondano alle impostazioni in Runtime Admin.
  2. Verificare che il progetto compaia nella home page di Runtime Admin in Projects (Progetti).
    • In caso contrario, contattare l'assistenza (Support) per verificare che il progetto sia stato creato e per assicurarsi di possedere i relativi diritti di accesso in qualità di membro di un team.
  3. Aprire il progetto in Runtime Admin.
  4. Fare clic su Project Settings (Impostazioni progetto) nel menu di navigazione a sinistra.
  5. Copiare la stringa Project ID (ID progetto). Esempio: my-project.
  6. Aprire package.json nella directory del progetto.
  7. Verificare che i valori di name e projectSlug corrispondano entrambi alla stringa di ID progetto copiata.

Viene restituito un errore HTTP 401 nel terminale quando non si dispone dell'autorizzazione per eseguire il push dei bundle. Per correggere l'errore, rivolgersi all'amministratore Commerce Cloud Account Manager e chiedere di innalzare il livello dell'autorizzazione in modo da includere il push dei bundle.

Viene restituito un errore HTTP 413 nel terminale quando la dimensione del bundle è eccessiva. Le dimensioni massime di un bundle sono di 400 MB, mentre quelle di tutti i file ssr_only e ssr_shared in esso contenuti sono di 249 MB. Per correggere l'errore, controllare la dimensione del bundle esaminando la cartella di compilazione all'interno del progetto. Se il progetto ha quasi raggiunto o superato la dimensione massima, ridurla procedendo come segue:

  • Rimuovere gli asset inutilizzati
  • Rimuovere gli asset non necessari
  • Ridurre le immagini

Dopo aver ridotto le dimensioni dei file di progetto, provare a eseguire nuovamente il push del bundle.

Gli errori HTTPS possono verificarsi quando il computer locale o i proxy di rete, come una VPN o un firewall aziendale, non sono stati configurati per comunicare con Managed Runtime API ospitata su cloud.mobify.com.

Questi errori possono includere messaggi come unable to get local issuer certificate (impossibile ottenere certificato da autorità emittente locale) o self signed certificate in certificate chain (certificato autofirmato nella catena certificati).

Per risolvere questi errori, rivolgersi al team IT aziendale per configurare l'installazione di Node.js per l'ambiente di rete interno.

Dopo aver eseguito correttamente il push di un bundle, è possibile distribuirlo su un ambiente target di destinazione.

Per qualsiasi sito che utilizza PWA Kit e Managed Runtime, è possibile designare come distribuito un solo bundle alla volta per ogni ambiente. Per impostazione predefinita, ogni progetto presenta un singolo ambiente, denominato production. È possibile creare più ambienti utilizzando Runtime Admin o Managed Runtime API.

Per distribuire un bundle:

  1. Accedere a Runtime Admin.
  2. Fare clic sul nome del progetto.
  3. In Environments (Ambienti), fare clic sul nome dell'ambiente in cui si desidera effettuare la distribuzione (ad esempio Production).
  4. In Bundles (Bundle), fare clic sul pulsante Deploy (Distribuisci) accanto al bundle.
  5. Fare clic su Confirm Deploy (Conferma distribuzione).
  6. Attendere il completamento della distribuzione.

Terminata la distribuzione, il bundle appare sotto l'intestazione Deployed Bundle (Bundle distribuito).

Per la prima distribuzione in un nuovo ambiente, il processo può richiedere fino a un'ora di tempo. Le distribuzioni successive richiedono circa un minuto, a meno che non siano necessarie modifiche della CDN. Una modifica della CDN richiede circa 15 minuti ed è necessaria quando la distribuzione contiene modifiche del request processor (elaboratore richieste) o della configurazione proxy.