Utilizzare lo schema JSON di Workflows nell'IDE

Per fornire supporto della sintassi durante la creazione di un flusso di lavoro, puoi utilizzare Schema JSON di Workflows in un ambiente di sviluppo integrato come Visual Studio Code (VS Code) o Intellij IDEA. Supporto della sintassi include il completamento automatico, la convalida e la documentazione in linea. Lo schema può integrazione nei tuoi processi CI/CD.

Lo schema JSON di Workflows è scritto in JSON Schema, un linguaggio dichiarativo che consente di annotare e convalidare i documenti JSON. L'origine dello schema è ospitato su SchemaStore.org, un repository di schemi per i file di configurazione comuni basati su JSON. Tieni presente che gli schemi di SchemaStore.org possono essere applicati anche ai file YAML.

A seconda dell'IDE o dell'editor che preferisci utilizzare, puoi installare un plug-in o applicare il supporto integrato per utilizzare lo schema Workflows. Lo schema può essere archiviato localmente nella radice del progetto o può essere specificato dell'URL della risorsa su SchemaStore.org.

Formato del nome file per i file di definizione del flusso di lavoro

Indipendentemente dall'IDE o dall'editor che usi, se usi un plug-in o per applicare automaticamente lo schema Workflows da SchemaStore.org, il formato del nome file per il file di definizione del flusso di lavoro deve potrebbe essere il seguente:

  • workflows.json
  • workflows.yaml
  • workflows.yml
  • *.workflows.json
  • *.workflows.yaml
  • *.workflows.yml

Se utilizzi VS Code o se utilizzi il supporto integrato per applicare il Schema di Workflows, puoi sostituire i formati dei nomi file.

Limitazioni

Il supporto della sintassi tramite lo schema JSON di Workflows si concentra sulle completamento automatico delle keywords che definiscono un flusso di lavoro. Lo schema supporta il completamento automatico per alcune funzioni della libreria standard, ma esiste un supporto limitato per i nomi delle variabili dinamiche, le espressioni e altri strumenti di assistenza per le espressioni. Lo schema presuppone inoltre che un flusso di lavoro sia completo e non tiene conto di eventuali post-elaborazione, come la combinazione di sottoflussi di lavoro.

Per evitare conflitti tra schema JSON, ti consigliamo di non utilizzarne più di uno estensione o plug-in per il supporto della sintassi di Workflows.

Associa lo schema JSON di Workflows in VS Code

VS Code è un editor di codice sorgente che viene eseguito sul desktop ed è disponibile Windows, macOS e Linux. È dotato di supporto integrato per diversi linguaggi e supporta estensioni per altri linguaggi e runtime. Per installare e configurare VS Code sulla macchina, consulta Visual Studio Code.

Di seguito sono riportati vari modi per associare lo schema JSON di Workflows in VS Code.

Usa Cloud Code per creare flussi di lavoro in YAML

Cloud Code è un insieme di plug-in IDE che semplifica la creazione, il deployment e l'integrazione di applicazioni con Google Cloud.

Se utilizzi VS Code come IDE, puoi usare Cloud Code quando i tuoi flussi di lavoro YAML e estrarrà automaticamente Schema JSON di Workflows di SchemaStore.org. Per verificare lo schema viene applicato come previsto, crea un flusso di lavoro YAML in un l'area di lavoro o la cartella e verificare che sia in corso il completamento automatico Parole chiave di Workflows.

Cloud Code supporta anche gli schemi Google Cloud offline e può essere utilizzati da utenti che potrebbero avere restrizioni di rete o IDE. Per ulteriori informazioni, fai riferimento a quanto segue:

Utilizza YAML di RedHat per creare flussi di lavoro in YAML

In alternativa all'utilizzo dell'estensione Cloud Code for VS Code, puoi utilizzare Estensione YAML di RedHat. Questa estensione fornisce il supporto del linguaggio YAML e include Kubernetes il supporto della sintassi. Estrae automaticamente lo schema JSON Workflows da SchemaStore.org.

Dopo aver installato l'estensione, crea un flusso di lavoro YAML. Nella parte superiore della dovrebbe essere presente Link al file di configurazione di Google Cloud Workflows (workflows.json). Se fai clic sul link, lo schema JSON di Workflows si apre nell'editor VS Code.

Sostituisci i formati dei nomi file

Quando utilizzi Cloud Code o YAML di RedHat per creare flussi di lavoro in YAML, puoi sostituire i formati dei nomi dei file predefiniti a cui viene applicato lo schema Workflows. Devi specificare una mappatura nel settings.json . Le impostazioni sono scritte in formato JSON e puoi esaminare e modificare questo file direttamente tramite aprindolo nell'editor di VS Code.

Ad esempio, se utilizzi l'estensione Cloud Code for VS Code, puoi mappare una formato del nome file nella proprietà cloudcode.yaml.schemas:

{
    "cloudcode.yaml.schemas": {
        "https://json.schemastore.org/workflows.json": [
            "GLOB_PATTERN.yaml",
            "my-special-workflow.yaml"
        ]
    }
}

In alternativa, se utilizzi l'estensione YAML di RedHat, mappa il formato del nome file in proprietà yaml.schemas:

{
    "yaml.schemas": {
        "https://json.schemastore.org/workflows.json": [
            "GLOB_PATTERN.yaml",
            "my-special-workflow.yaml"
        ]
    }
}

Gli schemi a sinistra sono applicati ai pattern glob a destra; ognuno è associato a più glob utilizzando un array JSON. Lo schema deve essere un percorso relativo e non un percorso assoluto. Lo schema può essere locale o online.

Utilizzare il supporto integrato per creare flussi di lavoro in JSON

Puoi utilizzare il supporto integrato in VS Code per associare Workflows Schema JSON specificando il mapping nel file settings.json, sotto il proprietà json.schemas. Puoi esaminare e modificare questo file direttamente aprindolo nell'editor di VS Code.

Ad esempio, per eseguire il pull dello schema JSON Workflows da SchemaStore.org:

{
    "json.schemas": [
        {
            "description": "SchemaStore.org",
            "fileMatch": [
                "workflows.json",
                "*.workflows.json"
            ],
            "url": "https://json.schemastore.org/workflows.json"
         }
    ]
}

Gli schemi a sinistra sono applicati ai pattern glob a destra; uno schema è associata a più glob utilizzando un array JSON. Lo schema deve essere un un percorso relativo e non un percorso assoluto. Lo schema può essere locale o online.

Puoi sostituire il formato del nome file. Ad esempio:

{
    "json.schemas": [
        {
            "description": "Workflows schema",
            "fileMatch": [
                "GLOB_PATTERN.json",
                "FILE_NAME.json"
            ],
            "url": "https://json.schemastore.org/workflows.json"
        }
    ]
}

Per ulteriori informazioni, vedi Modifica di JSON con il codice Visual Studio.

Associa lo schema JSON di Workflows in IntelliJ IDEA

IntelliJ IDEA è un IDE multipiattaforma per i linguaggi della Java Virtual Machine. Altro sono supportate tramite plug-in. Per installare e configurare IntelliJ IDEA sul tuo computer, consulta Installare IntelliJ IDEA.

Di seguito sono riportati vari modi per associare Workflows Schema JSON in IntelliJ IDEA.

Utilizzare Cloud Code per creare flussi di lavoro in YAML o JSON

Cloud Code è un set di plug-in IDE che semplifica la creazione, il deployment e l'integrazione delle applicazioni con Google Cloud.

Se utilizzi IntelliJ come IDE, puoi usare Cloud Code quando dei flussi di lavoro in formato YAML o JSON, lo schema JSON di Workflows da SchemaStore.org. Cloud Code supporta anche gli schemi offline di Google Cloud e può essere utilizzato da chi prevedono restrizioni relative alla rete o all'IDE. Per ulteriori informazioni, consulta quanto segue:

Utilizza il supporto integrato per creare flussi di lavoro in YAML o JSON

IntelliJ IDEA può scaricare e utilizzare automaticamente gli schemi da schemaStore.org. Puoi scaricare lo schema JSON di Workflows e archiviarlo in alla radice del progetto o specificare l'URL della risorsa in modo che IntelliJ IDEA possa scarica automaticamente lo schema. Per mappare lo schema, segui le istruzioni per configurare uno schema JSON personalizzato.

Per impostazione predefinita, download automatici degli schemi da schemaStore.org sono abilitati e i pattern dei nomi file predefiniti vengono convalidati in base allo schema.

Per eseguire l'override dei pattern di file predefiniti, dopo aver visitato Mappature schema JSON tramite la finestra di dialogo Impostazioni, segui questi passaggi:

  1. Nel campo Nome, digita Schema di Workflows.
  2. Nel campo File di schema o URL, digita https://json.schemastore.org/workflows.json.
  3. Nell'elenco Versione schema, seleziona Versione 7 dello schema JSON.
  4. Aggiungi un pattern del percorso dei file di tua scelta.

Mappa lo schema tramite jsonSchema.xml

Il codice sorgente di IntelliJ IDEA Community Edition è disponibile tramite https://github.com/JetBrains/intellij-community.

Puoi mappare lo schema JSON di Workflows per IntelliJ IDEA dell'editor aggiungendo una voce jsonSchemas.xml.

Aggiungi la convalida della sintassi di Workflows ai tuoi processi CI/CD

L'aggiunta della convalida della sintassi a integrazione, distribuzione processi di deployment (CI/CD) aiutano a ridurre gli errori durante la distribuzione e il deployment.

Ad esempio, puoi convalidare i dati in base al file JSON Workflows utilizzando l'istruzione ajv-cli lo strumento a riga di comando gcloud. Tieni presente che, quando installi lo strumento, installa anche ajv-formats. Per esempio:

npm install -g ajv-cli ajv-formats

Altri strumenti che potrebbero esserti utili:

  • MegaLinter v8r: MegaLinter è uno strumento open source per i flussi di lavoro CI/CD; v8r verifica la validità di JSON/YAML file se hanno uno schema corrispondente definito su SchemaStore.org.
  • Strumenti di convalida JSON: JSON strumenti di convalida classificati in base al linguaggio di programmazione o alla piattaforma di sviluppo.

Passaggi successivi