From e1455ff3155b8369e534c56815e80f60fd99e457 Mon Sep 17 00:00:00 2001 From: Daniel Young Lee Date: Fri, 22 Nov 2024 15:09:07 -0800 Subject: [PATCH 1/7] Add GitHub action to autogenerate ref docs on commut to master. --- .github/workflows/docs.yaml | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 .github/workflows/docs.yaml diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml new file mode 100644 index 000000000..c0c8bbfa5 --- /dev/null +++ b/.github/workflows/docs.yaml @@ -0,0 +1,33 @@ +name: docs + +on: + push: + branches: + - main + +jobs: + docs: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v1 + - uses: actions/setup-node@v1 + with: + node-version: "20" + - name: Cache npm + uses: actions/cache@v1 + with: + path: ~/.npm + key: ${{ runner.os }}-docgen-${{ hashFiles('**/package-lock.json') }} + - name: Install dependencies + run: npm ci + - name: Generate Reference Docs + run: | + npm run docgen:v1 + npm run docgen:v2 + - uses: actions/upload-artifact@v3 + name: Upload Docs Preview + with: + name: reference-docs + path: | + ./docgen/v1/markdown/ + ./docgen/v2/markdown/ From 2e0cd4dbc0d97f765c55cc7327258f06eddac284 Mon Sep 17 00:00:00 2001 From: Daniel Young Lee Date: Fri, 22 Nov 2024 15:10:14 -0800 Subject: [PATCH 2/7] Temporarily run doc gen workflow on PRs. --- .github/workflows/docs.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index c0c8bbfa5..4d2541ba5 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -2,8 +2,9 @@ name: docs on: push: + pull_request: branches: - - main + - master jobs: docs: From 3976e7f3bf1d6820ae6df058c07bf5c8ceaee703 Mon Sep 17 00:00:00 2001 From: Daniel Young Lee Date: Fri, 22 Nov 2024 15:11:57 -0800 Subject: [PATCH 3/7] Actually allow action to run on PRs. --- .github/workflows/docs.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 4d2541ba5..c6991d5f4 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -1,8 +1,8 @@ -name: docs +name: Docgen on: + pull_request: push: - pull_request: branches: - master From 72a3a1430ec7bf11e1b958c9f7022667a7bcb7a1 Mon Sep 17 00:00:00 2001 From: Daniel Young Lee Date: Fri, 22 Nov 2024 15:15:16 -0800 Subject: [PATCH 4/7] Update version of actions/cache to use undepreacted version. --- .github/workflows/docs.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index c6991d5f4..94b06b725 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -15,7 +15,7 @@ jobs: with: node-version: "20" - name: Cache npm - uses: actions/cache@v1 + uses: actions/cache@v4 with: path: ~/.npm key: ${{ runner.os }}-docgen-${{ hashFiles('**/package-lock.json') }} From 815385c24a3f9982fe2d151bf9a2a3e598a3ee9e Mon Sep 17 00:00:00 2001 From: Daniel Young Lee Date: Fri, 22 Nov 2024 15:18:20 -0800 Subject: [PATCH 5/7] Update versions of all actions. --- .github/workflows/docs.yaml | 6 +-- integration_test/functions/src/index.ts | 53 +++---------------- integration_test/functions/src/testing.ts | 2 +- .../functions/src/v1/auth-tests.ts | 2 +- .../functions/src/v1/database-tests.ts | 2 +- .../functions/src/v1/firestore-tests.ts | 2 +- .../functions/src/v1/https-tests.ts | 2 +- integration_test/functions/src/v1/index.ts | 7 ++- .../functions/src/v1/pubsub-tests.ts | 2 +- .../functions/src/v1/remoteConfig-tests.ts | 2 +- .../functions/src/v1/storage-tests.ts | 2 +- .../functions/src/v1/testLab-tests.ts | 2 +- integration_test/functions/src/v2/index.ts | 2 +- integration_test/run_tests.sh | 6 +-- 14 files changed, 25 insertions(+), 67 deletions(-) diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 94b06b725..920d10009 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -10,8 +10,8 @@ jobs: docs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v1 - - uses: actions/setup-node@v1 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: "20" - name: Cache npm @@ -25,7 +25,7 @@ jobs: run: | npm run docgen:v1 npm run docgen:v2 - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 name: Upload Docs Preview with: name: reference-docs diff --git a/integration_test/functions/src/index.ts b/integration_test/functions/src/index.ts index 623b690c7..a112e6237 100644 --- a/integration_test/functions/src/index.ts +++ b/integration_test/functions/src/index.ts @@ -1,8 +1,7 @@ import { PubSub } from "@google-cloud/pubsub"; -import { GoogleAuth } from "google-auth-library"; import { Request, Response } from "express"; import * as admin from "firebase-admin"; -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; import * as fs from "fs"; import fetch from "node-fetch"; @@ -20,55 +19,17 @@ import * as testLab from "./v1/testLab-utils"; const firebaseConfig = JSON.parse(process.env.FIREBASE_CONFIG); admin.initializeApp(); -// Re-enable no-unused-var check once callable functions are testable again. -// eslint-disable-next-line @typescript-eslint/no-unused-vars async function callHttpsTrigger(name: string, data: any) { const url = `https://${REGION}-${firebaseConfig.projectId}.cloudfunctions.net/${name}`; - const client = await new GoogleAuth().getIdTokenClient("32555940559.apps.googleusercontent.com"); - const resp = await client.request({ - url, + const resp = await fetch(url, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ data }), }); - if (resp.status > 200) { - throw Error(resp.statusText); - } -} - -// Re-enable no-unused-var check once callable functions are testable again. -// eslint-disable-next-line @typescript-eslint/no-unused-vars -async function callV2HttpsTrigger(name: string, data: any, accessToken: string) { - const getFnResp = await fetch( - `https://cloudfunctions.googleapis.com/v2beta/projects/${firebaseConfig.projectId}/locations/${REGION}/functions/${name}`, - { - headers: { - Authorization: `Bearer ${accessToken}`, - }, - } - ); - if (!getFnResp.ok) { - throw new Error(getFnResp.statusText); - } - const fn = await getFnResp.json(); - const uri = fn.serviceConfig?.uri; - if (!uri) { - throw new Error(`Cannot call v2 https trigger ${name} - no uri found`); - } - - const client = await new GoogleAuth().getIdTokenClient("32555940559.apps.googleusercontent.com"); - const invokeFnREsp = await client.request({ - url: uri, - method: "POST", - headers: { - "Content-Type": "application/json", - }, - body: JSON.stringify({ data }), - }); - if (invokeFnREsp.status > 200) { - throw Error(invokeFnREsp.statusText); + if (!resp.ok) { + throw new Error(`Failed request with status ${resp.status}!`); } } @@ -150,8 +111,7 @@ function v1Tests(testId: string, accessToken: string): Array> { // A firestore write to trigger the Cloud Firestore tests. admin.firestore().collection("tests").doc(testId).set({ test: testId }), // Invoke a callable HTTPS trigger. - // TODO: Temporarily disable - doesn't work unless running on projects w/ permission to create public functions. - // callHttpsTrigger("v1-callableTests", { foo: "bar", testId }), + callHttpsTrigger("v1-callableTests", { foo: "bar", testId }), // A Remote Config update to trigger the Remote Config tests. updateRemoteConfig(testId, accessToken), // A storage upload to trigger the Storage tests @@ -169,8 +129,7 @@ function v1Tests(testId: string, accessToken: string): Array> { function v2Tests(testId: string, accessToken: string): Array> { return [ // Invoke a callable HTTPS trigger. - // TODO: Temporarily disable - doesn't work unless running on projects w/ permission to create public functions. - // callV2HttpsTrigger("v2-callabletests", { foo: "bar", testId }, accessToken), + callHttpsTrigger("v2-callabletests", { foo: "bar", testId }), // Invoke a scheduled trigger. callV2ScheduleTrigger("v2-schedule", "us-central1", accessToken), ]; diff --git a/integration_test/functions/src/testing.ts b/integration_test/functions/src/testing.ts index 156e94242..de31a60f5 100644 --- a/integration_test/functions/src/testing.ts +++ b/integration_test/functions/src/testing.ts @@ -1,5 +1,5 @@ import * as firebase from "firebase-admin"; -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; export type TestCase = (data: T, context?: functions.EventContext) => any; export interface TestCaseMap { diff --git a/integration_test/functions/src/v1/auth-tests.ts b/integration_test/functions/src/v1/auth-tests.ts index 5d1b6188a..ed930d236 100644 --- a/integration_test/functions/src/v1/auth-tests.ts +++ b/integration_test/functions/src/v1/auth-tests.ts @@ -1,5 +1,5 @@ import * as admin from "firebase-admin"; -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; import UserMetadata = admin.auth.UserRecord; diff --git a/integration_test/functions/src/v1/database-tests.ts b/integration_test/functions/src/v1/database-tests.ts index df9d3cdd2..222f042de 100644 --- a/integration_test/functions/src/v1/database-tests.ts +++ b/integration_test/functions/src/v1/database-tests.ts @@ -1,5 +1,5 @@ import * as admin from "firebase-admin"; -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; import { REGION } from "../region"; import { expectEq, expectMatches, TestSuite } from "../testing"; import DataSnapshot = admin.database.DataSnapshot; diff --git a/integration_test/functions/src/v1/firestore-tests.ts b/integration_test/functions/src/v1/firestore-tests.ts index b986ca06a..d144bcc5d 100644 --- a/integration_test/functions/src/v1/firestore-tests.ts +++ b/integration_test/functions/src/v1/firestore-tests.ts @@ -1,5 +1,5 @@ import * as admin from "firebase-admin"; -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; import { REGION } from "../region"; import { expectDeepEq, expectEq, TestSuite } from "../testing"; import DocumentSnapshot = admin.firestore.DocumentSnapshot; diff --git a/integration_test/functions/src/v1/https-tests.ts b/integration_test/functions/src/v1/https-tests.ts index 5a74a1903..200fa7c7f 100644 --- a/integration_test/functions/src/v1/https-tests.ts +++ b/integration_test/functions/src/v1/https-tests.ts @@ -1,4 +1,4 @@ -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; diff --git a/integration_test/functions/src/v1/index.ts b/integration_test/functions/src/v1/index.ts index 0a1a2a35f..9af72bf41 100644 --- a/integration_test/functions/src/v1/index.ts +++ b/integration_test/functions/src/v1/index.ts @@ -2,8 +2,7 @@ export * from "./pubsub-tests"; export * from "./database-tests"; export * from "./auth-tests"; export * from "./firestore-tests"; -// Temporarily disable http test - will not work unless running on projects w/ permission to create public functions. -// export * from "./https-tests"; -export * from "./remoteConfig-tests"; +export * from "./https-tests"; +// export * from "./remoteConfig-tests"; export * from "./storage-tests"; -export * from "./testLab-tests"; +// export * from "./testLab-tests"; diff --git a/integration_test/functions/src/v1/pubsub-tests.ts b/integration_test/functions/src/v1/pubsub-tests.ts index 152ad7b6a..420803fce 100644 --- a/integration_test/functions/src/v1/pubsub-tests.ts +++ b/integration_test/functions/src/v1/pubsub-tests.ts @@ -1,5 +1,5 @@ import * as admin from "firebase-admin"; -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; import { REGION } from "../region"; import { evaluate, expectEq, success, TestSuite } from "../testing"; import PubsubMessage = functions.pubsub.Message; diff --git a/integration_test/functions/src/v1/remoteConfig-tests.ts b/integration_test/functions/src/v1/remoteConfig-tests.ts index 416621774..e7f883298 100644 --- a/integration_test/functions/src/v1/remoteConfig-tests.ts +++ b/integration_test/functions/src/v1/remoteConfig-tests.ts @@ -1,4 +1,4 @@ -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; import TemplateVersion = functions.remoteConfig.TemplateVersion; diff --git a/integration_test/functions/src/v1/storage-tests.ts b/integration_test/functions/src/v1/storage-tests.ts index 6819c7a2a..d06f0e0e9 100644 --- a/integration_test/functions/src/v1/storage-tests.ts +++ b/integration_test/functions/src/v1/storage-tests.ts @@ -1,4 +1,4 @@ -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; import ObjectMetadata = functions.storage.ObjectMetadata; diff --git a/integration_test/functions/src/v1/testLab-tests.ts b/integration_test/functions/src/v1/testLab-tests.ts index 242cd21f6..d4b4c7f31 100644 --- a/integration_test/functions/src/v1/testLab-tests.ts +++ b/integration_test/functions/src/v1/testLab-tests.ts @@ -1,4 +1,4 @@ -import * as functions from "firebase-functions"; +import * as functions from "firebase-functions/v1"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; import TestMatrix = functions.testLab.TestMatrix; diff --git a/integration_test/functions/src/v2/index.ts b/integration_test/functions/src/v2/index.ts index 38cde5f92..d14c6bd91 100644 --- a/integration_test/functions/src/v2/index.ts +++ b/integration_test/functions/src/v2/index.ts @@ -3,5 +3,5 @@ import { REGION } from "../region"; setGlobalOptions({ region: REGION }); // TODO: Temporarily disable - doesn't work unless running on projects w/ permission to create public functions. -// export * from './https-tests'; +export * from "./https-tests"; export * from "./scheduled-tests"; diff --git a/integration_test/run_tests.sh b/integration_test/run_tests.sh index 681d2dc1e..17c6c3866 100755 --- a/integration_test/run_tests.sh +++ b/integration_test/run_tests.sh @@ -12,7 +12,7 @@ if [[ "${PROJECT_ID}" == "" ]]; then fi # Directory where this script lives. -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" function announce { echo -e "\n\n##### $1" @@ -92,8 +92,8 @@ function cleanup { build_sdk delete_all_functions -for version in 14 16; do - create_package_json $TIMESTAMP $version "^10.0.0" +for version in 20; do + create_package_json $TIMESTAMP $version "^13.0.0" install_deps announce "Re-deploying the same functions to Node $version runtime ..." deploy From 4ce7d7cd0c38029d47b51172c48bc2da5c96e5fa Mon Sep 17 00:00:00 2001 From: Daniel Young Lee Date: Fri, 22 Nov 2024 15:22:14 -0800 Subject: [PATCH 6/7] Revert unintended changes to integration tests. --- integration_test/functions/src/index.ts | 53 ++++++++++++++++--- integration_test/functions/src/testing.ts | 2 +- .../functions/src/v1/auth-tests.ts | 2 +- .../functions/src/v1/database-tests.ts | 2 +- .../functions/src/v1/firestore-tests.ts | 2 +- .../functions/src/v1/https-tests.ts | 2 +- integration_test/functions/src/v1/index.ts | 7 +-- .../functions/src/v1/pubsub-tests.ts | 2 +- .../functions/src/v1/remoteConfig-tests.ts | 2 +- .../functions/src/v1/storage-tests.ts | 2 +- .../functions/src/v1/testLab-tests.ts | 2 +- integration_test/functions/src/v2/index.ts | 2 +- integration_test/run_tests.sh | 6 +-- 13 files changed, 64 insertions(+), 22 deletions(-) diff --git a/integration_test/functions/src/index.ts b/integration_test/functions/src/index.ts index a112e6237..623b690c7 100644 --- a/integration_test/functions/src/index.ts +++ b/integration_test/functions/src/index.ts @@ -1,7 +1,8 @@ import { PubSub } from "@google-cloud/pubsub"; +import { GoogleAuth } from "google-auth-library"; import { Request, Response } from "express"; import * as admin from "firebase-admin"; -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; import * as fs from "fs"; import fetch from "node-fetch"; @@ -19,17 +20,55 @@ import * as testLab from "./v1/testLab-utils"; const firebaseConfig = JSON.parse(process.env.FIREBASE_CONFIG); admin.initializeApp(); +// Re-enable no-unused-var check once callable functions are testable again. +// eslint-disable-next-line @typescript-eslint/no-unused-vars async function callHttpsTrigger(name: string, data: any) { const url = `https://${REGION}-${firebaseConfig.projectId}.cloudfunctions.net/${name}`; - const resp = await fetch(url, { + const client = await new GoogleAuth().getIdTokenClient("32555940559.apps.googleusercontent.com"); + const resp = await client.request({ + url, method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ data }), }); - if (!resp.ok) { - throw new Error(`Failed request with status ${resp.status}!`); + if (resp.status > 200) { + throw Error(resp.statusText); + } +} + +// Re-enable no-unused-var check once callable functions are testable again. +// eslint-disable-next-line @typescript-eslint/no-unused-vars +async function callV2HttpsTrigger(name: string, data: any, accessToken: string) { + const getFnResp = await fetch( + `https://cloudfunctions.googleapis.com/v2beta/projects/${firebaseConfig.projectId}/locations/${REGION}/functions/${name}`, + { + headers: { + Authorization: `Bearer ${accessToken}`, + }, + } + ); + if (!getFnResp.ok) { + throw new Error(getFnResp.statusText); + } + const fn = await getFnResp.json(); + const uri = fn.serviceConfig?.uri; + if (!uri) { + throw new Error(`Cannot call v2 https trigger ${name} - no uri found`); + } + + const client = await new GoogleAuth().getIdTokenClient("32555940559.apps.googleusercontent.com"); + const invokeFnREsp = await client.request({ + url: uri, + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify({ data }), + }); + if (invokeFnREsp.status > 200) { + throw Error(invokeFnREsp.statusText); } } @@ -111,7 +150,8 @@ function v1Tests(testId: string, accessToken: string): Array> { // A firestore write to trigger the Cloud Firestore tests. admin.firestore().collection("tests").doc(testId).set({ test: testId }), // Invoke a callable HTTPS trigger. - callHttpsTrigger("v1-callableTests", { foo: "bar", testId }), + // TODO: Temporarily disable - doesn't work unless running on projects w/ permission to create public functions. + // callHttpsTrigger("v1-callableTests", { foo: "bar", testId }), // A Remote Config update to trigger the Remote Config tests. updateRemoteConfig(testId, accessToken), // A storage upload to trigger the Storage tests @@ -129,7 +169,8 @@ function v1Tests(testId: string, accessToken: string): Array> { function v2Tests(testId: string, accessToken: string): Array> { return [ // Invoke a callable HTTPS trigger. - callHttpsTrigger("v2-callabletests", { foo: "bar", testId }), + // TODO: Temporarily disable - doesn't work unless running on projects w/ permission to create public functions. + // callV2HttpsTrigger("v2-callabletests", { foo: "bar", testId }, accessToken), // Invoke a scheduled trigger. callV2ScheduleTrigger("v2-schedule", "us-central1", accessToken), ]; diff --git a/integration_test/functions/src/testing.ts b/integration_test/functions/src/testing.ts index de31a60f5..156e94242 100644 --- a/integration_test/functions/src/testing.ts +++ b/integration_test/functions/src/testing.ts @@ -1,5 +1,5 @@ import * as firebase from "firebase-admin"; -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; export type TestCase = (data: T, context?: functions.EventContext) => any; export interface TestCaseMap { diff --git a/integration_test/functions/src/v1/auth-tests.ts b/integration_test/functions/src/v1/auth-tests.ts index ed930d236..5d1b6188a 100644 --- a/integration_test/functions/src/v1/auth-tests.ts +++ b/integration_test/functions/src/v1/auth-tests.ts @@ -1,5 +1,5 @@ import * as admin from "firebase-admin"; -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; import UserMetadata = admin.auth.UserRecord; diff --git a/integration_test/functions/src/v1/database-tests.ts b/integration_test/functions/src/v1/database-tests.ts index 222f042de..df9d3cdd2 100644 --- a/integration_test/functions/src/v1/database-tests.ts +++ b/integration_test/functions/src/v1/database-tests.ts @@ -1,5 +1,5 @@ import * as admin from "firebase-admin"; -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; import { REGION } from "../region"; import { expectEq, expectMatches, TestSuite } from "../testing"; import DataSnapshot = admin.database.DataSnapshot; diff --git a/integration_test/functions/src/v1/firestore-tests.ts b/integration_test/functions/src/v1/firestore-tests.ts index d144bcc5d..b986ca06a 100644 --- a/integration_test/functions/src/v1/firestore-tests.ts +++ b/integration_test/functions/src/v1/firestore-tests.ts @@ -1,5 +1,5 @@ import * as admin from "firebase-admin"; -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; import { REGION } from "../region"; import { expectDeepEq, expectEq, TestSuite } from "../testing"; import DocumentSnapshot = admin.firestore.DocumentSnapshot; diff --git a/integration_test/functions/src/v1/https-tests.ts b/integration_test/functions/src/v1/https-tests.ts index 200fa7c7f..5a74a1903 100644 --- a/integration_test/functions/src/v1/https-tests.ts +++ b/integration_test/functions/src/v1/https-tests.ts @@ -1,4 +1,4 @@ -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; diff --git a/integration_test/functions/src/v1/index.ts b/integration_test/functions/src/v1/index.ts index 9af72bf41..0a1a2a35f 100644 --- a/integration_test/functions/src/v1/index.ts +++ b/integration_test/functions/src/v1/index.ts @@ -2,7 +2,8 @@ export * from "./pubsub-tests"; export * from "./database-tests"; export * from "./auth-tests"; export * from "./firestore-tests"; -export * from "./https-tests"; -// export * from "./remoteConfig-tests"; +// Temporarily disable http test - will not work unless running on projects w/ permission to create public functions. +// export * from "./https-tests"; +export * from "./remoteConfig-tests"; export * from "./storage-tests"; -// export * from "./testLab-tests"; +export * from "./testLab-tests"; diff --git a/integration_test/functions/src/v1/pubsub-tests.ts b/integration_test/functions/src/v1/pubsub-tests.ts index 420803fce..152ad7b6a 100644 --- a/integration_test/functions/src/v1/pubsub-tests.ts +++ b/integration_test/functions/src/v1/pubsub-tests.ts @@ -1,5 +1,5 @@ import * as admin from "firebase-admin"; -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; import { REGION } from "../region"; import { evaluate, expectEq, success, TestSuite } from "../testing"; import PubsubMessage = functions.pubsub.Message; diff --git a/integration_test/functions/src/v1/remoteConfig-tests.ts b/integration_test/functions/src/v1/remoteConfig-tests.ts index e7f883298..416621774 100644 --- a/integration_test/functions/src/v1/remoteConfig-tests.ts +++ b/integration_test/functions/src/v1/remoteConfig-tests.ts @@ -1,4 +1,4 @@ -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; import TemplateVersion = functions.remoteConfig.TemplateVersion; diff --git a/integration_test/functions/src/v1/storage-tests.ts b/integration_test/functions/src/v1/storage-tests.ts index d06f0e0e9..6819c7a2a 100644 --- a/integration_test/functions/src/v1/storage-tests.ts +++ b/integration_test/functions/src/v1/storage-tests.ts @@ -1,4 +1,4 @@ -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; import ObjectMetadata = functions.storage.ObjectMetadata; diff --git a/integration_test/functions/src/v1/testLab-tests.ts b/integration_test/functions/src/v1/testLab-tests.ts index d4b4c7f31..242cd21f6 100644 --- a/integration_test/functions/src/v1/testLab-tests.ts +++ b/integration_test/functions/src/v1/testLab-tests.ts @@ -1,4 +1,4 @@ -import * as functions from "firebase-functions/v1"; +import * as functions from "firebase-functions"; import { REGION } from "../region"; import { expectEq, TestSuite } from "../testing"; import TestMatrix = functions.testLab.TestMatrix; diff --git a/integration_test/functions/src/v2/index.ts b/integration_test/functions/src/v2/index.ts index d14c6bd91..38cde5f92 100644 --- a/integration_test/functions/src/v2/index.ts +++ b/integration_test/functions/src/v2/index.ts @@ -3,5 +3,5 @@ import { REGION } from "../region"; setGlobalOptions({ region: REGION }); // TODO: Temporarily disable - doesn't work unless running on projects w/ permission to create public functions. -export * from "./https-tests"; +// export * from './https-tests'; export * from "./scheduled-tests"; diff --git a/integration_test/run_tests.sh b/integration_test/run_tests.sh index 17c6c3866..681d2dc1e 100755 --- a/integration_test/run_tests.sh +++ b/integration_test/run_tests.sh @@ -12,7 +12,7 @@ if [[ "${PROJECT_ID}" == "" ]]; then fi # Directory where this script lives. -DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" function announce { echo -e "\n\n##### $1" @@ -92,8 +92,8 @@ function cleanup { build_sdk delete_all_functions -for version in 20; do - create_package_json $TIMESTAMP $version "^13.0.0" +for version in 14 16; do + create_package_json $TIMESTAMP $version "^10.0.0" install_deps announce "Re-deploying the same functions to Node $version runtime ..." deploy From 779ae83d4f0181c71025a788db641aea1d420ae0 Mon Sep 17 00:00:00 2001 From: Daniel Young Lee Date: Fri, 22 Nov 2024 15:22:36 -0800 Subject: [PATCH 7/7] Only run docgen flow on master commits. --- .github/workflows/docs.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 920d10009..9ccb3a826 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -1,7 +1,6 @@ name: Docgen on: - pull_request: push: branches: - master