Creare un progetto Asset Compute

I progetti Asset Compute sono progetti Node.js, generati utilizzando Adobe I/O CLI, che aderiscono a una determinata struttura che consente di implementarli in Adobe I/O Runtime e di integrarli con AEM as a Cloud Service. Un singolo progetto Asset Compute può contenere uno o più processi di lavoro Asset Compute, ciascuno dei quali dispone di un punto finale HTTP discreto referenziabile da un profilo di elaborazione di AEM as a Cloud Service.

Generare un progetto

Click-through della generazione di un progetto Asset Compute (nessun audio)

Utilizza il plug-in Adobe I/O CLI Asset Compute per generare un nuovo progetto Asset Compute vuoto.

  1. Dalla riga di comando, passa alla cartella in cui si trova il progetto.
  2. Dalla riga di comando, esegui aio app init per iniziare la generazione interattiva di progetti CLI.
  3. Seleziona organizzazione
    • Seleziona l’organizzazione Adobe con AEM as a Cloud Service e Project Firefly registrati con
  4. Seleziona un progetto
    • Individua e seleziona il Progetto. Si tratta del Titolo progetto creato dal modello di progetto Firefly, in questo caso WKND AEM Asset Compute
  5. Seleziona area di lavoro
    • Selezionare l'area di lavoro Development
  6. Quali funzioni dell’app Adobe I/O desideri abilitare per questo progetto? Seleziona i componenti da includere
    • Seleziona Actions: Deploy runtime actions
    • Utilizzare i tasti freccia per selezionare e lo spazio per deselezionare/selezionare e immettere per confermare la selezione
  7. Selezionare il tipo di azioni da generare
    • Seleziona Adobe Asset Compute Worker
    • Utilizzare i tasti freccia da selezionare, lo spazio per deselezionare/selezionare e immettere per confermare la selezione
  8. Come assegnare un nome a questa azione?
    • Utilizzare il nome predefinito worker.
    • Se il progetto contiene più processi di lavoro che eseguono diversi calcoli delle risorse, denominarli in modo semantico

Genera console.json

Lo strumento per sviluppatori richiede un file denominato console.json che contiene le credenziali necessarie per connettersi ad Adobe I/O. Questo file viene scaricato dalla console Adobe I/O.

  1. Apri il progetto Adobe I/O del processo di lavoro Asset Compute
  2. Seleziona l’area di lavoro del progetto per scaricare le credenziali console.json, in questo caso seleziona Development
  3. Vai alla directory principale del progetto Adobe I/O e tocca Scarica tutto nell'angolo in alto a destra.
  4. Un file viene scaricato come file .json con prefisso per il progetto e l’area di lavoro, ad esempio: wkndAemAssetCompute-81368-Development.json
  5. Puoi effettuare le seguenti operazioni
    • Rinomina il file come config.json e spostalo nella directory principale del progetto di lavoro Asset Compute. Questo è l’approccio illustrato in questa esercitazione.

    • Spostalo in una cartella arbitraria E fai riferimento a tale cartella dal file .env con una voce di configurazione ASSET_COMPUTE_INTEGRATION_FILE_PATH. Il percorso del file può essere assoluto o relativo alla directory principale del progetto. Esempio:

      • ASSET_COMPUTE_INTEGRATION_FILE_PATH=/Users/example-user/secrets/wkndAemAssetCompute-81368-Development.json

      Oppure

      • ASSET_COMPUTE_INTEGRATION_FILE_PATH=../../secrets/wkndAemAssetCompute-81368-Development.json.json

NOTA
Il file contiene le credenziali. Se archivi il file all’interno del progetto, accertati di aggiungerlo al file .gitignore per evitare che venga condiviso. Lo stesso vale per il file .env: questi file di credenziali non devono essere condivisi o memorizzati in Git.

Analisi dell'anatomia del progetto

Il progetto Asset Compute generato è un progetto Node.js da utilizzare come progetto Adobe Project Firefly specializzato. I seguenti elementi strutturali sono idiosincratici del progetto Asset Compute:

  • /actions contiene sottocartelle e ogni sottocartella definisce un processo di lavoro Asset Compute.
    • /actions/<worker-name>/index.js definisce il JavaScript utilizzato per eseguire il lavoro di questo processo di lavoro.
      • Il nome della cartella worker è un valore predefinito e può essere qualsiasi cosa, purché sia registrato in manifest.yml.
      • È possibile definire più cartelle di lavoro in /actions in base alle esigenze, tuttavia queste devono essere registrate in manifest.yml.
  • /test/asset-compute contiene le suite di test per ogni lavoratore. Analogamente alla cartella /actions, /test/asset-compute può contenere più sottocartelle, ciascuna corrispondente al processo di lavoro di cui esegue il test.
    • /test/asset-compute/worker, che rappresenta una suite di test per un processo di lavoro specifico, contiene sottocartelle che rappresentano un caso di test specifico, insieme all’input del test, ai parametri e all’output previsto.
  • /build contiene l’output, i registri e gli artefatti delle esecuzioni di test case di Asset Compute.
  • /manifest.yml definisce i processi di lavoro di Asset Compute forniti dal progetto. Per renderle disponibili in AEM as a Cloud Service, è necessario enumerare in questo file l’implementazione di ogni processo di lavoro.
  • /console.json definisce le configurazioni di Adobe I/O
    • Questo file può essere generato/aggiornato utilizzando il comando aio app use .
  • /.aio contiene configurazioni utilizzate dallo strumento aio CLI.
    • Questo file può essere generato/aggiornato utilizzando il comando aio app use .
  • /.env definisce le variabili di ambiente in una key=value sintassi e contiene segreti che non devono essere condivisi. Per proteggere questi segreti, questo file NON deve essere archiviato in Git e viene ignorato tramite il file .gitignore predefinito del progetto.
    • Questo file può essere generato/aggiornato utilizzando il comando aio app use .
    • Le variabili definite in questo file possono essere sostituite da esportando variabili nella riga di comando.

Per ulteriori dettagli sulla revisione della struttura del progetto, consulta l’ Anatomia di un progetto Adobe Project Firefly.

La maggior parte dello sviluppo viene effettuata nella cartella /actions che sviluppa le implementazioni dei processi di lavoro e in /test/asset-compute durante la scrittura di test per i processi di lavoro Asset Compute personalizzati.

Progetto Asset Compute su GitHub

Il progetto Asset Compute finale è disponibile su GitHub all’indirizzo:

GitHub contiene lo stato finale del progetto, compilato completamente con i casi di lavoro e test, ma non contiene credenziali, ovvero .env, console.json o .aio.

In questa pagina