پسوند خود را منتشر کنید

این صفحه توضیح می دهد که چگونه می توانید یک برنامه افزودنی را در Extensions Hub منتشر کنید.

قبل از شروع

برای انتشار یک برنامه افزودنی، ابتدا باید به عنوان ناشر برنامه های افزودنی ثبت نام کنید .

منابع قابل تایید

همه برنامه‌های افزودنی منتشر شده در Extensions Hub باید دارای منبع قابل تأیید عمومی باشند. به جای اینکه کد منبع برنامه افزودنی خود را مستقیماً در Extensions Hub آپلود کنید، در عوض مکان منبع را مشخص می کنید و Extension Hub آن را دانلود کرده و از آنجا می سازد.

در حال حاضر، این به این معنی است که کد منبع برنامه افزودنی خود را در یک مخزن عمومی GitHub در دسترس قرار دهید.

آپلود از یک منبع قابل تایید چندین مزیت دارد:

  • کاربران می توانند کد منبع بازبینی خاص برنامه افزودنی نصب شده را بررسی کنند.
  • می‌توانید مطمئن شوید که فقط آنچه را که می‌خواهید آپلود کنید، آپلود می‌کنید، و نه، برای مثال، کار در حال انجام، یا گمراه شدن فایل‌های باقی‌مانده از توسعه.

چرخه توسعه توصیه شده

ابزارهای توسعه Firebase Extensions از آپلود نسخه‌های پیش از انتشار افزونه‌های شما پشتیبانی می‌کنند، که آزمایش برنامه‌های افزودنی و فرآیند نصب برنامه‌های افزودنی را برای شما آسان می‌کند در همان محیطی که در نهایت در آن منتشر می‌شوند.

این قابلیت یک چرخه توسعه مانند موارد زیر را ممکن می کند:

  1. برنامه افزودنی خود را با استفاده از Firebase Emulator Suite توسعه دهید و به سرعت آن را تکرار کنید.

  2. برنامه افزودنی خود را در یک پروژه واقعی با نصب آن از منبع محلی آزمایش کنید:

    firebase ext:install /path/to/extension
    firebase deploy --only extensions
    
  3. یک نسخه پیش از انتشار را در Extensions Hub آپلود کنید (به زیر مراجعه کنید). پیوند نصب را برای آزمایش گسترده‌تر توزیع کنید و در صورت لزوم با آپلود نسخه‌های قبل از انتشار بیشتر، آن را تکرار کنید.

  4. نسخه نهایی و پایدار را در Extensions Hub آپلود کنید (به زیر مراجعه کنید) و آن را برای بررسی ارسال کنید. اگر برنامه افزودنی مورد بررسی قرار گیرد، در Extension Hub منتشر خواهد شد.

  5. شماره نسخه را در extension.yaml افزایش دهید و این چرخه را برای نسخه بعدی برنامه افزودنی خود تکرار کنید.

یک پسوند جدید آپلود کنید

برای بارگذاری یک برنامه افزودنی برای اولین بار:

  1. اختیاری : کد خود را به یک مخزن عمومی GitHub اختصاص دهید.

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید:

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    منبع محلی

    cd /path/to/extension
    firebase ext:dev:upload your_publisher_id/your_extension_id --local
    

    در فراخوانی دستور خود موارد زیر را مشخص می کنید:

    • شناسه ناشر که ثبت کردید .

    • یک رشته ID که پسوند را شناسایی می کند. برنامه های افزودنی خود را با فرمت زیر نام گذاری کنید: firebase-product - description-of-tasks-performed . به عنوان مثال: firestore-bigquery-export

    این دستور از شما اطلاعات اضافی را می خواهد:

    • اگر از GitHub آپلود می کنید:

      • URL به مخزن برنامه افزودنی در GitHub. توجه داشته باشید که یک مخزن می‌تواند دارای چندین پسوند باشد تا زمانی که هر پسوند یک ریشه منحصر به فرد داشته باشد.

        هنگامی که برای اولین بار یک برنامه افزودنی جدید را آپلود می کنید، مخزن به عنوان منبع متعارف افزونه شما ثبت می شود.

      • دایرکتوری موجود در مخزن که حاوی پسوند شما است.

      • مرجع Git commitی که می خواهید منبع نسخه افزونه خود را از آن بسازید. این می تواند یک هش commit، تگ یا نام شاخه باشد.

    • مرحله انتشار نسخه ای که آپلود می کنید.

      مراحل alpha ، beta و rc (نامزد انتشار) برای آپلود نسخه‌های پیش از انتشار برای آزمایش‌کنندگان است تا نصب کنند. از یکی از این مراحل برای آپلود اولیه یک افزونه جدید استفاده کنید.

      مرحله stable برای انتشار عمومی برای انتشار در Extensions Hub استفاده می شود. بارگذاری یک نسخه stable به طور خودکار بازبینی را آغاز می کند و در صورت تصویب، افزونه را منتشر می کند.

    توجه داشته باشید که شماره نسخه ای را مشخص نمی کنید - این مقدار از فایل extension.yaml می آید. هنگامی که یک نسخه پسوند پیش از انتشار را آپلود می کنید، شماره مرحله و آپلود به نسخه اضافه می شود. به عنوان مثال، اگر extension.yaml نسخه 1.0.1 را مشخص کند و شما یک نامزد انتشار را آپلود کنید، منجر به نسخه 1.0.1-rc.0 می شود. آپلود یک نامزد انتشار دیگر از همان نسخه، به طور خودکار تعداد را افزایش می دهد، که منجر به 1.0.1-rc.1 و غیره می شود.

اکنون که نسخه پیش از انتشار برنامه افزودنی را بارگذاری کرده اید، می توانید آن را برای آزمایش با دیگران به اشتراک بگذارید. کاربران می توانند افزونه شما را به یکی از دو روش نصب کنند:

  • با کنسول : کاربران می توانند با کلیک کردن روی پیوندی با فرمت زیر، افزونه را نصب کنند:

    https://console.firebase.google.com/project/_/extensions/install?ref=your_publisher_id/your_extension_id@version

    می توانید پیوند مستقیم را با آزمایش کنندگان خود به اشتراک بگذارید.

  • با CLI : کاربران می‌توانند با ارسال رشته ID افزونه به دستور ext:install ، افزونه را نصب کنند:

    firebase ext:install your_publisher_id/your_extension_id@version \
        --project=destination_project_id
    

یک نسخه به روز شده را آپلود کنید

بعد از اینکه اولین نسخه یک برنامه افزودنی را آپلود کردید، می‌توانید به‌روزرسانی‌ها را برای رفع مشکلات، اضافه کردن ویژگی‌ها یا پیشبرد مرحله انتشار آپلود کنید. وقتی نسخه جدیدی را آپلود می‌کنید، از کاربرانی که نسخه قدیمی‌تری از برنامه افزودنی شما را نصب کرده‌اند، در کنسول Firebase خواسته می‌شود که آن را ارتقا دهند.

برای آپلود به روز رسانی:

  1. اختیاری : کد خود را به یک مخزن عمومی Git اختصاص دهید.

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید:

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    این بار از شما خواسته نمی شود که مخزن GitHub یا دایرکتوری ریشه برنامه افزودنی را مشخص کنید زیرا قبلاً برای برنامه افزودنی شما پیکربندی شده اند. اگر از آن زمان ساختار مخزن خود را بازسازی کرده اید یا به یک مخزن جدید مهاجرت کرده اید، می توانید آنها را با آرگومان های دستوری --root و --repo تغییر دهید.

    منبع محلی

    cd /path/to/extension
    firebase ext:dev:upload your_publisher_id/your_extension_id --local
    

پسوند را برای انتشار ارسال کنید

وقتی آماده انتشار عمومی برنامه افزودنی خود هستید:

  1. کد خود را به یک مخزن عمومی Git اختصاص دهید. (برای انتشار عمومی لازم است.)

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید و stable به عنوان مرحله انتشار مشخص کنید:

    firebase ext:dev:upload your_publisher_id/your_extension_id
    
  3. اگر قبلاً نسخه‌ای از برنامه افزودنی خود را منتشر کرده‌اید، آپلود نسخه پایدار جدید به‌طور خودکار افزونه را برای بررسی ارسال می‌کند.

    اگر اولین نسخه پایدار برنامه افزودنی را آپلود کردید، برنامه افزودنی را در داشبورد ناشر خود پیدا کنید و روی انتشار در مرکز برنامه افزودنی کلیک کنید.

پس از ارسال، بررسی ممکن است چند روز طول بکشد. در صورت پذیرش، برنامه افزودنی در Extensions Hub منتشر خواهد شد. اگر رد شد، پیامی دریافت خواهید کرد که دلیل آن را توضیح می دهد. سپس می توانید به مشکلات گزارش شده رسیدگی کنید و مجددا برای بررسی ارسال کنید.

برای تسریع در بررسی و افزایش شانس قبولی در اولین تلاش، قبل از ارسال، موارد زیر را دوباره بررسی کنید:

  • شما برنامه افزودنی خود و مراحل نصب را به طور کامل آزمایش کرده اید.
  • مستندات شما کامل و صحیح است و در کنسول Firebase به خوبی ارائه می شود.
  • نام و نام تجاری ناشر شما به طور واضح و دقیق شما را به عنوان ناشر معرفی می کند.
  • نام، توضیحات و نماد برنامه افزودنی شما به طور واضح و دقیق هدف برنامه افزودنی شما را نشان می دهد.
  • شما برچسب های مفید و دقیقی را اعمال کرده اید.
  • شما در extension.yaml همه APIهای Google و غیر Google را که استفاده می کنید و همه انواع رویدادهایی که برنامه افزودنی شما منتشر می کند، اعلام کرده اید.
  • شما فقط به نقش های لازم برای عملکرد برنامه افزودنی درخواست دسترسی دارید و به طور واضح به کاربران توضیح داده اید که چرا به چنین دسترسی نیاز دارید.
  • فایل های منبع شما به وضوح تحت مجوز Apache-2.0 هستند.

پسوندهای آپلود شده و منتشر شده را مدیریت کنید

پسوندهای آپلود شده خود را فهرست کنید

برای فهرست کردن برنامه‌های افزودنی که در شناسه ناشر خود آپلود کرده‌اید، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

آنها را در داشبورد ناشر مشاهده کنید.

Firebase CLI

دستور ext:dev:list را اجرا کنید:

firebase ext:dev:list your_publisher_id

استفاده از برنامه های افزودنی آپلود شده خود را مشاهده کنید

برای مشاهده میزان استفاده از افزونه هایی که تحت شناسه ناشر خود آپلود کرده اید، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

داشبورد ناشر دارای معیارهای استفاده تجمعی برای همه برنامه‌های افزودنی شما و معیارهای فردی برای هر برنامه افزودنی است.

Firebase CLI

دستور ext:dev:usage را اجرا کنید:

firebase ext:dev:usage your_publisher_id

نسخه یک برنامه افزودنی را منسوخ کنید

در برخی مواقع، ممکن است بخواهید نسخه قدیمی برنامه افزودنی خود را منسوخ کنید. به عنوان مثال، اگر نسخه جدیدی را منتشر می کنید که یک باگ مهم را برطرف می کند یا یک وابستگی را با یک به روز رسانی امنیتی مهم به روز می کند، مهم است که از نصب نسخه قدیمی توسط کاربران جدید جلوگیری کنید و کاربران فعلی را به ارتقاء تشویق کنید.

برای منسوخ کردن نسخه یک برنامه افزودنی، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

  1. در داشبورد ناشر ، روی افزونه کلیک کنید تا نمای جزئیات آن باز شود.
  2. نسخه ای را که می خواهید منسوخ کنید انتخاب کنید.
  3. روی Deprecate version کلیک کنید.

Firebase CLI

دستور ext:dev:deprecate را اجرا کنید:

firebase ext:dev:deprecate your_publisher_id/your_extension_id versions \
    [--message "deprecation_message"]

شما می توانید یک نسخه یا محدوده ای از نسخه ها را مشخص کنید. مثال ها:

  • 1.0.2
  • 1.1.0-1.1.7
  • <1.2.0
  • 1.1.*

نسخه‌های منسوخ شده یک برنامه افزودنی در Extensions Hub فهرست نشده‌اند و نمی‌توان آنها را نصب کرد. کاربرانی که پروژه‌هایشان نسخه قدیمی نصب شده است، پیامی را مشاهده می‌کنند که آنها را تشویق به ارتقاء می‌کند. آنها هنوز هم می توانند از برنامه افزودنی استفاده کرده و مجدداً در این مدت پیکربندی کنند.

اگر هر نسخه از یک برنامه افزودنی منسوخ شود، برنامه افزودنی منسوخ در نظر گرفته می شود و از فهرست Extensions Hub حذف می شود. بارگذاری یک نسخه جدید از یک برنامه افزودنی منسوخ شده به طور خودکار بازبینی را آغاز می کند و پس از پذیرش، آن را یک بار دیگر در Extensions Hub منتشر می کند.

برای معکوس کردن یک منسوخ، از داشبورد ناشر استفاده کنید یا دستور ext:dev:undeprecate Firebase CLI را اجرا کنید:

firebase ext:dev:undeprecate your_publisher_id/your_extension_id versions

ضمیمه: عیب یابی خطاهای ساخت

هنگامی که برنامه افزودنی خود را آپلود می کنید، باطن ابتدا کد منبع شما را با استفاده از فرآیند زیر می سازد:

  1. مخزن GitHub شما را کلون می کند و منبع منبع مشخص شده را بررسی می کند.

  2. وابستگی های NPM را با اجرای npm clean-install در هر دایرکتوری منبع تابع مشخص شده در extension.yaml نصب می کند (به sourceDirectory در منابع تابع Cloud مراجعه کنید).

    به موارد زیر توجه کنید:

    • هر فایل package.json باید یک فایل package-lock.json مربوطه داشته باشد. برای اطلاعات بیشتر، npm-ci را ببینید.

    • اسکریپت های پس از نصب در طول نصب وابستگی اجرا نمی شوند. اگر ساخت کد منبع شما به اسکریپت های پس از نصب متکی است، قبل از آپلود آن را اصلاح کنید.

  3. کد شما را با اجرای npm run build در هر دایرکتوری منبع تابع مشخص شده در extension.yaml می سازد.

فقط دایرکتوری ریشه برنامه افزودنی شما در بسته برنامه افزودنی نهایی که به اشتراک گذاشته می شود ذخیره می شود.

اگر هنگام آپلود برنامه افزودنی خود با خطاهای ساخت مواجه شدید، مراحل ساخت بالا را به صورت محلی در یک فهرست تازه تکرار کنید تا زمانی که خطایی وجود نداشته باشد، سپس دوباره آپلود کنید.

،

این صفحه توضیح می دهد که چگونه می توانید یک برنامه افزودنی را در Extensions Hub منتشر کنید.

قبل از شروع

برای انتشار یک برنامه افزودنی، ابتدا باید به عنوان ناشر برنامه های افزودنی ثبت نام کنید .

منابع قابل تایید

همه برنامه‌های افزودنی منتشر شده در Extensions Hub باید دارای منبع قابل تأیید عمومی باشند. به جای اینکه کد منبع برنامه افزودنی خود را مستقیماً در Extensions Hub آپلود کنید، در عوض مکان منبع را مشخص می کنید و Extension Hub آن را دانلود کرده و از آنجا می سازد.

در حال حاضر، این به این معنی است که کد منبع برنامه افزودنی خود را در یک مخزن عمومی GitHub در دسترس قرار دهید.

آپلود از یک منبع قابل تایید چندین مزیت دارد:

  • کاربران می توانند کد منبع بازبینی خاص برنامه افزودنی نصب شده را بررسی کنند.
  • می‌توانید مطمئن شوید که فقط آنچه را که می‌خواهید آپلود کنید، آپلود می‌کنید، و نه، برای مثال، کار در حال انجام، یا گمراه شدن فایل‌های باقی‌مانده از توسعه.

چرخه توسعه توصیه شده

ابزارهای توسعه Firebase Extensions از آپلود نسخه‌های پیش از انتشار افزونه‌های شما پشتیبانی می‌کنند، که آزمایش برنامه‌های افزودنی و فرآیند نصب برنامه‌های افزودنی را برای شما آسان می‌کند در همان محیطی که در نهایت در آن منتشر می‌شوند.

این قابلیت یک چرخه توسعه مانند موارد زیر را ممکن می کند:

  1. برنامه افزودنی خود را با استفاده از Firebase Emulator Suite توسعه دهید و به سرعت آن را تکرار کنید.

  2. برنامه افزودنی خود را در یک پروژه واقعی با نصب آن از منبع محلی آزمایش کنید:

    firebase ext:install /path/to/extension
    firebase deploy --only extensions
    
  3. یک نسخه پیش از انتشار را در Extensions Hub آپلود کنید (به زیر مراجعه کنید). پیوند نصب را برای آزمایش گسترده‌تر توزیع کنید و در صورت لزوم با آپلود نسخه‌های قبل از انتشار بیشتر، آن را تکرار کنید.

  4. نسخه نهایی و پایدار را در Extensions Hub آپلود کنید (به زیر مراجعه کنید) و آن را برای بررسی ارسال کنید. اگر برنامه افزودنی مورد بررسی قرار گیرد، در Extension Hub منتشر خواهد شد.

  5. شماره نسخه را در extension.yaml افزایش دهید و این چرخه را برای نسخه بعدی برنامه افزودنی خود تکرار کنید.

یک پسوند جدید آپلود کنید

برای بارگذاری یک برنامه افزودنی برای اولین بار:

  1. اختیاری : کد خود را به یک مخزن عمومی GitHub اختصاص دهید.

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید:

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    منبع محلی

    cd /path/to/extension
    firebase ext:dev:upload your_publisher_id/your_extension_id --local
    

    در فراخوانی دستور خود موارد زیر را مشخص می کنید:

    • شناسه ناشر که ثبت کردید .

    • یک رشته ID که پسوند را شناسایی می کند. برنامه های افزودنی خود را با فرمت زیر نام گذاری کنید: firebase-product - description-of-tasks-performed . به عنوان مثال: firestore-bigquery-export

    این دستور از شما اطلاعات اضافی را می خواهد:

    • اگر از GitHub آپلود می کنید:

      • URL به مخزن برنامه افزودنی در GitHub. توجه داشته باشید که یک مخزن می‌تواند دارای چندین پسوند باشد تا زمانی که هر پسوند یک ریشه منحصر به فرد داشته باشد.

        هنگامی که برای اولین بار یک برنامه افزودنی جدید را آپلود می کنید، مخزن به عنوان منبع متعارف افزونه شما ثبت می شود.

      • دایرکتوری موجود در مخزن که حاوی پسوند شما است.

      • مرجع Git commitی که می خواهید منبع نسخه افزونه خود را از آن بسازید. این می تواند یک هش commit، تگ یا نام شاخه باشد.

    • مرحله انتشار نسخه ای که آپلود می کنید.

      مراحل alpha ، beta و rc (نامزد انتشار) برای آپلود نسخه‌های پیش از انتشار برای آزمایش‌کنندگان است تا نصب کنند. از یکی از این مراحل برای آپلود اولیه یک افزونه جدید استفاده کنید.

      مرحله stable برای انتشار عمومی برای انتشار در Extensions Hub استفاده می شود. بارگذاری یک نسخه stable به طور خودکار بازبینی را آغاز می کند و در صورت تصویب، افزونه را منتشر می کند.

    توجه داشته باشید که شماره نسخه ای را مشخص نمی کنید - این مقدار از فایل extension.yaml می آید. هنگامی که یک نسخه پسوند پیش از انتشار را آپلود می کنید، شماره مرحله و آپلود به نسخه اضافه می شود. به عنوان مثال، اگر extension.yaml نسخه 1.0.1 را مشخص کند و شما یک نامزد انتشار را آپلود کنید، منجر به نسخه 1.0.1-rc.0 می شود. آپلود یک نامزد انتشار دیگر از همان نسخه، به طور خودکار تعداد را افزایش می دهد، که منجر به 1.0.1-rc.1 و غیره می شود.

اکنون که نسخه پیش از انتشار برنامه افزودنی را بارگذاری کرده اید، می توانید آن را برای آزمایش با دیگران به اشتراک بگذارید. کاربران می توانند افزونه شما را به یکی از دو روش نصب کنند:

  • با کنسول : کاربران می توانند با کلیک کردن روی پیوندی با فرمت زیر، افزونه را نصب کنند:

    https://console.firebase.google.com/project/_/extensions/install?ref=your_publisher_id/your_extension_id@version

    می توانید پیوند مستقیم را با آزمایش کنندگان خود به اشتراک بگذارید.

  • با CLI : کاربران می‌توانند با ارسال رشته ID افزونه به دستور ext:install ، افزونه را نصب کنند:

    firebase ext:install your_publisher_id/your_extension_id@version \
        --project=destination_project_id
    

یک نسخه به روز شده را آپلود کنید

بعد از اینکه اولین نسخه یک برنامه افزودنی را آپلود کردید، می‌توانید به‌روزرسانی‌ها را برای رفع مشکلات، اضافه کردن ویژگی‌ها یا پیشبرد مرحله انتشار آپلود کنید. وقتی نسخه جدیدی را آپلود می‌کنید، از کاربرانی که نسخه قدیمی‌تری از برنامه افزودنی شما را نصب کرده‌اند، در کنسول Firebase خواسته می‌شود که آن را ارتقا دهند.

برای آپلود به روز رسانی:

  1. اختیاری : کد خود را به یک مخزن عمومی Git اختصاص دهید.

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید:

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    این بار از شما خواسته نمی شود که مخزن GitHub یا دایرکتوری ریشه برنامه افزودنی را مشخص کنید زیرا قبلاً برای برنامه افزودنی شما پیکربندی شده اند. اگر از آن زمان ساختار مخزن خود را بازسازی کرده اید یا به یک مخزن جدید مهاجرت کرده اید، می توانید آنها را با آرگومان های دستوری --root و --repo تغییر دهید.

    منبع محلی

    cd /path/to/extension
    firebase ext:dev:upload your_publisher_id/your_extension_id --local
    

پسوند را برای انتشار ارسال کنید

وقتی آماده انتشار عمومی برنامه افزودنی خود هستید:

  1. کد خود را به یک مخزن عمومی Git اختصاص دهید. (برای انتشار عمومی لازم است.)

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید و stable به عنوان مرحله انتشار مشخص کنید:

    firebase ext:dev:upload your_publisher_id/your_extension_id
    
  3. اگر قبلاً نسخه‌ای از برنامه افزودنی خود را منتشر کرده‌اید، آپلود نسخه پایدار جدید به‌طور خودکار افزونه را برای بررسی ارسال می‌کند.

    اگر اولین نسخه پایدار برنامه افزودنی را آپلود کردید، برنامه افزودنی را در داشبورد ناشر خود پیدا کنید و روی انتشار در مرکز برنامه افزودنی کلیک کنید.

پس از ارسال، بررسی ممکن است چند روز طول بکشد. در صورت پذیرش، برنامه افزودنی در Extensions Hub منتشر خواهد شد. اگر رد شد، پیامی دریافت خواهید کرد که دلیل آن را توضیح می دهد. سپس می توانید به مشکلات گزارش شده رسیدگی کنید و مجددا برای بررسی ارسال کنید.

برای تسریع در بررسی و افزایش شانس قبولی در اولین تلاش، قبل از ارسال، موارد زیر را دوباره بررسی کنید:

  • شما برنامه افزودنی خود و مراحل نصب را به طور کامل آزمایش کرده اید.
  • مستندات شما کامل و صحیح است و در کنسول Firebase به خوبی ارائه می شود.
  • نام و نام تجاری ناشر شما به طور واضح و دقیق شما را به عنوان ناشر معرفی می کند.
  • نام، توضیحات و نماد برنامه افزودنی شما به طور واضح و دقیق هدف برنامه افزودنی شما را نشان می دهد.
  • شما برچسب های مفید و دقیقی را اعمال کرده اید.
  • شما در extension.yaml همه APIهای Google و غیر Google را که استفاده می کنید و همه انواع رویدادهایی که برنامه افزودنی شما منتشر می کند، اعلام کرده اید.
  • شما فقط به نقش های لازم برای عملکرد برنامه افزودنی درخواست دسترسی دارید و به طور واضح به کاربران توضیح داده اید که چرا به چنین دسترسی نیاز دارید.
  • فایل های منبع شما به وضوح تحت مجوز Apache-2.0 هستند.

پسوندهای آپلود شده و منتشر شده را مدیریت کنید

پسوندهای آپلود شده خود را فهرست کنید

برای فهرست کردن برنامه‌های افزودنی که در شناسه ناشر خود آپلود کرده‌اید، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

آنها را در داشبورد ناشر مشاهده کنید.

Firebase CLI

دستور ext:dev:list را اجرا کنید:

firebase ext:dev:list your_publisher_id

استفاده از برنامه های افزودنی آپلود شده خود را مشاهده کنید

برای مشاهده میزان استفاده از افزونه هایی که تحت شناسه ناشر خود آپلود کرده اید، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

داشبورد ناشر دارای معیارهای استفاده تجمعی برای همه برنامه‌های افزودنی شما و معیارهای فردی برای هر برنامه افزودنی است.

Firebase CLI

دستور ext:dev:usage را اجرا کنید:

firebase ext:dev:usage your_publisher_id

نسخه یک برنامه افزودنی را منسوخ کنید

در برخی مواقع، ممکن است بخواهید نسخه قدیمی برنامه افزودنی خود را منسوخ کنید. به عنوان مثال، اگر نسخه جدیدی را منتشر می کنید که یک باگ مهم را برطرف می کند یا یک وابستگی را با یک به روز رسانی امنیتی مهم به روز می کند، مهم است که از نصب نسخه قدیمی توسط کاربران جدید جلوگیری کنید و کاربران فعلی را به ارتقاء تشویق کنید.

برای منسوخ کردن نسخه یک برنامه افزودنی، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

  1. در داشبورد ناشر ، روی افزونه کلیک کنید تا نمای جزئیات آن باز شود.
  2. نسخه ای را که می خواهید منسوخ کنید انتخاب کنید.
  3. روی Deprecate version کلیک کنید.

Firebase CLI

دستور ext:dev:deprecate را اجرا کنید:

firebase ext:dev:deprecate your_publisher_id/your_extension_id versions \
    [--message "deprecation_message"]

شما می توانید یک نسخه یا محدوده ای از نسخه ها را مشخص کنید. مثال ها:

  • 1.0.2
  • 1.1.0-1.1.7
  • <1.2.0
  • 1.1.*

نسخه‌های منسوخ شده یک برنامه افزودنی در Extensions Hub فهرست نشده‌اند و نمی‌توان آنها را نصب کرد. کاربرانی که پروژه‌هایشان نسخه قدیمی نصب شده است، پیامی را مشاهده می‌کنند که آنها را تشویق به ارتقاء می‌کند. آنها هنوز هم می توانند از برنامه افزودنی استفاده کرده و مجدداً در این مدت پیکربندی کنند.

اگر هر نسخه از یک برنامه افزودنی منسوخ شود، برنامه افزودنی منسوخ در نظر گرفته می شود و از فهرست Extensions Hub حذف می شود. بارگذاری یک نسخه جدید از یک برنامه افزودنی منسوخ شده به طور خودکار بازبینی را آغاز می کند و پس از پذیرش، آن را یک بار دیگر در Extensions Hub منتشر می کند.

برای معکوس کردن یک منسوخ، از داشبورد ناشر استفاده کنید یا دستور ext:dev:undeprecate Firebase CLI را اجرا کنید:

firebase ext:dev:undeprecate your_publisher_id/your_extension_id versions

ضمیمه: عیب یابی خطاهای ساخت

هنگامی که برنامه افزودنی خود را آپلود می کنید، باطن ابتدا کد منبع شما را با استفاده از فرآیند زیر می سازد:

  1. مخزن GitHub شما را کلون می کند و منبع منبع مشخص شده را بررسی می کند.

  2. وابستگی های NPM را با اجرای npm clean-install در هر دایرکتوری منبع تابع مشخص شده در extension.yaml نصب می کند (به sourceDirectory در منابع تابع Cloud مراجعه کنید).

    به موارد زیر توجه کنید:

    • هر فایل package.json باید یک فایل package-lock.json مربوطه داشته باشد. برای اطلاعات بیشتر، npm-ci را ببینید.

    • اسکریپت های پس از نصب در طول نصب وابستگی اجرا نمی شوند. اگر ساخت کد منبع شما به اسکریپت های پس از نصب متکی است، قبل از آپلود آن را اصلاح کنید.

  3. کد شما را با اجرای npm run build در هر دایرکتوری منبع تابع مشخص شده در extension.yaml می سازد.

فقط دایرکتوری ریشه برنامه افزودنی شما در بسته برنامه افزودنی نهایی که به اشتراک گذاشته می شود ذخیره می شود.

اگر هنگام آپلود برنامه افزودنی خود با خطاهای ساخت مواجه شدید، مراحل ساخت بالا را به صورت محلی در یک فهرست تازه تکرار کنید تا زمانی که خطایی وجود نداشته باشد، سپس دوباره آپلود کنید.

،

این صفحه توضیح می دهد که چگونه می توانید یک برنامه افزودنی را در Extensions Hub منتشر کنید.

قبل از شروع

برای انتشار یک برنامه افزودنی، ابتدا باید به عنوان ناشر برنامه های افزودنی ثبت نام کنید .

منابع قابل تایید

همه برنامه‌های افزودنی منتشر شده در Extensions Hub باید دارای منبع قابل تأیید عمومی باشند. به جای اینکه کد منبع برنامه افزودنی خود را مستقیماً در Extensions Hub آپلود کنید، در عوض مکان منبع را مشخص می کنید و Extension Hub آن را دانلود کرده و از آنجا می سازد.

در حال حاضر، این به این معنی است که کد منبع برنامه افزودنی خود را در یک مخزن عمومی GitHub در دسترس قرار دهید.

آپلود از یک منبع قابل تایید چندین مزیت دارد:

  • کاربران می توانند کد منبع بازبینی خاص برنامه افزودنی نصب شده را بررسی کنند.
  • می‌توانید مطمئن شوید که فقط آنچه را که می‌خواهید آپلود کنید، آپلود می‌کنید، و نه، برای مثال، کار در حال انجام، یا گمراه شدن فایل‌های باقی‌مانده از توسعه.

چرخه توسعه توصیه شده

ابزارهای توسعه Firebase Extensions از آپلود نسخه‌های پیش از انتشار افزونه‌های شما پشتیبانی می‌کنند، که آزمایش برنامه‌های افزودنی و فرآیند نصب برنامه‌های افزودنی را برای شما آسان می‌کند در همان محیطی که در نهایت در آن منتشر می‌شوند.

این قابلیت یک چرخه توسعه مانند موارد زیر را ممکن می کند:

  1. برنامه افزودنی خود را با استفاده از Firebase Emulator Suite توسعه دهید و به سرعت آن را تکرار کنید.

  2. برنامه افزودنی خود را در یک پروژه واقعی با نصب آن از منبع محلی آزمایش کنید:

    firebase ext:install /path/to/extension
    firebase deploy --only extensions
    
  3. یک نسخه پیش از انتشار را در Extensions Hub آپلود کنید (به زیر مراجعه کنید). پیوند نصب را برای آزمایش گسترده‌تر توزیع کنید و در صورت لزوم با آپلود نسخه‌های قبل از انتشار بیشتر، آن را تکرار کنید.

  4. نسخه نهایی و پایدار را در Extensions Hub آپلود کنید (به زیر مراجعه کنید) و آن را برای بررسی ارسال کنید. اگر برنامه افزودنی مورد بررسی قرار گیرد، در Extension Hub منتشر خواهد شد.

  5. شماره نسخه را در extension.yaml افزایش دهید و این چرخه را برای نسخه بعدی برنامه افزودنی خود تکرار کنید.

یک پسوند جدید آپلود کنید

برای بارگذاری یک برنامه افزودنی برای اولین بار:

  1. اختیاری : کد خود را به یک مخزن عمومی GitHub اختصاص دهید.

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید:

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    منبع محلی

    cd /path/to/extension
    firebase ext:dev:upload your_publisher_id/your_extension_id --local
    

    در فراخوانی دستور خود موارد زیر را مشخص می کنید:

    • شناسه ناشر که ثبت کردید .

    • یک رشته ID که پسوند را شناسایی می کند. برنامه های افزودنی خود را با فرمت زیر نام گذاری کنید: firebase-product - description-of-tasks-performed . به عنوان مثال: firestore-bigquery-export

    این دستور از شما اطلاعات اضافی را می خواهد:

    • اگر از GitHub آپلود می کنید:

      • URL به مخزن برنامه افزودنی در GitHub. توجه داشته باشید که یک مخزن می‌تواند دارای چندین پسوند باشد تا زمانی که هر پسوند یک ریشه منحصر به فرد داشته باشد.

        هنگامی که برای اولین بار یک برنامه افزودنی جدید را آپلود می کنید، مخزن به عنوان منبع متعارف افزونه شما ثبت می شود.

      • دایرکتوری موجود در مخزن که حاوی پسوند شما است.

      • مرجع Git commitی که می خواهید منبع نسخه افزونه خود را از آن بسازید. این می تواند یک هش commit، تگ یا نام شاخه باشد.

    • مرحله انتشار نسخه ای که آپلود می کنید.

      مراحل alpha ، beta و rc (نامزد انتشار) برای آپلود نسخه‌های پیش از انتشار برای آزمایش‌کنندگان است تا نصب کنند. از یکی از این مراحل برای آپلود اولیه یک افزونه جدید استفاده کنید.

      مرحله stable برای انتشار عمومی برای انتشار در Extensions Hub استفاده می شود. بارگذاری یک نسخه stable به طور خودکار بازبینی را آغاز می کند و در صورت تصویب، افزونه را منتشر می کند.

    توجه داشته باشید که شماره نسخه را مشخص نمی کنید - این مقدار از فایل extension.yaml می آید. هنگامی که یک نسخه پسوند پیش از انتشار را آپلود می کنید، شماره مرحله و آپلود به نسخه اضافه می شود. برای مثال، اگر extension.yaml نسخه 1.0.1 را مشخص کند و شما یک نامزد انتشار را آپلود کنید، منجر به نسخه 1.0.1-rc.0 می شود. آپلود یک کاندید انتشار دیگر از همان نسخه، به طور خودکار تعداد را افزایش می دهد، که منجر به 1.0.1-rc.1 و غیره می شود.

اکنون که نسخه پیش از انتشار برنامه افزودنی را بارگذاری کرده اید، می توانید آن را برای آزمایش با دیگران به اشتراک بگذارید. کاربران می توانند افزونه شما را به یکی از دو روش نصب کنند:

  • با کنسول : کاربران می توانند با کلیک کردن روی پیوندی با فرمت زیر، افزونه را نصب کنند:

    https://console.firebase.google.com/project/_/extensions/install?ref=your_publisher_id/your_extension_id@version

    می توانید پیوند مستقیم را با آزمایش کنندگان خود به اشتراک بگذارید.

  • با CLI : کاربران می‌توانند با ارسال رشته ID افزونه به دستور ext:install ، افزونه را نصب کنند:

    firebase ext:install your_publisher_id/your_extension_id@version \
        --project=destination_project_id
    

یک نسخه به روز شده را آپلود کنید

بعد از اینکه اولین نسخه یک برنامه افزودنی را آپلود کردید، می‌توانید به‌روزرسانی‌ها را برای رفع مشکلات، اضافه کردن ویژگی‌ها یا پیشبرد مرحله انتشار آپلود کنید. وقتی نسخه جدیدی را آپلود می‌کنید، از کاربرانی که نسخه قدیمی‌تری از برنامه افزودنی شما را نصب کرده‌اند، در کنسول Firebase خواسته می‌شود که آن را ارتقا دهند.

برای آپلود به روز رسانی:

  1. اختیاری : کد خود را به یک مخزن عمومی Git اختصاص دهید.

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید:

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    این بار از شما خواسته نمی شود که مخزن GitHub یا دایرکتوری ریشه برنامه افزودنی را مشخص کنید زیرا قبلاً برای برنامه افزودنی شما پیکربندی شده اند. اگر از آن زمان ساختار مخزن خود را بازسازی کرده اید یا به یک مخزن جدید مهاجرت کرده اید، می توانید آنها را با آرگومان های دستوری --root و --repo تغییر دهید.

    منبع محلی

    cd /path/to/extension
    firebase ext:dev:upload your_publisher_id/your_extension_id --local
    

پسوند را برای انتشار ارسال کنید

وقتی آماده انتشار عمومی برنامه افزودنی خود هستید:

  1. کد خود را به یک مخزن عمومی Git اختصاص دهید. (برای انتشار عمومی لازم است.)

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید و stable به عنوان مرحله انتشار مشخص کنید:

    firebase ext:dev:upload your_publisher_id/your_extension_id
    
  3. اگر قبلاً نسخه‌ای از برنامه افزودنی خود را منتشر کرده‌اید، آپلود نسخه پایدار جدید به‌طور خودکار افزونه را برای بررسی ارسال می‌کند.

    اگر اولین نسخه پایدار برنامه افزودنی را آپلود کردید، برنامه افزودنی را در داشبورد ناشر خود پیدا کنید و روی انتشار در مرکز برنامه افزودنی کلیک کنید.

پس از ارسال، بررسی ممکن است چند روز طول بکشد. در صورت پذیرش، برنامه افزودنی در Extensions Hub منتشر خواهد شد. اگر رد شد، پیامی دریافت خواهید کرد که دلیل آن را توضیح می دهد. سپس می توانید به مشکلات گزارش شده رسیدگی کنید و مجددا برای بررسی ارسال کنید.

برای تسریع در بررسی و افزایش شانس قبولی در اولین تلاش، قبل از ارسال، موارد زیر را دوباره بررسی کنید:

  • شما برنامه افزودنی خود و مراحل نصب را به طور کامل آزمایش کرده اید.
  • مستندات شما کامل و صحیح است و در کنسول Firebase به خوبی ارائه می شود.
  • نام و نام تجاری ناشر شما به طور واضح و دقیق شما را به عنوان ناشر معرفی می کند.
  • نام، توضیحات و نماد برنامه افزودنی شما به طور واضح و دقیق هدف برنامه افزودنی شما را نشان می دهد.
  • شما برچسب های مفید و دقیقی را اعمال کرده اید.
  • شما در extension.yaml همه APIهای Google و غیر Google را که استفاده می کنید و همه انواع رویدادهایی که برنامه افزودنی شما منتشر می کند، اعلام کرده اید.
  • شما فقط به نقش های لازم برای عملکرد برنامه افزودنی درخواست دسترسی دارید و به طور واضح به کاربران توضیح داده اید که چرا به چنین دسترسی نیاز دارید.
  • فایل های منبع شما به وضوح تحت مجوز Apache-2.0 هستند.

پسوندهای آپلود شده و منتشر شده را مدیریت کنید

پسوندهای آپلود شده خود را فهرست کنید

برای فهرست کردن برنامه‌های افزودنی که در شناسه ناشر خود آپلود کرده‌اید، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

آنها را در داشبورد ناشر مشاهده کنید.

Firebase CLI

دستور ext:dev:list را اجرا کنید:

firebase ext:dev:list your_publisher_id

استفاده از برنامه های افزودنی آپلود شده خود را مشاهده کنید

برای مشاهده میزان استفاده از افزونه هایی که تحت شناسه ناشر خود آپلود کرده اید، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

داشبورد ناشر دارای معیارهای استفاده تجمعی برای همه برنامه‌های افزودنی شما و معیارهای فردی برای هر برنامه افزودنی است.

Firebase CLI

دستور ext:dev:usage را اجرا کنید:

firebase ext:dev:usage your_publisher_id

نسخه یک برنامه افزودنی را منسوخ کنید

در برخی مواقع، ممکن است بخواهید نسخه قدیمی برنامه افزودنی خود را منسوخ کنید. به عنوان مثال، اگر نسخه جدیدی را منتشر می کنید که یک باگ مهم را برطرف می کند یا یک وابستگی را با یک به روز رسانی امنیتی مهم به روز می کند، مهم است که از نصب نسخه قدیمی توسط کاربران جدید جلوگیری کنید و کاربران فعلی را به ارتقاء تشویق کنید.

برای منسوخ کردن نسخه یک برنامه افزودنی، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

  1. در داشبورد ناشر ، روی افزونه کلیک کنید تا نمای جزئیات آن باز شود.
  2. نسخه ای را که می خواهید منسوخ کنید انتخاب کنید.
  3. روی Deprecate version کلیک کنید.

Firebase CLI

دستور ext:dev:deprecate را اجرا کنید:

firebase ext:dev:deprecate your_publisher_id/your_extension_id versions \
    [--message "deprecation_message"]

شما می توانید یک نسخه یا محدوده ای از نسخه ها را مشخص کنید. مثال ها:

  • 1.0.2
  • 1.1.0-1.1.7
  • <1.2.0
  • 1.1.*

نسخه‌های منسوخ شده یک برنامه افزودنی در Extensions Hub فهرست نشده‌اند و نمی‌توان آنها را نصب کرد. کاربرانی که پروژه‌هایشان نسخه قدیمی نصب شده است، پیامی را مشاهده می‌کنند که آنها را تشویق به ارتقاء می‌کند. آنها هنوز هم می توانند از برنامه افزودنی استفاده کرده و مجدداً در این مدت پیکربندی کنند.

اگر هر نسخه از یک برنامه افزودنی منسوخ شود، برنامه افزودنی منسوخ در نظر گرفته می شود و از فهرست Extensions Hub حذف می شود. بارگذاری یک نسخه جدید از یک برنامه افزودنی منسوخ شده به طور خودکار بازبینی را آغاز می کند و پس از پذیرش، آن را یک بار دیگر در Extensions Hub منتشر می کند.

برای معکوس کردن یک منسوخ، از داشبورد ناشر استفاده کنید یا دستور ext:dev:undeprecate Firebase CLI را اجرا کنید:

firebase ext:dev:undeprecate your_publisher_id/your_extension_id versions

ضمیمه: عیب یابی خطاهای ساخت

هنگامی که برنامه افزودنی خود را آپلود می کنید، باطن ابتدا کد منبع شما را با استفاده از فرآیند زیر می سازد:

  1. مخزن GitHub شما را کلون می کند و منبع منبع مشخص شده را بررسی می کند.

  2. وابستگی های NPM را با اجرای npm clean-install در هر دایرکتوری منبع تابع مشخص شده در extension.yaml نصب می کند (به sourceDirectory در منابع تابع Cloud مراجعه کنید).

    به موارد زیر توجه کنید:

    • هر فایل package.json باید یک فایل package-lock.json مربوطه داشته باشد. برای اطلاعات بیشتر، npm-ci را ببینید.

    • اسکریپت های پس از نصب در طول نصب وابستگی اجرا نمی شوند. اگر ساخت کد منبع شما به اسکریپت های پس از نصب متکی است، قبل از آپلود آن را اصلاح کنید.

  3. کد شما را با اجرای npm run build در هر دایرکتوری منبع تابع مشخص شده در extension.yaml می سازد.

فقط دایرکتوری ریشه برنامه افزودنی شما در بسته برنامه افزودنی نهایی که به اشتراک گذاشته می شود ذخیره می شود.

اگر هنگام آپلود برنامه افزودنی خود با خطاهای ساخت مواجه شدید، مراحل ساخت بالا را به صورت محلی در یک فهرست تازه تکرار کنید تا زمانی که خطایی وجود نداشته باشد، سپس دوباره آپلود کنید.

،

این صفحه توضیح می دهد که چگونه می توانید یک برنامه افزودنی را در Extensions Hub منتشر کنید.

قبل از شروع

برای انتشار یک برنامه افزودنی، ابتدا باید به عنوان ناشر برنامه های افزودنی ثبت نام کنید .

منابع قابل تایید

همه برنامه‌های افزودنی منتشر شده در Extensions Hub باید دارای منبع قابل تأیید عمومی باشند. به جای اینکه کد منبع برنامه افزودنی خود را مستقیماً در Extensions Hub آپلود کنید، در عوض مکان منبع را مشخص می کنید و Extension Hub آن را دانلود کرده و از آنجا می سازد.

در حال حاضر، این به این معنی است که کد منبع برنامه افزودنی خود را در یک مخزن عمومی GitHub در دسترس قرار دهید.

آپلود از یک منبع قابل تایید چندین مزیت دارد:

  • کاربران می توانند کد منبع بازبینی خاص برنامه افزودنی نصب شده را بررسی کنند.
  • می‌توانید مطمئن شوید که فقط آنچه را که می‌خواهید آپلود کنید، آپلود می‌کنید، و نه، برای مثال، کار در حال انجام، یا گمراه شدن فایل‌های باقی‌مانده از توسعه.

چرخه توسعه توصیه شده

ابزارهای توسعه Firebase Extensions از آپلود نسخه‌های پیش از انتشار افزونه‌های شما پشتیبانی می‌کنند، که آزمایش برنامه‌های افزودنی و فرآیند نصب برنامه‌های افزودنی را برای شما آسان می‌کند در همان محیطی که در نهایت در آن منتشر می‌شوند.

این قابلیت یک چرخه توسعه مانند موارد زیر را ممکن می کند:

  1. برنامه افزودنی خود را با استفاده از Firebase Emulator Suite توسعه دهید و به سرعت آن را تکرار کنید.

  2. برنامه افزودنی خود را در یک پروژه واقعی با نصب آن از منبع محلی آزمایش کنید:

    firebase ext:install /path/to/extension
    firebase deploy --only extensions
    
  3. یک نسخه پیش از انتشار را در Extensions Hub آپلود کنید (به زیر مراجعه کنید). پیوند نصب را برای آزمایش گسترده‌تر توزیع کنید و در صورت لزوم با آپلود نسخه‌های قبل از انتشار بیشتر، آن را تکرار کنید.

  4. نسخه نهایی و پایدار را در Extensions Hub آپلود کنید (به زیر مراجعه کنید) و آن را برای بررسی ارسال کنید. اگر برنامه افزودنی مورد بررسی قرار گیرد، در Extension Hub منتشر خواهد شد.

  5. شماره نسخه را در extension.yaml افزایش دهید و این چرخه را برای نسخه بعدی برنامه افزودنی خود تکرار کنید.

یک پسوند جدید آپلود کنید

برای بارگذاری یک برنامه افزودنی برای اولین بار:

  1. اختیاری : کد خود را به یک مخزن عمومی GitHub اختصاص دهید.

  2. دستور ext:dev:upload Firebase CLI را اجرا کنید:

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    منبع محلی

    cd /path/to/extension
    firebase ext:dev:upload your_publisher_id/your_extension_id --local
    

    در فراخوانی دستور خود موارد زیر را مشخص می کنید:

    • شناسه ناشر که ثبت کردید .

    • یک رشته ID که پسوند را شناسایی می کند. برنامه های افزودنی خود را با فرمت زیر نام گذاری کنید: firebase-product - description-of-tasks-performed . به عنوان مثال: firestore-bigquery-export

    این دستور شما را برای اطلاعات بیشتر سوق می دهد:

    • اگر در حال بارگذاری از GitHub هستید:

      • URL به مخزن پسوند در GitHub. توجه داشته باشید که یک مخزن تا زمانی که هر پسوند دارای ریشه منحصر به فرد باشد می تواند حاوی چندین پسوند باشد.

        هنگامی که برای اولین بار پسوند جدیدی را بارگذاری می کنید ، مخزن به عنوان منبع متعارف برای پسوند شما ثبت می شود.

      • دایرکتوری در مخزن که شامل پسوند شما است.

      • مرجع GIT تعهد مورد نظر برای ساختن منبع نسخه پسوند خود از. این می تواند یک هش ، برچسب یا نام شعبه باشد.

    • مرحله انتشار نسخه ای که بارگذاری می کنید.

      مراحل alpha ، beta و rc (نامزد انتشار) برای بارگذاری نسخه های قبل از انتشار برای نصب آزمایش کنندگان است. برای بارگذاری اولیه یک پسوند جدید از یکی از این مراحل استفاده کنید.

      از مرحله stable برای انتشار عمومی برای انتشار در Hub Extensions استفاده می شود. بارگذاری یک نسخه stable به طور خودکار یک بررسی را آغاز می کند و در صورت عبور از آن ، پسوند را منتشر می کند.

    توجه کنید که یک شماره نسخه را مشخص نمی کنید - این مقدار از پرونده extension.yaml تهیه می شود. هنگامی که نسخه پسوند قبل از انتشار را بارگذاری می کنید ، شماره مرحله و آپلود به نسخه اضافه می شود. به عنوان مثال ، اگر extension.yaml نسخه 1.0.1 را مشخص کند و یک نامزد انتشار را بارگذاری کنید ، منجر به نسخه 1.0.1-rc.0 می شود. بارگذاری نامزد نسخه دیگر از همان نسخه ، به طور خودکار تعداد را افزایش می دهد ، در نتیجه 1.0.1-rc.1 و غیره.

اکنون که نسخه پیش از انتشار برنامه را بارگذاری کرده اید ، می توانید آن را برای آزمایش با دیگران به اشتراک بگذارید. کاربران می توانند پسوند شما را از هر دو روش نصب کنند:

  • با کنسول : کاربران می توانند با کلیک روی پیوند با فرمت زیر ، پسوند را نصب کنند:

    https://console.firebase.google.com/project/_/extensions/install?ref=your_publisher_id/your_extension_id@version

    می توانید پیوند مستقیم را با آزمایش کنندگان خود به اشتراک بگذارید.

  • با استفاده از CLI : کاربران می توانند با عبور از رشته شناسه پسوند به ext:install :

    firebase ext:install your_publisher_id/your_extension_id@version \
        --project=destination_project_id
    

نسخه به روز شده را بارگذاری کنید

پس از بارگذاری نسخه اول یک برنامه افزودنی ، می توانید به روزرسانی ها را برای رفع مشکلات ، اضافه کردن ویژگی ها یا پیشبرد مرحله انتشار بارگذاری کنید. هنگامی که نسخه جدیدی را بارگذاری می کنید ، کاربرانی که نسخه قدیمی شما از پسوند شما نصب شده اند ، در کنسول Firebase برای به روزرسانی خواسته می شوند.

برای بارگذاری به روزرسانی:

  1. اختیاری : کد خود را به یک مخزن عمومی GIT متعهد کنید.

  2. اجرای Firebase CLI ext:dev:upload :

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    این بار از شما خواسته نمی شود مخزن GitHub یا دایرکتوری ریشه پسوند را مشخص کنید زیرا آنها قبلاً برای پسوند شما پیکربندی شده اند. اگر از آن زمان ساختار مخزن خود را مجدداً تغییر داده اید یا به یک مخزن جدید مهاجرت کرده اید ، می توانید آنها را با آرگومان های فرمان --root و --repo تغییر دهید.

    منبع محلی

    cd /path/to/extension
    firebase ext:dev:upload your_publisher_id/your_extension_id --local
    

یک برنامه افزودنی برای انتشار ارسال کنید

هنگامی که شما آماده انتشار عمومی هستید:

  1. کد خود را به یک مخزن عمومی GIT متعهد کنید. (برای نسخه های عمومی مورد نیاز است.)

  2. اجرای Firebase CLI ext:dev:upload ، مشخص کردن stable به عنوان مرحله انتشار:

    firebase ext:dev:upload your_publisher_id/your_extension_id
    
  3. اگر قبلاً نسخه ای از پسوند خود را منتشر کرده اید ، بارگذاری یک نسخه پایدار جدید به طور خودکار پسوند را برای بررسی ارسال می کند.

    اگر اولین نسخه پایدار Extension را بارگذاری کردید ، برنامه افزودنی را در داشبورد ناشر خود پیدا کنید و روی Publish to Extensions Hub کلیک کنید.

پس از ارسال ، بررسی می تواند چند روز طول بکشد. در صورت پذیرش ، برنامه افزودنی به Hub Extensions منتشر می شود. در صورت رد ، پیامی را توضیح می دهید که دلیل آن را توضیح می دهد. سپس می توانید به موضوعات گزارش شده بپردازید و برای بررسی دوباره ارسال کنید.

برای تسریع در بررسی و افزایش شانس خود در اولین بار ، قبل از ارسال ، موارد زیر را بررسی کنید:

  • شما پسوند و روند نصب خود را کاملاً آزمایش کرده اید.
  • مستندات شما کامل و صحیح است و در کنسول Firebase به خوبی ارائه می شود.
  • نام و نام تجاری ناشر شما به روشنی و دقیق شما را به عنوان ناشر معرفی می کند.
  • نام ، توضیحات و نماد پسوند شما به وضوح و دقیق هدف پسوند شما را نشان می دهد.
  • شما از برچسب های مفید و دقیق استفاده کرده اید.
  • شما در extension.yaml اعلام کرده اید. همه API های Google و غیر Google را که استفاده می کنید ، و انواع رویدادهای شما منتشر می شود.
  • شما فقط درخواست دسترسی به نقش های لازم برای عملکرد را دارید و به روشنی برای کاربران توضیح داده اید که چرا به چنین دسترسی نیاز دارید.
  • پرونده های منبع شما به وضوح تحت شرایط Apache-2.0 مجوز دارند.

پسوندهای بارگذاری شده و منتشر شده را مدیریت کنید

پسوند بارگذاری شده خود را لیست کنید

برای لیست پسوندهای بارگذاری شده در زیر شناسه ناشر خود ، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

آنها را در داشبورد ناشر مشاهده کنید.

پایگاه آتش نشانی

اجرای ext:dev:list COMMENT:

firebase ext:dev:list your_publisher_id

استفاده از پسوندهای بارگذاری شده خود را مشاهده کنید

برای مشاهده استفاده از پسوندهایی که در زیر شناسه ناشر خود بارگذاری کرده اید ، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

داشبورد ناشر دارای معیارهای استفاده تجمعی برای تمام برنامه های افزودنی و معیارهای فردی شما برای هر پسوند است.

پایگاه آتش نشانی

اجرای ext:dev:usage :

firebase ext:dev:usage your_publisher_id

نسخه ای از پسوند را کاهش دهید

در بعضی از مواقع ، ممکن است بخواهید نسخه قدیمی پسوند خود را کاهش دهید. به عنوان مثال ، اگر نسخه جدیدی را منتشر می کنید که یک اشکال مهم را برطرف می کند یا وابستگی را با یک به روزرسانی مهم امنیتی به روز می کند ، مهم است که کاربران جدید از نصب نسخه قدیمی و تشویق کاربران موجود برای به روزرسانی جلوگیری کنید.

برای کاهش یک نسخه از پسوند ، یکی از موارد زیر را انجام دهید:

داشبورد ناشر

  1. در داشبورد ناشر ، روی پسوند کلیک کنید تا نمای جزئیات آن را باز کنید.
  2. نسخه مورد نظر خود را انتخاب کنید.
  3. روی نسخه Deadrecate کلیک کنید.

پایگاه آتش نشانی

ext:dev:deprecate COMMENT:

firebase ext:dev:deprecate your_publisher_id/your_extension_id versions \
    [--message "deprecation_message"]

می توانید یک نسخه واحد یا دامنه نسخه ها را مشخص کنید. مثال ها:

  • 1.0.2
  • 1.1.0-1.1.7
  • <1.2.0
  • 1.1.*

نسخه های مستهلک شده از یک پسوند در مرکز پسوند ذکر نشده و قابل نصب نیست. کاربرانی که پروژه های آنها یک نسخه مستهجن نصب شده است ، پیامی را مشاهده می کنند که آنها را به روزرسانی ترغیب می کند. آنها هنوز هم می توانند در این میان از پسوند استفاده و پیکربندی مجدد کنند.

اگر هر نسخه از پسوند کاهش یابد ، پسوند در نظر گرفته می شود و از مرکز پسوند حذف می شود. بارگذاری نسخه جدیدی از یک پسوند مستهلک به طور خودکار یک بررسی را آغاز می کند و پس از پذیرش ، بار دیگر آن را در Hub Extensions منتشر کنید.

برای معکوس کردن استهلاک ، از داشبورد ناشر استفاده کنید ، یا ext:dev:undeprecate :

firebase ext:dev:undeprecate your_publisher_id/your_extension_id versions

پیوست: عیب یابی خطاهای ساخت

هنگامی که پسوند خود را بارگذاری می کنید ، Backend ابتدا کد منبع شما را با استفاده از فرآیند زیر می سازد:

  1. مخزن GitHub خود را کلون کرده و منبع مشخص شده منبع را بررسی می کند.

  2. وابستگی های NPM را با اجرای npm clean-install در هر دایرکتوری منبع عملکرد مشخص شده در extension.yaml sourceDirectory می کند.

    به موارد زیر توجه کنید:

    • هر پرونده package.json باید یک پرونده package-lock.json داشته باشد. برای اطلاعات بیشتر ، به NPM-CI مراجعه کنید.

    • اسکریپت های پس از نصب در هنگام نصب وابستگی اجرا نمی شوند. اگر ساخت کد منبع شما به اسکریپت های پس از نصب متکی است ، قبل از بارگذاری آن را دوباره اصلاح کنید.

  3. کد خود را با اجرای npm run build در هر فهرست منبع عملکرد مشخص شده در extension.yaml می سازد.

فقط فهرست اصلی پسوند شما در بسته فرمت نهایی که به اشتراک گذاشته می شود ذخیره می شود.

اگر هنگام بارگذاری پسوند خود خطایی ایجاد می کنید ، مراحل ساخت را به صورت محلی در یک دایرکتوری تازه تکرار کنید تا خطایی وجود نداشته باشد ، سپس دوباره بارگذاری کنید.