REST Resource: sites.versions

リソース: Version

Version は、サイトの表示方法を決定する構成と静的ファイルのコレクションです。

JSON 表現
{
  "name": string,
  "status": enum (VersionStatus),
  "config": {
    object (ServingConfig)
  },
  "labels": {
    string: string,
    ...
  },
  "createTime": string,
  "createUser": {
    object (ActingUser)
  },
  "finalizeTime": string,
  "finalizeUser": {
    object (ActingUser)
  },
  "deleteTime": string,
  "deleteUser": {
    object (ActingUser)
  },
  "fileCount": string,
  "versionBytes": string
}
フィールド
name

string

バージョンの完全修飾リソース名。形式は次のとおりです。

sites/SITE_ID/versions/VERSION_ID

この名前は、versions.create を呼び出したときにレスポンスの本文で提供されます。

status

enum (VersionStatus)

バージョンのデプロイ ステータス。

デプロイを成功させるには、versions.create を呼び出して新しいバージョン(CREATED ステータス)を作成し、バージョンに必要なすべてのファイルをアップロードしてから、バージョンを FINALIZED ステータスに更新します。

バージョンを 12 時間以上 CREATED 状態のままにすると、バージョンは自動的に ABANDONED としてマークされます。

versions.delete を呼び出して、バージョンのステータスを DELETED に変更することもできます。

config

object (ServingConfig)

サイトの動作に関する構成。この構成は firebase.json ファイル内にあります。

labels

map (key: string, value: string)

追加のメタデータやフィルタリングに使用されるラベル。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

createTime

string (Timestamp format)

出力専用。バージョンが作成された時刻。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

createUser

object (ActingUser)

出力専用。バージョンを作成したユーザーを示します。

finalizeTime

string (Timestamp format)

出力専用。バージョンが FINALIZED になった時刻。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

finalizeUser

object (ActingUser)

出力専用。バージョンを FINALIZED にしたユーザーを示します。

deleteTime

string (Timestamp format)

出力専用。バージョンが DELETED になった時刻。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

deleteUser

object (ActingUser)

出力専用。バージョンを DELETED にしたユーザーを示します。

fileCount

string (int64 format)

出力専用。バージョンに関連付けられているファイルの合計数。

この値は、バージョンが FINALIZED になった後に計算されます。

versionBytes

string (int64 format)

出力専用。バージョンに格納された合計バイト数。

この値は、バージョンが FINALIZED になった後に計算されます。

VersionStatus

特定のバージョンのデプロイ ライフサイクルにおける現在の既知のステータス。

列挙値
VERSION_STATUS_UNSPECIFIED デフォルトのステータス。意図的に使用しないでください。
CREATED バージョンは作成されており、コンテンツを現在バージョンに追加しています。
FINALIZED すべてのコンテンツがバージョンに追加され、バージョンは変更できなくなりました。
DELETED バージョンは削除されました。
ABANDONED バージョンは 12 時間以内に FINALIZED に更新されず、自動的に削除されました。
EXPIRED サイトで構成された保持バージョン数の制限を超過しているため、バージョンのコンテンツは削除するようにスケジュールされています。
CLONING 別のバージョンからこのバージョンのクローンを作成しています。すべてのコンテンツをまだコピー中です。

ServingConfig

サイトに送られてくるリクエストを、コンテンツを提供する前にどのようにルーティングして処理するかに関する構成。URL リクエストパスが構成内の指定された URL パターンと照合され、Hosting は特定の優先順位に従って該当する構成を適用します。

で確認できます。 <ph type="x-smartling-placeholder">
</ph>
JSON 表現
{
  "headers": [
    {
      object (Header)
    }
  ],
  "redirects": [
    {
      object (Redirect)
    }
  ],
  "rewrites": [
    {
      object (Rewrite)
    }
  ],
  "cleanUrls": boolean,
  "trailingSlashBehavior": enum (TrailingSlashBehavior),
  "i18n": {
    object (I18nConfig)
  }
}
フィールド
headers[]

object (Header)

オブジェクトの配列。各オブジェクトは URL パターンを指定します。この URL パターンがリクエスト URL パスと一致した場合、指定されたカスタム レスポンス ヘッダーを適用するよう Hosting がトリガーされます。

redirects[]

object (Redirect)

オブジェクトの配列(リダイレクト ルールと呼ばれます)。各ルールでは、リクエストの URL パスと一致した場合に、指定された宛先パスへのリダイレクトで Hosting の応答をトリガーする URL パターンを指定します。

rewrites[]

object (Rewrite)

オブジェクトの配列(リライトルールと呼ばれます)。各ルールで URL パターンを指定します。この URL パターンがリクエスト URL パスと一致した場合、指定された宛先 URL がサービスに提供されたかのように、Hosting の応答がトリガーされます。

cleanUrls

boolean

アップロードしたファイルからファイル拡張子を削除するかどうかを定義します。

trailingSlashBehavior

enum (TrailingSlashBehavior)

URL パスの末尾のスラッシュの処理方法を定義します。

i18n

object (I18nConfig)

省略可。i18n の書き換え動作を定義します。

Header は URL パターンを指定します。URL パターンがリクエスト URL パスと一致した場合、指定されたカスタム レスポンス ヘッダーを適用するよう Hosting がトリガーされます。

JSON 表現
{
  "headers": {
    string: string,
    ...
  },

  // Union field pattern can be only one of the following:
  "glob": string,
  "regex": string
  // End of list of possible types for union field pattern.
}
フィールド
headers

map (key: string, value: string)

必須。レスポンスに追加するヘッダー。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

共用体フィールド pattern
必須。このカスタム レスポンス ヘッダーを適用するかどうかを決定するために、リクエスト URL パスと照合する文字列 URL パターン。Bash スタイルの glob または RE2 正規表現のいずれかです。

pattern は次のいずれかになります。
glob

string

リクエスト URL パスと照合するユーザー指定の glob

regex

string

リクエスト URL パスと照合するユーザー指定の RE2 正規表現。

リダイレクト

Redirect では URL パターンを指定します。この URL パターンがリクエスト URL パスと一致した場合、指定された宛先パスへのリダイレクトで Hosting の応答がトリガーされます。

JSON 表現
{
  "statusCode": integer,
  "location": string,

  // Union field pattern can be only one of the following:
  "glob": string,
  "regex": string
  // End of list of possible types for union field pattern.
}
フィールド
statusCode

integer

必須。レスポンスで返すステータス HTTP コード。有効な 3xx ステータス コードでなければなりません。

location

string

必須。レスポンスの HTTP location ヘッダーに挿入する値。

ロケーションには、セグメントを識別するための : 接頭辞と、URL の残りの部分をキャプチャするためのオプションの * を使用して、パターンのキャプチャ グループ値を含めることができます。例:

"glob": "/:capture*",
"statusCode": 301,
"location": "https://example.com/foo/:capture"

共用体フィールド pattern
必須。このリダイレクトを適用するかどうかを決定するために、リクエスト URL パスと照合する文字列 URL パターン。Bash スタイルの glob または RE2 正規表現のいずれかです。

pattern は次のいずれかになります。
glob

string

リクエスト URL パスと照合するユーザー指定の glob

regex

string

リクエスト URL パスと照合するユーザー指定の RE2 正規表現。

書き換え

Rewrite では URL パターンを指定します。この URL パターンがリクエスト URL パスと一致した場合、指定された宛先 URL がサービスに提供されたかのように、Hosting の応答がトリガーされます。

JSON 表現
{
  "functionRegion": string,

  // Union field pattern can be only one of the following:
  "glob": string,
  "regex": string
  // End of list of possible types for union field pattern.

  // Union field behavior can be only one of the following:
  "path": string,
  "function": string,
  "run": {
    object (CloudRunRewrite)
  }
  // End of list of possible types for union field behavior.
}
フィールド
functionRegion

string

省略可。書き換えられた関数呼び出しの Cloud リージョンを指定します。指定しない場合、デフォルトで us-central1 が使用されます。

共用体フィールド pattern
必須。このリライトを適用するかどうかを決定するために、リクエスト URL パスと照合する文字列 URL パターン。Bash スタイルの glob または RE2 正規表現のいずれかです。

pattern は次のいずれかになります。
glob

string

リクエスト URL パスと照合するユーザー指定の glob

regex

string

リクエスト URL パスと照合するユーザー指定の RE2 正規表現。

共用体フィールド behavior
必須。リライトの動作。

behavior は次のいずれかになります。
path

string

リクエストの書き換え先の URL パス。

function

string

リクエストをプロキシする関数。エクスポートされた関数名と正確に一致しなければなりません。

run

object (CloudRunRewrite)

リクエストは Cloud Run に転送されます。

CloudRunRewrite

リクエストを Cloud Run サービスに転送するように構成された書き換え。Firebase Hosting の構成を設定または更新するときに、Cloud Run サービスが存在しないと、リクエストが失敗します。Cloud Run サービスからのエラーは、すべてエンドユーザーに渡されます(たとえば、サービスを削除した場合、そのサービスに対するすべてのリクエストは 404 エラーを受け取ります)。

JSON 表現
{
  "serviceId": string,
  "region": string,
  "tag": string
}
フィールド
serviceId

string

必須。ユーザー定義の Cloud Run サービスの ID。

region

string

省略可。Cloud Run サービスがホストされているリージョン。ユーザーが指定します。

指定しない場合のデフォルトは us-central1 です。

tag

string

省略可。トラフィック送信先のユーザー指定の TrafficConfig タグ。

省略すると、トラフィックはサービス全体の URI に送信されます。

TrailingSlashBehavior

リクエスト URL パスに末尾のスラッシュを追加するか削除するかを定義します。

列挙型
TRAILING_SLASH_BEHAVIOR_UNSPECIFIED

動作は指定されていません。

ファイルは正確な場所でのみ処理され、末尾のスラッシュはディレクトリ インデックスだけに追加されます。

ADD 末尾のスラッシュが、ディレクトリ インデックスだけでなく、ファイル拡張子で終わらない URL パスにも追加されます。
REMOVE 末尾のスラッシュが、ディレクトリ インデックスだけでなく、ファイル拡張子で終わらない URL パスからも削除されます。

I18nConfig

指定すると、i18n の書き換えが有効になります。

JSON 表現
{
  "root": string
}
フィールド
root

string

必須。国と言語に固有のコンテンツがパブリック ディレクトリ内で検索されるユーザー指定のパス。

メソッド

clone

指定したバージョンのコンテンツを使用して、指定したターゲット サイトに新しいバージョンを作成します。

create

指定したサイトの新しいバージョンを作成します。

delete

指定されたバージョンを削除します。

get

指定したサイト用に作成された、指定したバージョンを取得します。

list

指定したサイト用に作成されたバージョンを一覧表示します。

patch

指定されたバージョンの指定されたメタデータを更新します。

populateFiles

指定したバージョンにコンテンツ ファイルを追加します。