Istruzioni using e using none

Tutti i file di parametri Bicep devono includere una dichiarazione using o una dichiarazione using none.

Un file di parametri Bicep usa in genere un'istruzione using per collegare il file a un file di Bicep, a un modello JSON Azure Resource Manager (modello ARM), a un modulo Bicep o a una specifica di modello. Questo collegamento consente al server e al compilatore del linguaggio di Bicep di convalidare il file di parametri controllando i nomi, i tipi e i valori obbligatori corretti in base agli input del modello.

Al contrario, l'istruzione using none indica in modo esplicito che il file di parametri non è collegato a un particolare modello in fase di compilazione. Questa istruzione indica che i parametri non vengono convalidati in base a un modello specifico e sono invece destinati a un uso più generale, ad esempio essere utilizzati da strumenti esterni o usati come set di parametri condivisi e riutilizzabili.

Note

I file di parametri Bicep sono supportati solo nell'interfaccia della riga di comando di Bicep versione 0.18.4 o successiva, nell'interfaccia della riga di comando di Azure versione 2.47.0 o successiva e in Azure PowerShell versione 9.7.1 o successiva. La using none funzionalità è supportata in Bicep CLI dalla versione 0.31.0 in poi.

Per usare l'istruzione con modelli ARM JSON, moduli Bicep e specifiche di modello, è necessario avere la CLI di Bicep versione 0.22.6 o più recente e la CLI di Azure versione 2.53.0 o più recente.

Istruzione using

Sintassi dell'istruzione using :

  • Per utilizzare i file Bicep:

    using '<path>/<file-name>.bicep'
    
  • Per utilizzare i modelli JSON di Azure Resource Manager:

    using '<path>/<file-name>.json'
    
  • Per utilizzare i moduli pubblici:

    using 'br/public:<file-path>:<tag>'
    

    Ad esempio:

    using 'br/public:avm/res/storage/storage-account:0.9.0' 
    
    param name = 'mystorage'
    
  • per utilizzare i moduli privati:

    using 'br:<acr-name>.azurecr.io/bicep/<file-path>:<tag>'
    

    Ad esempio:

    using 'br:myacr.azurecr.io/bicep/modules/storage:v1'
    

    per utilizzare un modulo privato con un alias definito in un file bicepconfig.json:

    using 'br/<alias>:<file>:<tag>'
    

    Ad esempio:

    using 'br/storageModule:storage:v1'
    
  • per utilizzare le specifiche di modello:

    using 'ts:<subscription-id>/<resource-group-name>/<template-spec-name>:<tag>
    

    Ad esempio:

    using 'ts:00000000-0000-0000-0000-000000000000/myResourceGroup/storageSpec:1.0'
    

    per utilizzare una specifica di modello con un alias definito in un file bicepconfig.json:

    using 'ts/<alias>:<template-spec-name>:<tag>'
    

    Ad esempio:

    using 'ts/myStorage:storageSpec:1.0'
    

Istruzione using none

L'istruzione using none in un file di parametri Bicep (con estensione bicepparam) indica che il file non è associato a un modello Bicep specifico durante la creazione o la compilazione. Questa istruzione separa il file di parametri da un modello specifico, consentendo una maggiore flessibilità nel modo in cui si definiscono e usano parametri tra le distribuzioni.

Sintassi dell'istruzione using none :

using none

Inserire questa istruzione all'inizio di un file di parametri Bicep per segnalare che non viene fatto riferimento a un modello specifico.

Il vantaggio principale di using none In Bicep risiede negli scenari in cui i file di parametri sono generalizzati, condivisi o integrati dinamicamente con i modelli. I casi d'uso comuni includono:

  • Repository di parametri centralizzati

    Le organizzazioni spesso mantengono i valori dei parametri standard, ad esempio aree predefinite, convenzioni di denominazione o tag globali, usati in più distribuzioni di Bicep. Un file di parametri di Bicep con using none può fungere da archivio centrale per questi valori condivisi, migliorando la coerenza e riducendo al minimo la duplicazione. È possibile unire questi parametri a livello di codice con valori specifici del modello in fase di distribuzione.

    Ad esempio, un file di parametri Bicep condiviso può definire:

    using none
    
    param location = 'westus2'
    param environmentTag = 'production'
    param projectName = 'myApp'
    

    Inoltre, è possibile estendere questo file di parametri. Per altre informazioni, vedere Estendere il file dei parametri.

  • Generazione dinamica e integrazione del runtime

    Nelle pipeline CI/CD o negli script di automazione è possibile creare file di parametri in tempo reale o associarli ai modelli in fase di esecuzione. Omettendo un riferimento a un modello fisso, using none questi file possono rimanere flessibili e adattabili a contesti di distribuzione diversi.

Quando si specifica using none in un file di parametri Bicep, il compilatore non convalida i parametri rispetto a un modello di Bicep specifico. Ciò significa che il compilatore non genera avvisi o errori in fase di compilazione per nomi o tipi non corrispondenti a causa dell'assenza di un modello collegato. Tuttavia, questo disaccoppiamento si applica solo durante la creazione e la compilazione. In fase di distribuzione, Azure Resource Manager (ARM) richiede comunque sia un modello Bicep che un file di parametri. Il motore arm esegue la convalida durante la distribuzione risolvendo i parametri nel file rispetto a quelli definiti nel modello di destinazione.

Passaggi successivi