Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Cloud Functions for Firebase デプロイ時の`HTTP Error: 400, Change of function trigger type or event provider is not allowed`

More than 1 year has passed since last update.

経緯

HTTPSリクエストトリガーとして定義していた関数を、PubSubスケジュールトリガーとしてデプロイしようとした際に発生しました。

index.ts
// before
export const helloWorld = functions
  .https
  .onRequest((request, response) => {
    response.send("Hello from Firebase!");
  });
index.ts
// 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
shootacean
ある事業会社の中のWEB系部署で働いているプログラマーです。 最近は オンプレサーバーのクラウド移行プロジェクトを担当しているので、AWSを触りまくっています。
https://shootacean.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away