تمرين - نشر دالة في Azure

مكتمل

الآن بعد أن تعلمت كيفية إنشاء الوظائف ونشرها في Azure، حان الوقت لوضع النظرية موضع التنفيذ.

في هذا التمرين، ستتعلم كيفية تكوين دالتك للتوزيع إلى Azure Functions. ثم يمكنك استخدام Maven لنشر الدالة الخاصة بك، واختبار وظيفتك في السحابة.

تكوين مشروع دالتك للنشر

هناك بعض التغييرات التي يجب إجراؤها على تطبيق الدالة الخاص بك قبل أن يمكن نشرها في Azure. ترشدك الخطوات التالية خلال تحديث مشروعك للنشر.

  1. حدد المنطقة لمجموعة موارد بيئة الاختبار المعزولة الخاصة بك:

    1. استخدم اسم مجموعة الموارد التي تم إنشاؤها تلقائيا لك عند تنشيط بيئة الاختبار المعزولة لاسترداد المنطقة التي توجد فيها مجموعة الموارد:

      az group show --name "<rgn>[sandbox resource group name]</rgn>" | jq -r '.location'
      
    2. انسخ اسم المنطقة التي يتم عرضها للاستخدام في الخطوات التالية.

  2. عدّل ملف pom.xml لتحديث الإعدادات:

    1. في Azure Cloud Shell، غيّر إلى المجلد الجذر الذي يحتوي على تطبيقك. على سبيل المثال:

      cd ~/event-reporting
      
    2. افتح ملف pom.xml الخاص بك في محرر التعليمات البرمجية Cloud Shell.

      code pom.xml
      
    3. حدد موقع مُعرِّف الأداة التالية:

      <artifactId>azure-functions-maven-plugin</artifactId>
      
    4. في قسم <configuration> التالي، حدد موقع العنصر <resourceGroup>، وحدّثه باسم مجموعة مواردك. على سبيل المثال:

      <resourceGroup><rgn>[sandbox resource group name]</rgn></resourceGroup>
      
    5. حدد موقع العنصر <region>، وحدّثه باسم المنطقة التي توجد بها مجموعة مواردك. على سبيل المثال:

      <region>westus</region>
      
    6. اضغط على "Ctrl+S" لحفظ ملف pom.xml الخاص بك، ثم اضغط على "Ctrl+Q" لإغلاق محرر التعليمات البرمجية.

نشر دالة Azure الخاصة بك

الآن بعد أن تم تكوين دالتك للتوزيع، فإن خطوتك التالية هي توزيعها في Azure Functions.

  1. في Azure Cloud Shell، غيّر إلى المجلد الجذر الذي يحتوي على تطبيقك. على سبيل المثال:

    cd ~/event-reporting
    
  2. استخدم الأمر التالي لبنائه ونشره في Azure Functions:

    mvn clean package azure-functions:deploy
    

    يعرض Maven حالة تشغيل النشر. على سبيل المثال:

    [INFO] Scanning for projects...
    [INFO]
    [INFO] ------------------------------------------------------------------------
    [INFO] Building Azure Java Functions 1.0-SNAPSHOT
    [INFO] ------------------------------------------------------------------------
    [INFO]
    [INFO] --- azure-functions-maven-plugin:1.4.1:deploy (default-cli) @ event-reporting ---
    [INFO] Auth Type : AZURE_CLI
    [INFO] Subscription : Concierge Subscription(12345678-1234-1234-1234-123456789abc)
    [INFO] The specified function app does not exist. Creating a new function app...
    [INFO] Set function worker runtime to java.
    [INFO] Successfully created the function app: event-reporting-20240125192009873.
    [INFO] Trying to deploy the function app...
    [INFO] Trying to deploy artifact to event-reporting-20240125192009873...
    [INFO] Successfully deployed the artifact to https://event-reporting-20240125192009873.azurewebsites.net
    [INFO] Deployment done, you may access your resource through event-reporting-20240125192009873.azurewebsites.net
    [INFO] Syncing triggers and fetching function information
    [INFO] Querying triggers...
    [INFO] HTTP Trigger Urls:
    [INFO]   HttpExample : https://event-reporting-20240125192009873.azurewebsites.net/api/httpexample
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time:  01:01 min
    [INFO] Finished at: 2024-01-25T20:12:04Z
    [INFO] ------------------------------------------------------------------------
    

استرداد عنوان Azure Function URL الخاص بك باستخدام المدخل

تذكر أنه في التمرين الذي أكملته في وحدة سابقة، طلب منك إنشاء عنوان URL لاختبار وظيفتك في مستعرض ويب. ومع ذلك، هناك طريقة أسهل لاسترداد عنوان URL ل Azure Function باستخدام مدخل Microsoft Azure. للقيام بذلك، اتبع الخطوات التالية.

  1. سجّل الدخول إلى "مدخل Azure" باستخدام الحساب نفسه الذي استخدمته في تنشيط بيئة الاختبار المعزولة.

  2. حدد "All resources" من القائمة الموجودة على اليسار.

  3. حدد تطبيق الوظائف من قائمة الموارد؛ لهذا التمرين، يبدأ اسم تطبيق الوظائف الخاص بك بتقارير الأحداث. على سبيل المثال:

    event-reporting-20240125192009873
    

    هذا function app الاسم هو نفس الاسم الذي تم الإبلاغ عنه في استجابة النشر في وقت سابق في هذا التمرين.

  4. في صفحة Overview لتطبيق الوظائف، في علامة التبويب Functions ، حدد دالة HttpExample . يعرض لك هذا صفحة نظرة عامة لدالتك.

  5. في أعلى صفحة الدالة، حدد Get function Url. انسخ عنوان URL الذي تم إنشاؤه بالكامل لدالتك. على سبيل المثال:

    https://event-reporting-20240125192009873.azurewebsites.net/api/HttpExample
    

    يمكنك استخدام عنوان URL هذا في القسم التالي من هذا التمرين.

اختبار دالة Azure الخاصة بك في المدخل

الآن بعد أن قمت بنشر الدالة الخاصة بك إلى Azure، كل ما هو ضروري لاختبار دالتك في مستعرض ويب هو إلحاق سلسلة استعلام بنهاية عنوان URL كما فعلت في التدريبات السابقة.

  1. أنشئ عنوان URL لواجهة برمجة تطبيقات دالتك:

    1. استرد عنوان URL الذي نسخته في قسم استرداد عنوان URL لدالة Azure الخاصة بك في وقت سابق من هذا التمرين؛ على سبيل المثال:

      https://event-reporting-20240125192009873.azurewebsites.net/api/HttpExample
      
    2. ألحق سلسلة استعلام تمرر اسماً إلى عنوان URL الخاص بواجهة برمجة التطبيقات؛ على سبيل المثال:

      https://event-reporting-20240125192009873.azurewebsites.net/api/HttpExample?name=Bob
      
    3. انسخ عنوان URL المُنشأ بالكامل لاستخدامه في الخطوات التالية.

  2. افتح علامة تبويب جديدة في مستعرض الويب الخاص بك، وألصق عنوان URL المُنشأ بالكامل من الخطوات السابقة في حقل العنوان.

  3. عند توجيه مستعرض الويب لطلب عنوان URL، سترى رسالة نص عادي تم إرجاعها إلى مستعرض الويب الخاص بك والتي تم تخصيصها للاسم الذي مررته في سلسلة الاستعلام. على سبيل المثال:

    Hello, Bob
    

تهانينا، لقد نجحت في توزيع الدالة واختبارها في Azure!