Uzantınızı yayınlayın

Bu sayfada, Extensions Hub'da uzantıları nasıl yayınlayabileceğiniz açıklanmaktadır.

Başlamadan önce

Bir uzantıyı yayınlamak için uzantı yayıncısı olarak kaydolmalıdır.

Doğrulanabilir kaynaklar

Extensions Hub'da yayınlanan tüm uzantıların, herkese açık olarak doğrulanabilir bir kaynak. Uzantı kaynak kodunuzu doğrudan Uzantılar'a yüklemek yerine Hub, bunun yerine kaynak konumunu belirtirsiniz. Extension Hub, kaynağı indirir işimize yarıyor.

Şu anda bu, uzantı kaynak kodunuzun herkese açık ve GitHub deposu.

Doğrulanabilir bir kaynaktan yüklemenin çeşitli avantajları vardır:

  • Kullanıcılar, uzantının ilgili düzeltmesinin kaynak kodunu inceleyebilir yüklenecek.
  • Yalnızca yüklemek istediğiniz içerikleri yüklediğinizden emin olabilirsiniz. veya geliştirme aşamasından kalan dosyaları saklamanız gerekebilir.
ziyaret edin.

Önerilen geliştirme döngüsü

Firebase Extensions geliştirme araçları, yayın öncesi sürümlerin yüklenmesini destekler Böylece, uzantılarınızı test etmenizi kolaylaştırır ve uzantıyı yükleme işlemini gerçekleştirecekleri ortamda piyasaya sürülecektir.

Bu olanak, aşağıdaki gibi bir geliştirme döngüsünü mümkün kılar:

  1. Firebase Emulator Suite.

  2. Uzantınızı yerel kaynaktan yükleyerek gerçek bir projede test edin:

    firebase ext:install /path/to/extension
    firebase deploy --only extensions
    
  3. Uzantı Merkezi'ne yayın öncesi bir sürüm yükleyin (aşağıya bakın). daha fazla test için yükleme bağlantısını tıklayın ve daha fazla yayın öncesi sürümlerini gerektiği şekilde düzenlemelisiniz.

  4. Uzantıların kararlı çalışan son sürümünü Uzantıları Merkezi'ne yükleyin (aşağıya bakın) ve gönderin gönderebilirsiniz. Uzantı incelemeyi geçerse şu tarihte yayınlanır: Uzantı Merkezi'ni tıklayın.

  5. Sürüm numarasını extension.yaml ile artır ve bu döngüyü tekrarla bir sonraki sürümü oluşturun.

Yeni uzantı yükleme

Bir uzantıyı ilk kez yüklemek için:

  1. İsteğe bağlı: Kodunuzu herkese açık bir GitHub deposuna kaydedin.

  2. Firebase CLI'ın ext:dev:upload komutunu çalıştırın:

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    Yerel kaynak

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

    Komut çağrınızda aşağıdakileri belirtirsiniz:

    • Kaydolduğunuz yayıncı kimliği.

    • Uzantıyı tanımlayan bir kimlik dizesi. Uzantılarınızı şununla adlandırın: şu biçimdedir: firebase-product-description-of-tasks-performed Örnek: firestore-bigquery-export

    Komut, ek bilgi sağlamanızı ister:

    • GitHub'dan yükleme yapıyorsanız:

      • Uzantının GitHub'daki deposunun URL'si. Not: depo, her bir uzantıya sahip olduğu sürece birden fazla uzantı bir kök oluşturacaksınız.

        İlk kez yeni bir uzantı yüklediğinizde kod deposu, Uzantınız için standart kaynak olarak kayıtlı olmalıdır.

      • Kod deposundaki, uzantınızı içeren dizin.

      • Uzantı sürümünüzü oluşturmak istediğiniz kaydetmenin Git referansı kaynak. Bu bir kaydetme karması, etiket veya dal adı olabilir.

    • Yüklediğiniz sürümün yayınlama aşaması.

      alpha, beta ve rc (yayın adayı) aşamaları yükleme içindir test kullanıcılarının yüklemesi için yayın öncesi sürümler. Aşağıdaki işlemler için bu aşamalardan birini kullanın: Yeni bir uzantının ilk kez yüklenmesidir.

      stable aşaması, yayınlanacak herkese açık yayınların yayınlanması için kullanılır. Uzantılar Merkezi'ni ziyaret edin. Bir stable sürümü yüklendiğinde otomatik olarak bir incelemesini yapar ve geçerse uzantıyı yayınlar.

    Bir sürüm numarası belirtmediğinizden emin olun. Bu değer, extension.yaml dosyası yükleyin. Yayın öncesi bir uzantı sürümünü yüklediğinizde aşama ve yükleme numarası sürüme eklenir. Örneğin, extension.yaml, 1.0.1 sürümünü belirtiyor ve bir sürüm adayı yüklüyorsanız 1.0.1-rc.0 sürümüyle sonuçlanır; başka bir yayın yükleme sayısını otomatik olarak artıracaktır. sonuç olarak 1.0.1-rc.1 vb.

Uzantının yayın öncesi sürümünü yüklediğinize göre başkalarıyla paylaşmalısınız. Kullanıcılar, uzantınızı iki yöntemden birinde yükleyebilir yöntemler:

  • Konsol ile: Kullanıcılar bir bağlantıyı tıklayarak uzantıyı yükleyebilir şu biçimle:

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

    Doğrudan bağlantıyı test kullanıcılarınızla paylaşabilirsiniz.

  • KSA ile: Kullanıcılar, uzantıyı ext:install komutundaki kimlik dizesi:

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

Güncellenmiş bir sürümü yükleyin

Bir uzantının ilk sürümünü yükledikten sonra güncellemeleri yükleyebilirsiniz. özellikleri ekleyin veya sürüm aşamasına ilerleyin. Yeni bir sürüm yüklediğinizde, web sitenizin eski bir sürümüne sahip olan kullanıcılar uzantı yüklendiğinde, Firebase konsolunda yeni sürüme geçmeniz istenir.

Güncelleme yüklemek için:

  1. İsteğe bağlı: Kodunuzu herkese açık bir Git deposuna kaydedin.

  2. Firebase CLI'ın ext:dev:upload komutunu çalıştırın:

    GitHub

    firebase ext:dev:upload your_publisher_id/your_extension_id
    

    Bu kez GitHub deposunu veya zaten yapılandırılmış olduğundan uzantı kök dizinini de kullanabilirsiniz. uzantısına sahip olur. Depo yapınızı yeniden düzenlediyseniz veya taşımak istiyorsanız bu komutla değiştirebilirsiniz --root ve --repo bağımsız değişkenleri.

    Yerel kaynak

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

Yayınlanmak üzere uzantı gönderme

Uzantınızı herkese açık olarak yayınlamaya hazır olduğunuzda:

  1. Kodunuzu herkese açık bir Git deposuna kaydedin. (Herkese açık sürümler için gereklidir.)

  2. Firebase CLI'ın ext:dev:upload komutunu çalıştırarak stable öğesini yayın aşaması:

    firebase ext:dev:upload your_publisher_id/your_extension_id
    
  3. Uzantınızın daha önce bir sürümünü yayınladıysanız yeni bir tane kararlı sürüm, uzantıyı otomatik olarak incelemeye gönderir.

    Uzantının ilk kararlı sürümünü yüklediyseniz uzantıyı yayıncı kontrol panelinizi ve Uzantılar Merkezi'nde yayınla'yı tıklayın.

Gönderilen incelemenin tamamlanması birkaç gün sürebilir. Uzantı kabul edilirse Uzantı Merkezi'nde yayınlandı. Reddedilirse neden; Ardından bildirilen sorunları giderebilir ve incelenmesi için yeniden gönderebilirsiniz.

İncelemeyi hızlandırmak ve ilk denemeyi geçme şansınızı artırmak için göndermeden önce aşağıdakileri bir kez daha kontrol edin:

  • Uzantınızı ve yükleme işlemini baştan sona test ettiniz.
  • Belgeleriniz eksiksiz, doğru ve Firebase'de iyi oluşturuluyor. konsolu.
  • Yayıncı adınız ve markanız sizi yayıncı olarak açık ve doğru bir şekilde tanıtır yayıncısına ait.
  • Uzantınızın adı, açıklaması ve simgesi açık ve doğru bir şekilde temsil eder Uzantınızın amacı.
  • Faydalı ve doğru etiketler uyguladınız.
  • Kullandığınız tüm Google ve Google dışı API'leri extension.yaml içinde beyan ettiniz, ve uzantınızın yayınladığı tüm etkinlik türlerini görebilirsiniz.
  • Yalnızca uzantının aşağıdakileri yapması için gerekli rollere erişim istiyorsunuz: ve kullanıcılara bu tür bir erişime neden ihtiyaç duyduğunuzu net bir şekilde açıkladınız.
  • Kaynak dosyalarınız, Apache-2.0 şartlarına göre açık bir şekilde lisanslanmıştır.

Yüklenen ve yayınlanan uzantıları yönetme

Yüklediğiniz uzantıları listeleme

Yayıncı kimliğiniz altında yüklediğiniz uzantıları listelemek için aşağıdakilerden birini yapın: takip etmek için:

Yayıncı kontrol paneli

Bunları yayıncı kontrol panelinde görüntüleyebilirsiniz.

Firebase CLI

ext:dev:list komutunu çalıştırın:

firebase ext:dev:list your_publisher_id

Yüklediğiniz uzantıların kullanımını görüntüleme

Yayıncı kimliğiniz altında yüklediğiniz uzantıların kullanımını görüntülemek için şunlardan biri:

Yayıncı kontrol paneli

Yayıncı kontrol panelinde tüm raporlarınız için kümülatif kullanım metrikleri bağımsız metrikleri kullanabilirsiniz.

Firebase CLI

ext:dev:usage komutunu çalıştırın:

firebase ext:dev:usage your_publisher_id

Bir uzantının sürümünü kullanımdan kaldırma

Bir noktada uzantınızın eski bir sürümünü kullanımdan kaldırmak isteyebilirsiniz. Örneğin, Örneğin, kritik bir hatayı düzelten veya önemli bir güvenlik güncellemesine bağlı olarak devam ederse, yeni alışkanlıklar kullanıcıların eski bir sürümü yüklemesini engelleyebilir ve mevcut kullanıcıları yeni sürüme geçmeye teşvik edebilir.

Bir uzantının sürümünü kullanımdan kaldırmak için aşağıdakilerden birini yapın:

Yayıncı kontrol paneli

  1. Yayıncı kontrol panelinde uzantıyı tıklayarak ayrıntılar görünümündedir.
  2. Kullanımdan kaldırmak istediğiniz sürümü seçin.
  3. Sürümü kullanımdan kaldır'ı tıklayın.

Firebase CLI

ext:dev:deprecate komutunu çalıştırın:

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

Tek bir sürüm veya sürüm aralığı belirtebilirsiniz. Örnekler:

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

Bir uzantının kullanımdan kaldırılmış sürümleri, Extensions Hub'da listelenmez ve yüklenmesi gerekir. Projelerinde desteği sonlandırılmış bir sürüm yüklü olan kullanıcılar yeni sürüme geçmeye teşvik eden bir mesaj yeniden yapılandırmaya devam edebilirler. uzatmış olacaksınız.

Bir uzantının her sürümü kullanımdan kaldırılırsa uzantı kabul edilir desteği sonlandırılmıştır ve Extensions Hub'da liste dışı bırakılacaktır. Yeni bir sürüm yükleniyor veya devre dışı bırakılmış bir uzantı, otomatik olarak inceleme başlatır ve Uzantı Merkezi'nde tekrar yayınlayın.

Kullanımdan kaldırma işlemini geri almak için yayıncı kontrol panelini kullanın veya Firebase CLI'yı ext:dev:undeprecate komutu:

firebase ext:dev:undeprecate your_publisher_id/your_extension_id versions

Ek: Yapı hatalarını giderme

Uzantınızı yüklediğinizde arka uç, önce şu süreç vardır:

  1. GitHub deponuzu klonlar ve belirtilen kaynak referansını kontrol eder.

  2. Her işlevde npm clean-install komutunu çalıştırarak NPM bağımlılıklarını yükler kaynak dizin extension.yaml içinde belirtilmiş (bkz. sourceDirectory) Cloud Functions işlevi kaynakları) tıklayın.

    Aşağıdakileri göz önünde bulundurun:

    • Her package.json dosyasına karşılık gelen bir package-lock.json olmalıdır dosyası olarak kaydedebilirsiniz. Daha fazla bilgi için npm-ci'ye bakın.

    • Yükleme sonrası komut dosyaları, bağımlılık yüklemesi sırasında çalıştırılmaz. Kaynak kodu derlemeniz yükleme sonrası komut dosyalarına dayanıyorsa yeniden düzenlemenizi öneririz.

  3. Her işlev kaynağında npm run build komutunu çalıştırarak kodunuzu oluşturur extension.yaml adresinde belirtilen dizin.

Son uzantıya yalnızca uzantınızın kök dizini kaydedilir paket ekleyebilirsiniz.

Uzantınızı yüklerken yapı hataları alırsanız derlemeyi çoğaltın yukarıdaki adımları yerel olarak yeni bir dizinde yeniden yükleyinceye kadar, hata oluştuktan sonra tekrar yükleniyor.