Cloud Functions for Firebaseデプロイ時のChange of function trigger type or event provider is not allowedを解決する
HTTPSリクエストトリガーとして定義していた関数を、PubSubスケジュールトリガーとしてデプロイしようとした際に発生しました。
// before export const helloWorld = functions .https .onRequest((request, response) => { response.send("Hello from Firebase!"); });
// after export const helloWorld = functions .pubsub .schedule('every day 03:00') .timezone('Asia/Tokyo') .onCall((context) => { console.log("Hello from Firebase!"); });
$ firebase deploy --only functions ... HTTP Error: 400, Change of function trigger type or event provider is not allowed ...
解決方法
対象の関数を削除し、再度デプロイすると、問題なくデプロイできます。
# 関数の削除 ( HTTPSリクエストトリガー ) $ firebase functions:delete helloWorld # 関数のデプロイ ( PubSubスケジュールトリガー ) $ firebase deploy --only functions:helloWorld