Uzantılar manifesti, uzantı örneklerinin ve bunların yapılandırmanın üç yolu vardır. Manifest ile şunları yapabilirsiniz:
- Uzantı yapılandırmanızı başkalarıyla paylaşma
- Uzantı yapılandırmanızı farklı projeler arasında kopyalayın (ör. hazırlık projenizi üretim projenize ekleyin)
- Tüm uzantılarınızı tek seferde dağıtın
- Firebase Local Emulator Suite kullanarak uzantılarınızın uygulamanızla nasıl çalıştığını test edin
- Uzantı yapılandırmanızı kaynak kontrolüne kaydedin
- CI/CD ardışık düzeninize uzantıları ekleme
Uzantı manifesti iki bölümden oluşur:
Örneğin haritası olan
firebase.json
etkinliğinizinextensions
bölümü Uzantı sürümü referansına kimlik. Örneğin:{ "extensions": { "my-bigquery-extension": "firebase/firestore-bigquery-export@^0.1.18", "my-image-resizer": "firebase/storage-resize-images@^0.1.22", } }
Her bir uzantınızın yapılandırmasını içeren
.env
dosya Örnekler: Firebase projenizinextensions/
alt dizininde bulabilirsiniz. dizin. Örneğin,storage-resize-images
öğesinin bir örneğinde aşağıdaki gibi bir.env
dosyası oluşturabilirsiniz:IMAGE_TYPE=jpeg LOCATION=us-central1 IMG_BUCKET=${param:PROJECT_ID}.appspot.com IMG_SIZES=100x100 DELETE_ORIGINAL_FILE=false
Uzantı manifesti oluşturma
Uzantı manifesti oluşturmanın üç yolu vardır:
- Uzantı manifestinizi Firebase CLI ile yönetme
- Projenin uzantı yapılandırmasını dışa aktarma
- Manifest dosyalarını manuel olarak düzenleyin
İlk iki yöntem aşağıda açıklanmıştır.
Uzantı manifestinizi Firebase CLI ile yönetme
Firebase CLI'ın ext:
komutlarının çoğunu --local
seçeneğiyle çalıştırabilirsiniz
projenin etiketini değiştirmeden uzantı manifestini
Mevcut yapılandırma.
Örneğin:
firebase ext:install --local firebase/firestore-bigquery-export
Yukarıdaki komutu çalıştırdığınızda Search Console'un en son sürümünü
firebase/firestore-bigquery-export
uzantısını seçin ve yapılandırmayı şuraya kaydedin:
ekler ancak yapılandırmayı projenize dağıtmaz.
Uzantıların manifest dosyasını değiştiren birkaç komut örneğini burada bulabilirsiniz:
# ext:configure changes the params for an extension instance in your extensions manifest
$ firebase ext:configure my-bigquery-extension --local
# ext:update --local updates an instance in your extensions manifest
# to the latest version of that extension
$ firebase ext:update my-bigquery-extension --local
# You can also specify a version if you don't want to update to the latest version
$ firebase ext:update my-bigquery-extension firebase/firestore-bigquery-export@0.1.10 --local
# ext:uninstall --local removes an instance from your extensions manifest
$ firebase ext:uninstall my-bigquery-extension --local
Projenin uzantı yapılandırmasını dışa aktarma
Bir projenin mevcut uzantı yapılandırmasını manifest dosyasına kaydetmek için takip etmek için:
- Henüz yapmadıysanız Firebase CLI'ı ayarlayın
- Kabuk isteminden proje dizinine geçiş yapın. (Projeniz
firebase.json
dosyasını içeren dizin). ext:export
komutunu çalıştırın:firebase ext:export
ext:export
komutu, firebase.json
öğesine bir extensions
bölümü ekler
dosyası olarak kaydedebilirsiniz. Ayrıca, ext:export
komutu bir extensions
dizini oluşturur
yüklediğiniz her uzantı örneği için bir .env
dosyası içerir. Bu
dosyaları, her örneğin yapılandırma parametrelerini içerir.
Uzantı yapılandırmasını Firebase Local Emulator Suite ile test edin
Uzantılar manifest dosyanıza bazı uzantı örnekleri ekledikten sonra Local Emulator Suite kullanarak test edebilirsiniz.
Local Emulator Suite uygulamasını başlatın:
- Emulator Suite'i etkileşimli olarak çalıştırmak için şu komutu çalıştırın:
firebase emulators:start
- Emulator Suite'i çalıştırmak ve bir test komut dosyası yürütmek için şu komutu çalıştırın:
firebase emulators:exec my-test.sh
- Emulator Suite'i etkileşimli olarak çalıştırmak için şu komutu çalıştırın:
Manifest'inizde listelenen uzantı örnekleri varsa
Local Emulator Suite, bu uzantıların kaynak kodunu şuraya indirecek:
~/.cache/firebase/extensions
. İndirildikten sonra
Local Emulator Suite başlatılacak ve aşağıdakileri tetikleyebileceksiniz.
uzantıları arka planda tetiklenen işlevler ve uygulamanızı Emülatöre bağlayın
paketine bakın.
Projeye uzantı yapılandırması dağıtma
Uzantı manifestinize birkaç uzantı örnekleri ekledikten sonra, Firebase CLI kullanarak bir projeye dağıtabilirsiniz. uzantıları manifest'ini açtığınızda, tüm uzantıları yükler, günceller ve örneklerinden birini tek seferde bir projeye uygular.
Uzantıların manifestini dağıtmak için:
- Bir kabuk isteminden,
yapılandırma. (Bu,
firebase.json
Az önceext:export
koştuysanız zaten doğru yerdesiniz dizinine ekleyin.) deploy
komutunu çalıştırın. Uzantıları bir projeye dağıtmak istiyorsanız geçerli olanın dışında--project=
değerini de belirtin:firebase deploy --only extensions –-project=YOUR_PROJECT_ID
deploy
komutu, her örnek yapılandırmasını doğrular. isteyip istemediğinizi sorun
istediğiniz uzantı örneklerini hedef projenizden silin:
ve ardından tüm uzantı örneklerinizi dağıtın.firebase.json
Projeye özel uzantı yapılandırmaları
Kayıtlı uzantı yapılandırmaları, birden fazla farklı uygulamaya dağıtım yapmak için kullanılabilir.
Bunlar bir hazırlık projesi ve üretim projesi gibi. Bunu yaparken
Bu nedenle, bazı parametre değerlerinin her proje için farklı olması gerekebilir.
Projeye özel .env
dosyaları bunu mümkün kılar:
extensions/EXTENSION_INSTANCE_ID.env.YOUR_PROJECT_ID
projesindeki projeler arasında farklı olan parametre değerleri girin- Paylaşılan parametre değerlerini
extensions/EXTENSION_INSTANCE_ID.env
bölümüne girin.
Bazen,
uzantılar: Örneğin, bir URL yerine bir test API anahtarı
üretim birincisi. Bu parametreleri bir .local
dosyasına yerleştirin:
- Emülasyon sırasında kullanmak istediğiniz gizli olmayan parametreleri
extensions/EXTENSION_INSTANCE_ID.env.local
- Gizli anahtar parametre değerlerini
extensions/EXTENSION_INSTANCE_ID.secret.local