MongoDb scheduled trigger with googleapis

49 Views Asked by At

I want to schedule a trigger to run once a week to pull in our latest videos from youtube and store them in a collection. I was using the API but it has a limit of 10 000. I want t in mongo so I can get more requests and have an easier way to filter. I have the googleapis/youtube dependency installed on mongo and below is my code.

exports = async function() {
    const googleapis = require("@googleapis/youtube");
 const youtube = googleapis.youtube('v3');
  
      const channelId = 'channelId';
      const playlistId = 'playlistId';

      const videos = await youtube.playlistItems.list({
          key: 'key',
          part: 'snippet,id',
          playlistId
      });
       console.log(videos)

      // for (const video of videos.data.items) {
      //   console.log(video.snippet.title);
      // }
   
};

The above snippet works fine when I run it locally in my own node project. When I run it in mongo DB trigger I get the errors shown below.

failed to execute source for 'node_modules/@googleapis/youtube/build/index.js': FunctionError: failed to execute source for 'node_modules/googleapis-common/build/src/index.js': FunctionError: failed to execute source for 'node_modules/google-auth-library/build/src/index.js': FunctionError: failed to execute source for 'node_modules/google-auth-library/build/src/auth/googleauth.js': FunctionError: failed to execute source for 'node_modules/gcp-metadata/build/src/index.js': FunctionError: failed to execute source for 'node_modules/gaxios/build/src/index.js': FunctionError: failed to execute source for 'node_modules/gaxios/build/src/gaxios.js': FunctionError: failed to execute source for 'node_modules/node-fetch/lib/index.js': FunctionError: failed to execute source for 'node_modules/node-fetch/node_modules/whatwg-url/lib/public-api.js': FunctionError: failed to execute source for 'node_modules/node-fetch/node_modules/whatwg-url/lib/URL.js': FunctionError: failed to execute source for 'node_modules/webidl-conversions/lib/index.js': ReferenceError: 'BigInt' is not defined
    at createLongLongConversion (node_modules/webidl-conversions/lib/index.js:141:47(19))
    at node_modules/webidl-conversions/lib/index.js:207:48(106)
    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/URL.js:11:19(13)
    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/public-api.js:11:15(12)
    at require (native)
    at node_modules/node-fetch/lib/index.js:26:33(107)
    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/URL.js:11:19(13)
    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/public-api.js:11:15(12)
    at require (native)
    at node_modules/node-fetch/lib/index.js:26:33(107)
    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/public-api.js:11:15(12)
    at require (native)
    at node_modules/node-fetch/lib/index.js:26:33(107)
    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/node-fetch/lib/index.js:26:33(107)
    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

> trace: 
FunctionError: failed to execute source for 'node_modules/@googleapis/youtube/build/index.js': FunctionError: failed to execute source for 'node_modules/googleapis-common/build/src/index.js': FunctionError: failed to execute source for 'node_modules/google-auth-library/build/src/index.js': FunctionError: failed to execute source for 'node_modules/google-auth-library/build/src/auth/googleauth.js': FunctionError: failed to execute source for 'node_modules/gcp-metadata/build/src/index.js': FunctionError: failed to execute source for 'node_modules/gaxios/build/src/index.js': FunctionError: failed to execute source for 'node_modules/gaxios/build/src/gaxios.js': FunctionError: failed to execute source for 'node_modules/node-fetch/lib/index.js': FunctionError: failed to execute source for 'node_modules/node-fetch/node_modules/whatwg-url/lib/public-api.js': FunctionError: failed to execute source for 'node_modules/node-fetch/node_modules/whatwg-url/lib/URL.js': FunctionError: failed to execute source for 'node_modules/webidl-conversions/lib/index.js': ReferenceError: 'BigInt' is not defined
    at createLongLongConversion (node_modules/webidl-conversions/lib/index.js:141:47(19))
    at node_modules/webidl-conversions/lib/index.js:207:48(106)
    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/URL.js:11:19(13)
    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/public-api.js:11:15(12)
    at require (native)
    at node_modules/node-fetch/lib/index.js:26:33(107)
    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/URL.js:11:19(13)
    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/public-api.js:11:15(12)
    at require (native)
    at node_modules/node-fetch/lib/index.js:26:33(107)
    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/node-fetch/node_modules/whatwg-url/lib/public-api.js:11:15(12)
    at require (native)
    at node_modules/node-fetch/lib/index.js:26:33(107)
    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/node-fetch/lib/index.js:26:33(107)
    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/gaxios/build/src/gaxios.js:39:36(64)
    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/gaxios/build/src/index.js:27:16(31)
    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/gcp-metadata/build/src/index.js:46:16(92)
    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/google-auth-library/build/src/auth/googleauth.js:40:19(53)
    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/google-auth-library/build/src/index.js:28:20(63)
    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/googleapis-common/build/src/index.js:27:29(55)
    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at node_modules/@googleapis/youtube/build/index.js:28:27(33)
    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native

    at require (native)
    at function.js:1:22(6)
    at <eval>:8:8(2)
    at <eval>:2:15(7)
    at native
  1. Do I need to install every dependency?
  2. Is it a specific node version?
  3. Is this attempt even possible? should I just be using axios to do this request?
0

There are 0 best solutions below