Concetti di progetti personalizzati - Amazon CodeCatalyst

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Concetti di progetti personalizzati

Di seguito sono riportati alcuni concetti e termini che è necessario conoscere quando si lavora con blueprint personalizzati in. CodeCatalyst

Progetto Blueprint

Un progetto blueprint ti dà la possibilità di sviluppare e pubblicare progetti nel tuo spazio. Durante il processo di creazione del progetto viene creato un archivio di origine e il nome del repository è quello scelto quando si inseriscono i dettagli delle risorse del progetto. Durante il processo di creazione del blueprint, se si sceglie di generare una versione del workflow, nel blueprint viene creato un workflow di pubblicazione con il blueprint Blueprint Builder. Il flusso di lavoro pubblica automaticamente la versione più recente.

Progetti spaziali

Puoi visualizzare e gestire tutti i blueprint dalla tabella Space blueprint quando accedi alla sezione Blueprint del tuo spazio. Dopo che i blueprint sono stati pubblicati nel tuo spazio, vengono resi disponibili come blueprint di spazio da aggiungere e rimuovere dal catalogo dei blueprint dello spazio. Puoi anche gestire le autorizzazioni di pubblicazione ed eliminare i blueprint dalla sezione Blueprint del tuo spazio. Per ulteriori informazioni, consulta Visualizzazione di dettagli, versioni e progetti di un blueprint personalizzato.

Catalogo dei progetti spaziali

È possibile visualizzare tutti i progetti personalizzati aggiunti dal catalogo dei blueprint di uno spazio. Qui un membro dello spazio può scegliere il blueprint personalizzato per creare un nuovo progetto. Questo catalogo è diverso dal CodeCatalyst catalogo, che ha già progetti disponibili per tutti i membri dello spazio. Per ulteriori informazioni, consulta Creazione di un progetto completo con CodeCatalyst progetti.

Sintesi

La sintesi è il processo di generazione di un pacchetto di CodeCatalyst progetto che rappresenta il codice sorgente, la configurazione e le risorse di un progetto. Il pacchetto viene quindi utilizzato dalle API operazioni di CodeCatalyst distribuzione per l'implementazione in un progetto. Il processo può essere eseguito localmente durante lo sviluppo di un blueprint personalizzato per emulare la creazione del progetto senza dover creare un progetto in. CodeCatalyst I seguenti comandi possono essere utilizzati per eseguire la sintesi:

yarn blueprint:synth # fast mode yarn blueprint:synth --cache # wizard emulation mode

Il progetto si avvia da solo chiamando la blueprint.ts classe principale con quell'opzione unita. defaults.json Un nuovo pacchetto di progetto viene generato nella cartella. synth/synth.[options-name]/proposed-bundle/ L'output include il pacchetto di progetto generato da un blueprint personalizzato, in base alle opzioni impostate, incluse le opzioni parziali che potresti aver configurato.

Risintesi

La risintesi è il processo di rigenerazione di un blueprint con diverse opzioni di blueprint o versioni di blueprint di progetti esistenti. In qualità di autore del blueprint, puoi definire strategie di unione personalizzate nel codice del blueprint personalizzato. È inoltre possibile definire i limiti di proprietà in un .ownership-file file per specificare in quali parti del codebase è consentito aggiornare un blueprint. Sebbene il blueprint personalizzato possa proporre aggiornamenti al.ownership-file, gli sviluppatori di progetti che utilizzano il blueprint personalizzato possono determinare i limiti di proprietà dei propri progetti. È possibile eseguire la risintesi localmente e testare e aggiornare prima di pubblicare il blueprint personalizzato. Utilizzate i seguenti comandi per eseguire la risintesi:

yarn blueprint:resynth # fast mode yarn blueprint:resynth --cache # wizard emulation mode

Il progetto si avvia da solo chiamando la blueprint.ts classe principale con quell'opzione unita. defaults.json Un nuovo pacchetto di progetto viene generato nella cartella. synth/resynth.[options-name]/ L'output include il pacchetto di progetto generato da un blueprint personalizzato, in base alle opzioni impostate, incluse le opzioni parziali che potresti aver configurato.

I seguenti contenuti vengono creati dopo i processi di sintesi e risintesi:

  • proposed-bundle: l'output della sintesi quando viene eseguita con nuove opzioni per la versione del blueprint di destinazione.

  • existing-bundle - Una simulazione del tuo progetto esistente. Se non c'è nulla in questa cartella, viene generata con lo stesso output di lui. proposed-bundle

  • ancestor-bundle: un simulato di ciò che il tuo blueprint genererebbe se eseguito con una versione precedente, opzioni precedenti o una combinazione. Se non c'è nulla in questa cartella, viene generata con lo stesso output di. proposed-bundle

  • resolved-bundle: il pacchetto viene sempre rigenerato e per impostazione predefinita è un'unione a tre vie tra, e. proposed-bundle existing-bundle ancestor-bundle Questo pacchetto fornisce un'emulazione di ciò che una risintesi produrrebbe localmente.

Per ulteriori informazioni sui pacchetti di output Blueprint, consulta. Generazione di file con risintesi

Opzioni parziali

È possibile aggiungere varianti di opzione in base src/wizard-configuration/ alle quali non è necessario enumerare l'intera Options interfaccia e le opzioni vengono unite all'inizio del file. defaults.json Ciò consente di personalizzare i casi di test in base a opzioni particolari.

Esempio:

Optionsinterfaccia:

{ language: "Python" | "Java" | "Typescript", repositoryName: string ... }

defaults.jsonfile:

{ language: "Python", repositoryName: "Myrepo" ... }

Test di configurazione aggiuntivi:

  • #wizard-config-typescript-test.json { language: "Typescript", }
  • #wizard-config-java-test.json { language: "Java", }

Projen

Projen è uno strumento open source che i progetti personalizzati utilizzano per mantenersi aggiornati e coerenti. I progetti sono disponibili come pacchetti Projen perché questo framework offre la possibilità di creare, raggruppare e pubblicare progetti e si può utilizzare l'interfaccia per gestire le configurazioni e le impostazioni di un progetto.

Puoi usare Projen per aggiornare i progetti su larga scala, anche dopo la loro creazione. Lo strumento Projen è la tecnologia alla base della sintesi dei progetti che genera un pacchetto di progetti. Projen possiede la configurazione di un progetto e non dovrebbe avere alcun impatto su di te come autore del blueprint. Puoi eseguire l'operazione yarn projen per rigenerare la configurazione del tuo progetto dopo aver aggiunto le dipendenze oppure puoi modificare le opzioni nel file. projenrc.ts Projen è anche lo strumento di generazione sottostante per progetti personalizzati per sintetizzare un progetto. Per ulteriori informazioni, consulta la pagina del progetto. GitHub Per saperne di più su come lavorare con Projen, consulta la documentazione di Projen.