إضافة إعدادات الوحدة النمطية في ملف تكوين Bicep

في ملف bicepconfig.json، يمكنك إنشاء أسماء مستعارة لمسارات الوحدة النمطية وتكوين أسبقية ملف التعريف وبيانات الاعتماد لنشر الوحدات النمطية واستعادتها.

توضح هذه المقالة الإعدادات المتوفرة للعمل مع وحدات Bicep النمطية.

أسماء مستعارة للوحدات النمطية

لتبسيط مسار الارتباط بالوحدات النمطية، قم بإنشاء أسماء مستعارة في ملف التكوين. يشير الاسم المستعار إما إلى سجل الوحدة النمطية أو مجموعة موارد تحتوي على مواصفات قالب.

ملف التكوين له خاصيةmoduleAliases. تحتوي هذه الخاصية على جميع الأسماء المستعارة التي تحددها. تحت هذه الخاصية، يتم تقسيم الأسماء المستعارة استناداً إلى ما إذا كانت تشير إلى سجل أو مواصفات قالب.

لإنشاء اسم مستعار لسجل Bicep، أضِف خاصية br. لإضافة اسم مستعار لمواصفات القالب، استخدم الخاصية ts.

{
  "moduleAliases": {
    "br": {
      <add-registry-aliases>
    },
    "ts": {
      <add-template-specs-aliases>
    }
  }
}

داخل brالخاصية، أضف العديد من الأسماء المستعارة حسب حاجتك. لكل اسم مستعار، أعطه اسمًا والخصائص التالية:

  • السجل (مطلوب): اسم خادم تسجيل الدخول إلى السجل
  • modulePath(اختياري): مستودع التسجيل حيث يتم تخزين الوحدات النمطية

داخل tsالخاصية، أضف العديد من الأسماء المستعارة حسب حاجتك. لكل اسم مستعار، أعطه اسمًا والخصائص التالية:

  • اشتراك(مطلوب): معرف الاشتراك الذي يستضيف مواصفات النموذج
  • ResourceGroup (مطلوبة): اسم مجموعة الموارد التي تحتوي على مواصفات القالب

يوضح المثال التالي ملف التكوين الذي يحدد اسمين مستعارين لسجل وحدة نمطية، واسم مستعار لمجموعة موارد تحتوي على مواصفات القالب.

{
  "moduleAliases": {
    "br": {
      "ContosoRegistry": {
        "registry": "contosoregistry.azurecr.io"
      },
      "CoreModules": {
        "registry": "contosoregistry.azurecr.io",
        "modulePath": "bicep/modules/core"
      }
    },
    "ts": {
      "CoreSpecs": {
        "subscription": "00000000-0000-0000-0000-000000000000",
        "resourceGroup": "CoreSpecsRG"
      }
    }
  }
}

عند استخدام اسم مستعار في مرجع الوحدة النمطية، يجب عليك استخدام التنسيقات:

br/<alias>:<file>:<tag>
ts/<alias>:<file>:<tag>

حدد الأسماء المستعارة للمجلد أو مجموعة الموارد التي تحتوي على وحدات، وليس الملف نفسه. يجب تضمين اسم الملف في مرجع الوحدة النمطية.

بدون الأسماء المستعارة، يمكنك الارتباط بوحدة نمطية في سجل بالمسار الكامل.

module stgModule 'br:contosoregistry.azurecr.io/bicep/modules/core/storage:v1' = {

باستخدام الأسماء المستعارة، يمكنك تبسيط الارتباط باستخدام الاسم المستعار للتسجيل.

module stgModule 'br/ContosoRegistry:bicep/modules/core/storage:v1' = {

أو، يمكنك تبسيط الارتباط باستخدام الاسم المستعار الذي يحدد التسجيل ومسار الوحدة النمطية.

module stgModule  'br/CoreModules:storage:v1' = {

لمواصفات القالب، استخدم:

module stgModule  'ts/CoreSpecs:storage:v1' = {

تم تعريف اسم مستعار مسبقا لسجل الوحدة النمطية العامة. للإشارة إلى وحدة نمطية عامة، يمكنك استخدام التنسيق:

br/public:<file>:<tag>

يمكنك تجاوز تعريف الاسم المستعار لسجل الوحدة النمطية العامة في ملف bicepconfig.json:

{
  "moduleAliases": {
    "br": {
      "public": {
        "registry": "<your_module_registry>",
        "modulePath": "<optional_module_path>"
      }
    }
  }
}

تكوين ملفات التعريف وبيانات الاعتماد

لنشر الوحدات النمطية إلى سجل وحدة نمطية خاصة أو لاستعادة الوحدات النمطية الخارجية إلى ذاكرة التخزين المؤقت المحلية، يجب أن يمتلك الحساب الأذونات الصحيحة للوصول إلى السجل. يمكنك تكوين currentProfile و credentialPrecedence يدويا في ملف تكوين Bicep للمصادقة على السجل.

{
  "cloud": {
    "currentProfile": "AzureCloud",
    "profiles": {
      "AzureCloud": {
        "resourceManagerEndpoint": "https://management.azure.com",
        "activeDirectoryAuthority": "https://login.microsoftonline.com"
      },
      "AzureChinaCloud": {
        "resourceManagerEndpoint": "https://management.chinacloudapi.cn",
        "activeDirectoryAuthority": "https://login.chinacloudapi.cn"
      },
      "AzureUSGovernment": {
        "resourceManagerEndpoint": "https://management.usgovcloudapi.net",
        "activeDirectoryAuthority": "https://login.microsoftonline.us"
      }
    },
    "credentialPrecedence": [
      "AzureCLI",
      "AzurePowerShell"
    ]
  }
}

ملفات التعريف المتوفرة هي:

  • AzureCloud
  • AzureChinaCloud
  • AzureUSGovernment

بشكل افتراضي، يستخدم AzureCloud Bicep ملف التعريف وبيانات اعتماد المستخدم المصادق عليها في Azure CLI أو Azure PowerShell. يمكنك تخصيص ملفات التعريف هذه أو تضمين ملفات تعريف جديدة للبيئات المحلية. إذا كنت ترغب في نشر وحدة نمطية أو استعادتها إلى بيئة سحابية وطنية مثل AzureUSGovernment، يجب عليك تعيين "currentProfile": "AzureUSGovernment" حتى إذا قمت بتحديد ملف تعريف السحابة هذا في Azure CLI. Bicep غير قادر على تحديد ملف تعريف السحابة الحالي تلقائيا استنادا إلى إعدادات Azure CLI.

يستخدم Bicep Azure.Identity SDK للقيام بالمصادقة. أنواع بيانات الاعتماد المتوفرة هي:

إشعار

يستخدم أمر توزيع Bicep من داخل vscode ملحق حساب Azure للمصادقة. لا يستخدم ملفات تعريف السحابة من bicepconfig.json.

الخطوات التالية