netlify / netlify-plugin-gatsby

A build plugin to integrate Gatsby seamlessly with Netlify
https://www.npmjs.com/package/@netlify/plugin-gatsby
MIT License
91 stars 18 forks source link

[Bug]: AWS_LAMBDA_JS_RUNTIME drops nodejs14.x (NODE_MODULE_VERSION 83) support #745

Open jeffgo10 opened 5 months ago

jeffgo10 commented 5 months ago

Summary

there was a compatibility problem when i tried to deploy Gatsby site with SSR using nodejs14.x for AWS lambda runtime. it shows an error stated Using an unsupported version of Node.js for functions: nodejs14.x. I search and noticed nodejs14.x is no longer supported in lambda. So I tried a higher version which is nodejs16.x, the build was fine without errors. but when i run a page with SSR it has a runtime error:

Error - The module '/var/task/client/gentek-www/.cache/query-engine/assets/prebuilds/linux-x64/node.abi83.node' was compiled against a different Node.js version using NODE_MODULE_VERSION 83. This version of Node.js requires NODE_MODULE_VERSION 93. Please try re-compiling or re-installing the module (for instance, using `npm rebuild` or `npm install`).

What i noticed is your binary node.abi83.node came from your plugin and only has a specific version that is supported which is 83 (specified in plugin/src/helpers/files.ts in line 19-23):

const DEFAULT_LAMBDA_PLATFORM = 'linux'
const DEFAULT_LAMBDA_ABI = '83'
const DEFAULT_LAMBDA_ARCH = 'x64'

const LAMBDA_PLATFORM = `${DEFAULT_LAMBDA_PLATFORM}-${DEFAULT_LAMBDA_ARCH}`

Is there a way for you guys to support the new lambda runtime versions such as node16.x, node18.x and node20.x? You might want to support the new versions since 16 and 18 will be deprecated soon in lambda.

Steps to reproduce

  1. deploy a gatsby site in netlify with SSR page support using NODE_VERSION 14 and AWS_LAMBDA_JS_RUNTIME nodejs14.x
  2. you will see an error Using an unsupported version of Node.js for functions: nodejs14.x
  3. try deploying again but now using NODE_VERSION 16 and AWS_LAMBDA_JS_RUNTIME nodejs16.x
  4. successful build
  5. run the site, try the page with SSR
  6. error will be showing '.../linux-x64/node.abi83.node' was compiled against a different Node.js version using NODE_MODULE_VERSION 83. This version of Node.js requires NODE_MODULE_VERSION 93.'

A link to a reproduction repository

No response

Plugin version

3.8.0

More information about your build

What OS are you using?

Other

Your netlify.toml file

`netlify.toml` ```toml [context.production.environment] GATSBY_APP_BASE_URL = "https://***.herokuapp.com" DATASOURCE = "https://***.herokuapp.com" Q3_URL = "https://***.herokuapp.com" URL = "https://***.com" [context.branch-deploy.environment] GATSBY_APP_BASE_URL = "https://***-staging.herokuapp.com" DATASOURCE = "https://***-staging.herokuapp.com" Q3_URL = "https://***-staging.herokuapp.com" URL = "https://***-www.netlify.app" [build.processing] skip_processing = false [build.processing.css] bundle = true minify = false [build.processing.js] bundle = true minify = false [build.processing.html] pretty_urls = true [build.processing.images] compress = true # Necessary for SSR [[plugins]] package = "@netlify/plugin-gatsby" ```

Configuration

`gatsby-config.js` and options ``` # Paste content of your `gatsby-config.js` file, and/or command line options here. Check there is no private info in there. ```

Environment

Environment ``` # Paste output from `npx envinfo` here. ```

Gatsby info

gatsby info ``` # Paste output from `gatsby info` here. ```

Your _redirects file

`_redirects` ```toml # Paste content of your `_redirects` file here ```

Builds logs (or link to your logs)

Build logs ``` # Paste logs here ```

Function logs

Function logs ``` # Paste logs here ```
pieh commented 5 months ago

Hi @jeffgo10 Do you by any chance see in build logs that lmdb package is being built from source during dependencies installation step?

Errors like this often happen in such situations, prebuilds binaries seem more tolerant to node versions and don't seem to suffer issues like that

jeffgo10 commented 5 months ago

@pieh from what i see in log, it seems the binary is only being copied from a source. but i'm not sure if i gave you the right answer, so here's the build log:

`initializing log` ``` 5:09:03 PM: build-image version: fcb0c1b3ada6d25c1cb58e8bc514f5f23cc14f15 (focal) 5:09:03 PM: buildbot version: 742cd4f739071a396139ba5020a96a927941b57d 5:09:03 PM: Building without cache 5:09:03 PM: Starting to prepare the repo for build 5:09:03 PM: No cached dependencies found. Cloning fresh repo 5:09:03 PM: git clone --filter=blob:none https://github.com/3merge/gentek 5:09:04 PM: Preparing Git Reference refs/heads/master 5:09:06 PM: ​ ❯ Initial build environment baseRelDir: true branch: master context: production cwd: /opt/build/repo featureFlags: [] mode: buildbot repositoryRoot: /opt/build/repo siteId: 99def22f-3ddf-4802-9f56-e973737fc591 ​ ❯ UI build settings baseRelDir: true build: base: client/gentek-www command: yarn build environment: - AWS_LAMBDA_JS_RUNTIME - CONTENTFUL_ACCESS_TOKEN - CONTENTFUL_SPACE_ID - GATSBY_APP_BASE_SECRET - NETLIFY_BUILD_DEBUG - NETLIFY_RESERVED__URL - NODE_OPTIONS - NODE_VERSION - NPM_TOKEN - Q3_ACCESS_TOKEN publish: public ​ ❯ Resolved build environment branch: master buildDir: /opt/build/repo/client/gentek-www configPath: /opt/build/repo/client/gentek-www/netlify.toml context: production env: [] ​ ❯ Resolved config build: base: /opt/build/repo/client/gentek-www command: yarn build commandOrigin: ui environment: - AWS_LAMBDA_JS_RUNTIME - CONTENTFUL_ACCESS_TOKEN - CONTENTFUL_SPACE_ID - GATSBY_APP_BASE_SECRET - NETLIFY_BUILD_DEBUG - NETLIFY_RESERVED__URL - NODE_OPTIONS - NODE_VERSION - NPM_TOKEN - Q3_ACCESS_TOKEN - GATSBY_APP_BASE_URL - DATASOURCE - Q3_URL processing: css: bundle: true minify: false html: pretty_urls: true images: compress: true js: bundle: true minify: false skip_processing: false publish: /opt/build/repo/client/gentek-www/public publishOrigin: ui plugins: - inputs: {} origin: config package: "@netlify/plugin-gatsby" 5:09:06 PM: Custom publish path detected. Proceeding with the specified path: "client/gentek-www/public" 5:09:07 PM: Starting to install dependencies 5:09:07 PM: Python version set to 3.8 5:09:07 PM: Attempting Ruby version 2.7.1, read from environment 5:09:07 PM: Required ruby-2.7.1 is not installed - installing. 5:09:07 PM: Searching for binary rubies, this might take some time. 5:09:07 PM: Found remote file https://rvm_io.global.ssl.fastly.net/binaries/ubuntu/20.04/x86_64/ruby-2.7.1.tar.bz2 5:09:07 PM: Checking requirements for ubuntu. 5:09:08 PM: Requirements installation successful. 5:09:08 PM: ruby-2.7.1 - #configure 5:09:08 PM: ruby-2.7.1 - #download 5:09:08 PM: ruby-2.7.1 - #validate archive 5:09:12 PM: ruby-2.7.1 - #extract 5:09:13 PM: ruby-2.7.1 - #validate binary 5:09:14 PM: ruby-2.7.1 - #setup 5:09:14 PM: ruby-2.7.1 - #gemset created /opt/buildhome/.rvm/gems/ruby-2.7.1@global 5:09:14 PM: ruby-2.7.1 - #importing gemset /opt/buildhome/.rvm/gemsets/global.gems........................................ 5:09:15 PM: ruby-2.7.1 - #generating global wrappers........ 5:09:15 PM: ruby-2.7.1 - #gemset created /opt/buildhome/.rvm/gems/ruby-2.7.1 5:09:15 PM: ruby-2.7.1 - #importing gemsetfile /opt/buildhome/.rvm/gemsets/default.gems evaluated to empty gem list 5:09:15 PM: ruby-2.7.1 - #generating default wrappers........ 5:09:15 PM: Using /opt/buildhome/.rvm/gems/ruby-2.7.1 5:09:15 PM: Using Ruby version 2.7.1 5:09:16 PM: Started restoring cached go cache 5:09:16 PM: Finished restoring cached go cache 5:09:16 PM: Installing Go version 1.14.4 (requested 1.14.4) 5:09:20 PM: go version go1.14.4 linux/amd64 5:09:20 PM: Using PHP version 8.0 5:09:21 PM: Downloading and installing node v16.18.1... 5:09:22 PM: Downloading https://nodejs.org/dist/v16.18.1/node-v16.18.1-linux-x64.tar.xz... 5:09:22 PM: Computing checksum with sha256sum 5:09:22 PM: Checksums matched! 5:09:24 PM: Now using node v16.18.1 (npm v8.19.2) 5:09:24 PM: Enabling Node.js Corepack 5:09:24 PM: Started restoring cached build plugins 5:09:24 PM: Finished restoring cached build plugins 5:09:24 PM: Started restoring cached corepack dependencies 5:09:24 PM: Finished restoring cached corepack dependencies 5:09:24 PM: Started restoring cached yarn cache 5:09:24 PM: Finished restoring cached yarn cache 5:09:25 PM: Installing Yarn version 1.22.4 5:09:25 PM: Preparing yarn@1.22.4 for immediate activation... 5:09:25 PM: No yarn workspaces detected 5:09:25 PM: Started restoring cached node modules 5:09:25 PM: Finished restoring cached node modules 5:09:25 PM: Installing npm packages using Yarn version 1.22.4 5:09:26 PM: yarn install v1.22.4 5:09:26 PM: $ yarn cache clean 5:09:26 PM: yarn cache v1.22.4 5:09:26 PM: success Cleared cache. 5:09:26 PM: Done in 0.04s. 5:09:26 PM: [1/4] Resolving packages... 5:09:26 PM: warning Resolution field "gatsby-source-contentful@6.1.4" is incompatible with requested version "gatsby-source-contentful@^7.0.0" 5:09:27 PM: [2/4] Fetching packages... 5:09:58 PM: info lmdb-darwin-arm64@2.3.6: The platform "linux" is incompatible with this module. 5:09:58 PM: info "lmdb-darwin-arm64@2.3.6" is an optional dependency and failed compatibility check. Excluding it from installation. 5:09:58 PM: info lmdb-darwin-arm64@2.3.6: The CPU architecture "x64" is incompatible with this module. 5:09:58 PM: info lmdb-darwin-x64@2.3.6: The platform "linux" is incompatible with this module. 5:09:58 PM: info "lmdb-darwin-x64@2.3.6" is an optional dependency and failed compatibility check. Excluding it from installation. 5:09:58 PM: info lmdb-linux-arm@2.3.6: The CPU architecture "x64" is incompatible with this module. 5:09:58 PM: info "lmdb-linux-arm@2.3.6" is an optional dependency and failed compatibility check. Excluding it from installation. 5:09:58 PM: info lmdb-linux-arm64@2.3.6: The CPU architecture "x64" is incompatible with this module. 5:09:58 PM: info "lmdb-linux-arm64@2.3.6" is an optional dependency and failed compatibility check. Excluding it from installation. 5:09:58 PM: info lmdb-win32-x64@2.3.6: The platform "linux" is incompatible with this module. 5:09:58 PM: info "lmdb-win32-x64@2.3.6" is an optional dependency and failed compatibility check. Excluding it from installation. 5:09:58 PM: info fsevents@2.3.2: The platform "linux" is incompatible with this module. 5:09:58 PM: info "fsevents@2.3.2" is an optional dependency and failed compatibility check. Excluding it from installation. 5:09:58 PM: [3/4] Linking dependencies... 5:09:58 PM: warning " > gatsby-source-contentful@6.1.4" has unmet peer dependency "gatsby-plugin-sharp@^4.0.0-next". 5:09:58 PM: warning " > gatsby-source-contentful@6.1.4" has incorrect peer dependency "sharp@^0.29.0". 5:09:58 PM: warning "gatsby-plugin-netlify > webpack-assets-manifest@5.0.6" has unmet peer dependency "webpack@^5.2.0". 5:09:58 PM: warning " > react-i18next@11.16.9" has unmet peer dependency "i18next@>= 19.0.0". 5:09:58 PM: warning " > @reach/router@1.3.4" has incorrect peer dependency "react@15.x || 16.x || 16.4.0-alpha.0911da3". 5:09:58 PM: warning " > @reach/router@1.3.4" has incorrect peer dependency "react-dom@15.x || 16.x || 16.4.0-alpha.0911da3". 5:09:58 PM: warning "@reach/router > create-react-context@0.3.0" has incorrect peer dependency "react@^0.14.0 || ^15.0.0 || ^16.0.0". 5:09:58 PM: warning "gatsby > eslint-config-react-app@6.0.0" has unmet peer dependency "babel-eslint@^10.0.0". 5:09:58 PM: warning "gatsby > @typescript-eslint/eslint-plugin > tsutils@3.21.0" has unmet peer dependency "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta". 5:09:58 PM: warning "gatsby > eslint-plugin-graphql > graphql-config > @endemolshinegroup/cosmiconfig-typescript-loader > ts-node@9.1.1" has unmet peer dependency "typescript@>=2.7". 5:09:58 PM: warning " > gatsby-plugin-image@2.4.0" has unmet peer dependency "@babel/core@^7.12.3". 5:09:58 PM: warning " > gatsby-plugin-image@2.4.0" has unmet peer dependency "gatsby-plugin-sharp@^4.0.0-next". 5:09:58 PM: warning " > gatsby-plugin-image@2.4.0" has unmet peer dependency "gatsby-source-filesystem@^4.0.0-next". 5:09:58 PM: warning " > @lolly-labs/eslint-config-react-3merge@1.2.1" has incorrect peer dependency "prettier@^1.18.2". 5:09:58 PM: warning "@lolly-labs/eslint-config-react-3merge > @rushstack/eslint-config@2.5.1" has unmet peer dependency "typescript@>=3.0.0". 5:09:58 PM: warning "@lolly-labs/eslint-config-react-3merge > eslint-config-airbnb@19.0.4" has unmet peer dependency "eslint-plugin-react-hooks@^4.3.0". 5:09:58 PM: warning "@lolly-labs/eslint-config-react-3merge > eslint-config-node-3merge@1.2.1" has incorrect peer dependency "prettier@^1.18.2". 5:09:58 PM: warning "@lolly-labs/eslint-config-react-3merge > eslint-config-react-3merge@1.2.1" has incorrect peer dependency "prettier@^1.18.2". 5:09:58 PM: warning "@lolly-labs/eslint-config-react-3merge > eslint-import-resolver-babel-module@5.3.1" has unmet peer dependency "@babel/core@^7.0.0-0". 5:09:58 PM: warning "@lolly-labs/eslint-config-react-3merge > eslint-import-resolver-babel-module@5.3.1" has unmet peer dependency "babel-plugin-module-resolver@^3.0.0 || ^4.0.0". 5:09:58 PM: warning "@lolly-labs/eslint-config-react-3merge > eslint-plugin-flowtype@8.0.3" has unmet peer dependency "@babel/plugin-syntax-flow@^7.14.5". 5:09:58 PM: warning "@lolly-labs/eslint-config-react-3merge > eslint-plugin-flowtype@8.0.3" has unmet peer dependency "@babel/plugin-transform-react-jsx@^7.14.9". 5:09:58 PM: warning "@lolly-labs/eslint-config-react-3merge > eslint-plugin-flowtype@8.0.3" has incorrect peer dependency "eslint@^8.1.0". 5:09:58 PM: warning " > q3-ui-queuelogs@2.3.15" has unmet peer dependency "@mui/x-data-grid@^4.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-filters@1.16.7" has incorrect peer dependency "@lolly-labs/q3-ui-test-utils@1.9.6". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-filters@1.16.7" has incorrect peer dependency "react@^16.10.2". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-components > react-diff-viewer@3.1.1" has incorrect peer dependency "react@^15.3.0 || ^16.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-components > react-diff-viewer@3.1.1" has incorrect peer dependency "react-dom@^15.3.0 || ^16.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui-forms > @material-ui/pickers@3.3.10" has unmet peer dependency "@date-io/core@^1.3.6". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui-forms > material-ui-chip-input@1.1.0" has incorrect peer dependency "@material-ui/core@^1.0.0 || ^3.1.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui-forms > material-ui-chip-input@1.1.0" has incorrect peer dependency "react@^16.3.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui-forms > material-ui-chip-input@1.1.0" has incorrect peer dependency "react-dom@^16.3.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui > react-credit-cards@0.8.3" has incorrect peer dependency "react@^15.0.0 || ^16.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui > react-google-maps@9.4.5" has unmet peer dependency "@types/googlemaps@^3.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui > react-google-maps@9.4.5" has unmet peer dependency "@types/markerclustererplus@^2.1.29". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui > react-google-maps@9.4.5" has unmet peer dependency "@types/react@^15.0.0 || ^16.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui > react-google-maps@9.4.5" has incorrect peer dependency "react@^15.0.0 || ^16.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui > react-google-maps@9.4.5" has incorrect peer dependency "react-dom@^15.0.0 || ^16.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gatsby-theme-q3 > @babel/plugin-proposal-export-default-from@7.16.7" has unmet peer dependency "@babel/core@^7.0.0-0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gatsby-theme-q3 > @contentful/gatsby-transformer-contentful-richtext@13.1.0" has incorrect peer dependency "gatsby@^2.0.33". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gatsby-theme-q3 > gatsby-plugin-material-ui@3.0.1" has incorrect peer dependency "gatsby@^3.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-filters > @lolly-labs/q3-ui-helpers@1.43.10" has incorrect peer dependency "react@^16.10.2". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-filters > @material-ui/pickers@4.0.0-alpha.5" has incorrect peer dependency "react@^16.8.4". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-filters > @material-ui/pickers@4.0.0-alpha.5" has incorrect peer dependency "react-dom@^16.8.4". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-test-utils > enzyme-adapter-react-16@1.15.6" has incorrect peer dependency "react@^16.0.0-0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-test-utils > enzyme-adapter-react-16@1.15.6" has incorrect peer dependency "react-dom@^16.0.0-0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-ui > react-google-maps > recompose@0.26.0" has incorrect peer dependency "react@^0.14.0 || ^15.0.0 || ^16.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gatsby-theme-q3 > @babel/plugin-proposal-export-default-from > @babel/plugin-syntax-export-default-from@7.16.7" has unmet peer dependency "@babel/core@^7.0.0-0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gatsby-theme-q3 > gatsby-plugin-material-ui > babel-preset-gatsby@1.14.0" has unmet peer dependency "@babel/core@^7.11.6". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gatsby-theme-q3 > gatsby-plugin-material-ui > babel-preset-gatsby@1.14.0" has unmet peer dependency "core-js@^3.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gentek-www > accessa > react-image@4.0.3" has unmet peer dependency "@babel/runtime@>=7". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gentek-www > accessa > react-lottie@1.2.3" has incorrect peer dependency "react@^0.14.7 || ^15.0.0 || ^16.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gentek-www > accessa > react-social-icons@4.1.0" has incorrect peer dependency "react@15.x.x || 16.x.x". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gentek-www > accessa > styled-components@5.3.3" has unmet peer dependency "react-is@>= 16.8.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > gentek-www > bambora-material-ui > @wojtekmaj/enzyme-adapter-react-17@0.3.2" has unmet peer dependency "enzyme@^3.0.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-test-utils > enzyme-adapter-react-16 > enzyme-adapter-utils@1.14.0" has incorrect peer dependency "react@0.13.x || 0.14.x || ^15.0.0-0 || ^16.0.0-0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-test-utils > enzyme-adapter-react-16 > react-test-renderer@16.14.0" has incorrect peer dependency "react@^16.14.0". 5:09:58 PM: warning "workspace-aggregator-d6f55b5d-e138-48d7-a46d-c88281ca0167 > q3-admin > @lolly-labs/q3-ui-test-utils > enzyme-adapter-react-16 > enzyme-adapter-utils > airbnb-prop-types@2.16.0" has incorrect peer dependency "react@^0.14 || ^15.0.0 || ^16.0.0-alpha". 5:10:32 PM: [4/4] Building fresh packages... 5:10:46 PM: Done in 80.86s. 5:10:47 PM: npm packages installed using Yarn 5:10:47 PM: npm WARN ignoring workspace config at /opt/build/repo/client/gentek-www/.npmrc 5:10:47 PM: Successfully installed dependencies 5:10:47 PM: Starting build script 5:10:48 PM: Detected 1 framework(s) 5:10:48 PM: "gatsby" at version "4.4.0" 5:10:48 PM: Section completed: initializing ```
`building log` ``` 5:10:49 PM: Netlify Build 5:10:49 PM: ──────────────────────────────────────────────────────────────── 5:10:49 PM: ​ 5:10:49 PM: ❯ Version 5:10:49 PM: @netlify/build 29.36.0 5:10:49 PM: ​ 5:10:49 PM: ❯ Flags 5:10:49 PM: apiHost: api.netlify.com 5:10:49 PM: baseRelDir: true 5:10:49 PM: branch: master 5:10:49 PM: buildId: 65e049a136767be814974fad 5:10:49 PM: buildbotServerSocket: /tmp/netlify-buildbot-socket 5:10:49 PM: cacheDir: /opt/build/cache 5:10:49 PM: cachedConfigPath: /tmp/netlify_config.json 5:10:49 PM: context: production 5:10:49 PM: cwd: /opt/build/repo 5:10:49 PM: deployId: 65e049a136767be814974faf 5:10:49 PM: edgeFunctionsDistDir: /tmp/edge-65e049a136767be814974faf 5:10:49 PM: featureFlags: 5:10:49 PM: - buildbot_zisi_system_log 5:10:49 PM: - edge_functions_cache_cli 5:10:49 PM: - edge_functions_system_logger 5:10:49 PM: framework: gatsby 5:10:49 PM: functionsDistDir: /tmp/zisi-65e049a136767be814974faf 5:10:49 PM: mode: buildbot 5:10:49 PM: nodePath: /opt/buildhome/.nvm/versions/node/v16.18.1/bin/node 5:10:49 PM: repositoryRoot: /opt/build/repo 5:10:49 PM: saveConfig: true 5:10:49 PM: sendStatus: true 5:10:49 PM: siteId: 99def22f-3ddf-4802-9f56-e973737fc591 5:10:49 PM: statsd: 5:10:49 PM: host: 10.71.18.46 5:10:49 PM: port: 8125 5:10:49 PM: systemLogFile: 3 5:10:49 PM: testOpts: 5:10:49 PM: silentLingeringProcesses: "" 5:10:49 PM: tracing: 5:10:49 PM: baggageFilePath: /tmp/baggage.dump 5:10:49 PM: enabled: "true" 5:10:49 PM: host: 10.71.18.46 5:10:49 PM: parentSpanId: 3c3dde520a2f5d14 5:10:49 PM: preloadingEnabled: "true" 5:10:49 PM: sampleRate: 4 5:10:49 PM: traceFlags: "01" 5:10:49 PM: traceId: ee980cadc19e37e83693e85522428c5a 5:10:49 PM: ​ 5:10:49 PM: ❯ Current directory 5:10:49 PM: /opt/build/repo/client/gentek-www 5:10:49 PM: ​ 5:10:49 PM: ❯ Config file 5:10:49 PM: /opt/build/repo/client/gentek-www/netlify.toml 5:10:49 PM: ​ 5:10:49 PM: ❯ Resolved config 5:10:49 PM: build: 5:10:49 PM: base: /opt/build/repo/client/gentek-www 5:10:49 PM: command: yarn build 5:10:49 PM: commandOrigin: ui 5:10:49 PM: environment: 5:10:49 PM: - AWS_LAMBDA_JS_RUNTIME 5:10:49 PM: - CONTENTFUL_ACCESS_TOKEN 5:10:49 PM: - CONTENTFUL_SPACE_ID 5:10:49 PM: - GATSBY_APP_BASE_SECRET 5:10:49 PM: - NETLIFY_BUILD_DEBUG 5:10:49 PM: - NETLIFY_RESERVED__URL 5:10:49 PM: - NODE_OPTIONS 5:10:49 PM: - NODE_VERSION 5:10:49 PM: - NPM_TOKEN 5:10:49 PM: - Q3_ACCESS_TOKEN 5:10:49 PM: - GATSBY_APP_BASE_URL 5:10:49 PM: - DATASOURCE 5:10:49 PM: - Q3_URL 5:10:49 PM: processing: 5:10:49 PM: css: 5:10:49 PM: bundle: true 5:10:49 PM: minify: false 5:10:49 PM: html: 5:10:49 PM: pretty_urls: true 5:10:49 PM: images: 5:10:49 PM: compress: true 5:10:49 PM: js: 5:10:49 PM: bundle: true 5:10:49 PM: minify: false 5:10:49 PM: skip_processing: false 5:10:49 PM: publish: /opt/build/repo/client/gentek-www/public 5:10:49 PM: publishOrigin: ui 5:10:49 PM: plugins: 5:10:49 PM: - inputs: {} 5:10:49 PM: origin: config 5:10:49 PM: package: "@netlify/plugin-gatsby" 5:10:49 PM: ​ 5:10:49 PM: ❯ Context 5:10:49 PM: production 5:10:49 PM: ​ 5:10:49 PM: ❯ Available plugins 5:10:49 PM: - @21yunbox/netlify-plugin-21yunbox-deploy-to-china-cdn@1.0.7 5:10:49 PM: - @algolia/netlify-plugin-crawler@1.0.0 5:10:49 PM: - @bharathvaj/netlify-plugin-airbrake@1.0.2 5:10:49 PM: - @chiselstrike/netlify-plugin@0.1.0 5:10:49 PM: - @commandbar/netlify-plugin-commandbar@0.0.4 5:10:49 PM: - @helloample/netlify-plugin-replace@1.1.4 5:10:49 PM: - @netlify/angular-runtime@2.0.5 5:10:49 PM: - @netlify/feature-package-pilot@0.1.11 5:10:49 PM: - @netlify/plugin-angular-universal@1.0.1 5:10:49 PM: - @netlify/plugin-contentful-buildtime@0.0.3 5:10:49 PM: - @netlify/plugin-emails@1.1.1 5:10:49 PM: - @netlify/plugin-gatsby@3.8.0 5:10:49 PM: - @netlify/plugin-lighthouse@6.0.0 5:10:49 PM: - @netlify/plugin-nextjs@5.0.0-rc.2 5:10:49 PM: - @netlify/plugin-sitemap@0.8.1 5:10:49 PM: - @newrelic/netlify-plugin@1.0.2 5:10:49 PM: - @sentry/netlify-build-plugin@1.1.1 5:10:49 PM: - @snaplet/netlify-preview-database-plugin@2.0.0 5:10:49 PM: - @takeshape/netlify-plugin-takeshape@1.0.0 5:10:49 PM: - @vgs/netlify-plugin-vgs@0.0.2 5:10:49 PM: - netlify-build-plugin-dareboost@1.2.1 5:10:49 PM: - netlify-build-plugin-debugbear@1.0.6 5:10:49 PM: - netlify-build-plugin-perfbeacon@1.0.3 5:10:49 PM: - netlify-build-plugin-speedcurve@2.0.0 5:10:49 PM: - netlify-deployment-hours-plugin@0.0.10 5:10:49 PM: - netlify-plugin-a11y@0.0.12 5:10:49 PM: - netlify-plugin-add-instagram@0.2.2 5:10:49 PM: - netlify-plugin-algolia-index@0.3.0 5:10:49 PM: - netlify-plugin-amp-server-side-rendering@1.0.2 5:10:49 PM: - netlify-plugin-brand-guardian@1.0.1 5:10:49 PM: - netlify-plugin-build-logger@1.0.3 5:10:49 PM: - netlify-plugin-bundle-env@0.2.2 5:10:49 PM: - netlify-plugin-cache-nextjs@1.4.0 5:10:49 PM: - netlify-plugin-cecil-cache@0.3.3 5:10:49 PM: - netlify-plugin-checklinks@4.1.1 5:10:49 PM: - netlify-plugin-chromium@1.1.4 5:10:49 PM: - netlify-plugin-cloudinary@1.17.0 5:10:49 PM: - netlify-plugin-contextual-env@0.3.0 5:10:49 PM: - netlify-plugin-cypress@2.2.0 5:10:49 PM: - netlify-plugin-debug-cache@1.0.4 5:10:49 PM: - netlify-plugin-encrypted-files@0.0.5 5:10:49 PM: - netlify-plugin-fetch-feeds@0.2.3 5:10:49 PM: - netlify-plugin-flutter@1.1.0 5:10:49 PM: - netlify-plugin-formspree@1.0.1 5:10:49 PM: - netlify-plugin-gatsby-cache@0.3.0 5:10:49 PM: - netlify-plugin-get-env-vars@1.0.0 5:10:49 PM: - netlify-plugin-ghost-inspector@1.0.1 5:10:49 PM: - netlify-plugin-ghost-markdown@3.1.0 5:10:49 PM: - netlify-plugin-gmail@1.1.0 5:10:49 PM: - netlify-plugin-gridsome-cache@1.0.3 5:10:49 PM: - netlify-plugin-hashfiles@4.0.2 5:10:49 PM: - netlify-plugin-html-validate@1.0.0 5:10:49 PM: - netlify-plugin-hugo-cache-resources@0.2.1 5:10:49 PM: - netlify-plugin-image-optim@0.4.0 5:10:49 PM: - netlify-plugin-inline-critical-css@2.0.0 5:10:49 PM: - netlify-plugin-inline-functions-env@1.0.8 5:10:49 PM: - netlify-plugin-inline-source@1.0.4 5:10:49 PM: - netlify-plugin-inngest@1.0.0 5:10:49 PM: - netlify-plugin-is-website-vulnerable@2.0.3 5:10:49 PM: - netlify-plugin-jekyll-cache@1.0.0 5:10:49 PM: - netlify-plugin-js-obfuscator@1.0.20 5:10:49 PM: - netlify-plugin-minify-html@0.3.1 5:10:49 PM: - netlify-plugin-next-dynamic@1.0.9 5:10:49 PM: - netlify-plugin-nimbella@2.1.0 5:10:49 PM: - netlify-plugin-no-more-404@0.0.15 5:10:49 PM: - netlify-plugin-nx-skip-build@0.0.7 5:10:49 PM: - netlify-plugin-pagewatch@1.0.4 5:10:49 PM: - netlify-plugin-playwright-cache@0.0.1 5:10:49 PM: - netlify-plugin-prerender-spa@1.0.1 5:10:49 PM: - netlify-plugin-prisma-provider@0.3.0 5:10:49 PM: - netlify-plugin-pushover@0.1.1 5:10:49 PM: - netlify-plugin-qawolf@1.2.0 5:10:49 PM: - netlify-plugin-rss@0.0.8 5:10:49 PM: - netlify-plugin-search-index@0.1.5 5:10:49 PM: - netlify-plugin-snyk@1.2.0 5:10:49 PM: - netlify-plugin-stepzen@1.0.4 5:10:49 PM: - netlify-plugin-subfont@6.0.0 5:10:49 PM: - netlify-plugin-submit-sitemap@0.4.0 5:10:49 PM: - netlify-plugin-to-all-events@1.3.1 5:10:49 PM: - netlify-plugin-use-env-in-runtime@1.2.1 5:10:49 PM: - netlify-plugin-visual-diff@2.0.0 5:10:49 PM: - netlify-plugin-webmentions@1.1.0 5:10:49 PM: - netlify-purge-cloudflare-on-deploy@1.2.0 5:10:49 PM: - strapi-plugin-netlify-deployments@2.0.1 5:10:49 PM: ​ 5:10:49 PM: ❯ Installing plugins 5:10:49 PM: - @netlify/plugin-gatsby@3.8.0 5:11:00 PM: ​ 5:11:00 PM: ❯ Loading plugins 5:11:00 PM: - @netlify/plugin-gatsby@3.8.0 from netlify.toml (pinned 3, latest 3.8.0, expected 3.8.0, compatible 3.8.0) 5:11:01 PM: ​ 5:11:01 PM: @netlify/plugin-gatsby (onPreBuild event) 5:11:01 PM: ──────────────────────────────────────────────────────────────── 5:11:01 PM: ​ 5:11:01 PM: Step starting. 5:11:01 PM: Step started. 5:11:01 PM: Plugin logic started. 5:11:02 PM: No Gatsby cache found. Building fresh. 5:11:02 PM: Plugin logic ended. 5:11:02 PM: Stop closing. 5:11:02 PM: Step ended. 5:11:02 PM: Step completed. 5:11:02 PM: ​ 5:11:02 PM: (@netlify/plugin-gatsby onPreBuild completed in 85ms) 5:11:02 PM: Build step duration: @netlify/plugin-gatsby onPreBuild completed in 85ms 5:11:02 PM: ​ 5:11:02 PM: Build command from Netlify app 5:11:02 PM: ──────────────────────────────────────────────────────────────── 5:11:02 PM: ​ 5:11:02 PM: $ yarn build 5:11:02 PM: yarn run v1.22.17 5:11:02 PM: $ cross-env GATSBY_EXPERIMENTAL_PAGE_BUILD_ON_DATA_CHANGES=true gatsby build --log-pages 5:11:03 PM: warning Plugin gatsby-plugin-material-ui is not compatible with your gatsby version 4.4.0 - It requires gatsby@^3.0.0 5:11:04 PM: warning Plugin gatsby-plugin-material-ui is not compatible with your gatsby version 4.4.0 - It requires gatsby@^3.0.0 5:11:04 PM: success open and validate gatsby-configs, load plugins - 0.705s 5:11:04 PM: success onPreInit - 0.006s 5:11:04 PM: success initialize cache - 0.066s 5:11:04 PM: success copy gatsby files - 0.040s 5:11:04 PM: success Compiling Gatsby Functions - 0.159s 5:11:04 PM: success onPreBootstrap - 0.166s 5:11:04 PM: success createSchemaCustomization - 0.122s 5:11:05 PM: success Contentful: Sync all items - 0.295s - 732/732 2482.76/s 5:11:05 PM: info Contentful: 376 new/updated entries 5:11:05 PM: info Contentful: 0 deleted entries 5:11:05 PM: info Contentful: 0 cached entries 5:11:05 PM: info Contentful: 356 new/updated assets 5:11:05 PM: info Contentful: 0 cached assets 5:11:05 PM: info Contentful: 0 deleted assets 5:11:06 PM: success Contentful: Fetch data (kicd5l6ltnzt-master) - 0.697s 5:11:06 PM: info Creating 4 Contentful Promotion nodes 5:11:06 PM: info Creating 7 Contentful Service nodes 5:11:06 PM: info Creating 8 Contentful Page nodes 5:11:06 PM: info Creating 10 Contentful Banner nodes 5:11:06 PM: info Creating 20 Contentful Button nodes 5:11:06 PM: info Creating 10 Contentful Call to action nodes 5:11:06 PM: info Creating 60 Contentful Post nodes 5:11:06 PM: info Creating 29 Contentful Vendor nodes 5:11:06 PM: info Creating 1 Contentful Index nodes 5:11:06 PM: info Creating 1 Contentful Config nodes 5:11:06 PM: info Creating 3 Contentful Department nodes 5:11:06 PM: info Creating 70 Contentful Blogs nodes 5:11:06 PM: info Creating 129 Contentful SEO nodes 5:11:07 PM: info Creating 2 Contentful Featured Links nodes 5:11:07 PM: info Creating 9 Contentful Product Bucket nodes 5:11:07 PM: info Creating 12 Contentful Promotion (Next-Gen) nodes 5:11:07 PM: info Creating 1 Contentful Slide nodes 5:11:07 PM: info Creating 356 Contentful asset nodes 5:11:07 PM: success Contentful: Create nodes (kicd5l6ltnzt-master) - 1.092s 5:11:07 PM: success Contentful: Process data (kicd5l6ltnzt-master) - 1.497s 5:11:08 PM: success Checking for changed pages - 0.000s 5:11:08 PM: success source and transform nodes - 3.179s 5:11:09 PM: info Writing GraphQL type definitions to /opt/build/repo/client/gentek-www/.cache/schema.gql 5:11:13 PM: success building schema - 5.251s 5:11:13 PM: success createPages - 0.362s 5:11:13 PM: success createPagesStatefully - 0.105s 5:11:13 PM: info Total nodes: 1125, SitePage nodes: 140 (use --verbose for breakdown) 5:11:13 PM: success Checking for changed pages - 0.000s 5:11:13 PM: success onPreExtractQueries - 0.000s 5:11:18 PM: success extract queries from components - 5.066s 5:11:18 PM: success write out redirect data - 0.003s 5:11:19 PM: success Build manifest and related icons - 0.099s 5:11:19 PM: success onPostBootstrap - 0.100s 5:11:19 PM: info bootstrap finished - 16.701s 5:11:19 PM: success write out requires - 0.007s 5:11:21 PM: warning `isModuleDeclaration` has been deprecated, please migrate to `isImportOrExportDeclaration` 5:11:21 PM: at isModuleDeclaration (/opt/build/repo/client/node_modules/@babel/types/lib/validators/generated/index.js:2748:35) 5:11:21 PM: at PluginPass.Program (/opt/build/repo/client/node_modules/babel-plugin-lodash/lib/index.js:102:44) 5:12:47 PM: warning ../q3-packages/q3-ui-repeater/src/components/ItemActions/index.js 5:12:47 PM: Attempted import error: "paginate" is not exported from "./ItemActions" (imported as "test"). 5:12:47 PM: success Building production JavaScript and CSS bundles - 88.348s 5:13:04 PM: [webpack.cache.PackFileCacheStrategy] Serializing big strings (209kiB) impacts deserialization performance (consider using Buffer instead and decode when needed) 5:13:04 PM: [webpack.cache.PackFileCacheStrategy] Serializing big strings (209kiB) impacts deserialization performance (consider using Buffer instead and decode when needed) 5:13:05 PM: [webpack.cache.PackFileCacheStrategy] Serializing big strings (209kiB) impacts deserialization performance (consider using Buffer instead and decode when needed) 5:13:13 PM: success Building Rendering Engines - 26.504s 5:13:46 PM: success Building HTML renderer - 32.426s 5:13:48 PM: success Execute page configs - 2.099s 5:13:52 PM: success Validating Rendering Engines - 4.433s 5:13:52 PM: success Caching Webpack compilations - 0.001s 5:13:53 PM: success run queries in workers - 0.759s - 151/151 198.98/s 5:13:53 PM: success Merge worker state - 0.003s 5:13:53 PM: success Rewriting compilation hashes - 0.001s 5:13:53 PM: success Writing page-data.json files to public directory - 0.169s - 135/140 827.62/s 5:14:03 PM: success Building static HTML for pages - 5.549s - 135/135 24.33/s 5:14:03 PM: info [gatsby-plugin-netlify] Creating SSR/DSG redirects... 5:14:03 PM: info [gatsby-plugin-netlify] Created 5 SSR/DSG redirects... 5:14:04 PM: info [gatsby-plugin-netlify] Creating SSR/DSG redirects... 5:14:04 PM: info [gatsby-plugin-netlify] Created 5 SSR/DSG redirects... 5:14:04 PM: success onPostBuild - 0.984s 5:14:04 PM: 5:14:04 PM: Pages 5:14:04 PM: ┌ src/templates/services.jsx 5:14:04 PM: │ ├ /services/returns-management-rma-and-refurbishing/ 5:14:04 PM: │ └ ...6 more pages available 5:14:04 PM: ├ src/templates/servicesArchive.jsx 5:14:04 PM: │ └ /services/ 5:14:04 PM: ├ src/templates/blog.jsx 5:14:04 PM: │ ├ /blog/5-compelling-reasons-why-canadian-businesses-should-choose-a-canadian-distributor/ 5:14:04 PM: │ └ ...69 more pages available 5:14:04 PM: ├ src/templates/blogArchive.jsx 5:14:04 PM: │ ├ /blog/ 5:14:04 PM: │ └ ...4 more pages available 5:14:04 PM: ├ src/templates/page.jsx 5:14:04 PM: │ ├ /terms-and-conditions/ 5:14:04 PM: │ └ ...3 more pages available 5:14:04 PM: ├ src/templates/vendors.jsx 5:14:04 PM: │ ├ /vendors/preseem/ 5:14:04 PM: │ └ ...28 more pages available 5:14:04 PM: ├ src/gatsby-theme-q3/pages/404.jsx 5:14:04 PM: │ ├ /404/ 5:14:04 PM: │ └ /404.html 5:14:04 PM: ├ src/gatsby-theme-q3/pages/login.jsx 5:14:04 PM: │ └ /login/ 5:14:04 PM: ├ src/gatsby-theme-q3/pages/password-change.jsx 5:14:04 PM: │ └ /password-change/ 5:14:04 PM: ├ src/gatsby-theme-q3/pages/password-reset.jsx 5:14:04 PM: │ └ /password-reset/ 5:14:04 PM: ├ src/gatsby-theme-q3/pages/reverify.jsx 5:14:04 PM: │ └ /reverify/ 5:14:04 PM: ├ src/gatsby-theme-q3/pages/verify.jsx 5:14:04 PM: │ └ /verify/ 5:14:04 PM: ├ src/pages/404.jsx 5:14:04 PM: │ └ /404/ 5:14:04 PM: ├ src/pages/account.jsx 5:14:04 PM: │ └ /account/ 5:14:04 PM: ├ src/pages/acknowledged.jsx 5:14:04 PM: │ └ /acknowledged/ 5:14:04 PM: ├ src/pages/checkout.jsx 5:14:04 PM: │ └ /checkout/ 5:14:04 PM: ├ src/pages/contact-thanks.jsx 5:14:04 PM: │ └ /contact-thanks/ 5:14:04 PM: ├ src/pages/contact.jsx 5:14:04 PM: │ └ /contact/ 5:14:04 PM: ├ src/pages/index.jsx 5:14:04 PM: │ └ / 5:14:04 PM: ├ src/pages/order-thanks.jsx 5:14:04 PM: │ └ /order-thanks/ 5:14:04 PM: ├ src/pages/pay-guest.jsx 5:14:04 PM: │ └ /pay-guest/ 5:14:04 PM: ├ src/pages/pay.jsx 5:14:04 PM: │ └ /pay/ 5:14:04 PM: ├ src/pages/product-categories.jsx 5:14:04 PM: │ └ ∞ /product-categories/ 5:14:04 PM: ├ src/pages/product-searches.jsx 5:14:04 PM: │ └ ∞ /product-searches/ 5:14:04 PM: ├ src/pages/product-vendors.jsx 5:14:04 PM: │ └ ∞ /product-vendors/ 5:14:04 PM: ├ src/pages/products.jsx 5:14:04 PM: │ └ ∞ /products/ 5:14:04 PM: ├ src/pages/recovery.jsx 5:14:04 PM: │ └ /recovery/ 5:14:04 PM: ├ src/pages/reseller-thanks.jsx 5:14:04 PM: │ └ /reseller-thanks/ 5:14:04 PM: ├ src/pages/search.jsx 5:14:04 PM: │ └ ∞ /search/ 5:14:04 PM: └ src/pages/vendors.jsx 5:14:04 PM: └ /vendors/ 5:14:04 PM: ╭────────────────────────────────────────────────────────────────────╮ 5:14:04 PM: │ │ 5:14:04 PM: │ (SSG) Generated at build time │ 5:14:04 PM: │ D (DSG) Deferred static generation - page generated at runtime │ 5:14:04 PM: │ ∞ (SSR) Server-side renders at runtime (uses getServerData) │ 5:14:04 PM: │ λ (Function) Gatsby function │ 5:14:04 PM: │ │ 5:14:04 PM: ╰────────────────────────────────────────────────────────────────────╯ 5:14:04 PM: info Done building in 182.466779608 sec 5:14:04 PM: info Built pages: 5:14:04 PM: Updated page: /services/returns-management-rma-and-refurbishing/ 5:14:04 PM: Updated page: /services/provisioning/ 5:14:04 PM: Updated page: /services/kitting/ 5:14:04 PM: Updated page: /services/blind-drop-shipping/ 5:14:04 PM: Updated page: /services/labelling-endpoint-boxes/ 5:14:04 PM: Updated page: /services/product-customization/ 5:14:04 PM: Updated page: /services/custom-firmware-loading/ 5:14:04 PM: Updated page: /services/ 5:14:04 PM: Updated page: /blog/5-compelling-reasons-why-canadian-businesses-should-choose-a-canadian-distributor/ 5:14:04 PM: Updated page: /blog/aterlo-and-tdl-gentek-partner-to-enhance-telecom-services-in-canada-with-preseem/ 5:14:04 PM: Updated page: /blog/ale-partners-with-vad-tdl-gentek-to-deliver-ale-unified-communications-and-telephony-solutions-to-businesses-across-canada/ 5:14:04 PM: Updated page: /blog/unified-communications-the-year-in-review/ 5:14:04 PM: Updated page: /blog/tdl-canada-acquires-gentek-marketing-inc-creating-a-canadian-tdl-distribution-powerhouse/ 5:14:04 PM: Updated page: /blog/top-10-reasons-to-buy-snom/ 5:14:04 PM: Updated page: /blog/grandstreams-portable-wi-fi-ip-phones-certified-with-zoom-phone/ 5:14:04 PM: Updated page: /blog/tdl-gentek-brings-taranas-g1-next-generation-fixed-wireless-platform-to-canada/ 5:14:04 PM: Updated page: /blog/how-to-ship-voip-and-networking-gear-to-your-customers/ 5:14:04 PM: Updated page: /blog/picking-the-right-hardware-distribution-partner/ 5:14:04 PM: Updated page: /blog/remote-hardware-provisioning-strategies-for-it-providers/ 5:14:04 PM: Updated page: /blog/business-enablement-a-necessary-value-add-for-resellers-and-providers/ 5:14:04 PM: Updated page: /blog/how-to-introduce-your-var-or-msp-to-new-verticals/ 5:14:04 PM: Updated page: /blog/what-zero-touch-provisioning-can-automate-for-service-providers/ 5:14:04 PM: Updated page: /blog/giving-your-voip-users-the-quality-they-deserve/ 5:14:04 PM: Updated page: /blog/upselling-wireless-headsets-with-new-voip-devices/ 5:14:04 PM: Updated page: /blog/why-should-you-bundle-headsets-with-ip-phone-offerings/ 5:14:04 PM: Updated page: /blog/why-integrations-are-essential-to-selling-ip-pbx-solutions/ 5:14:04 PM: Updated page: /blog/why-choose-a-canadian-or-national-distributor-over-an-international-one/ 5:14:04 PM: Updated page: /blog/how-blind-drop-shipping-and-private-labelling-benefits-resellers/ 5:14:04 PM: Updated page: /blog/why-you-should-always-buy-from-an-authorized-distributor/ 5:14:04 PM: Updated page: /blog/the-just-in-time-inventory-method-can-help-resellers-decrease-overhead-costs/ 5:14:04 PM: Updated page: /blog/hardware-comparison-strategies-choosing-between-two-equal-products/ 5:14:04 PM: Updated page: /blog/how-to-get-more-out-of-attending-trade-shows/ 5:14:04 PM: Updated page: /blog/the-benefits-of-attending-a-vendor-trade-show/ 5:14:04 PM: Updated page: /blog/are-you-making-the-most-of-your-distributor-partnership/ 5:14:04 PM: Updated page: /blog/the-best-packaging-inserts-for-your-hardware-shipments/ 5:14:04 PM: Updated page: /blog/why-it-service-providers-should-deal-with-distributors-over-wholesalers/ 5:14:04 PM: Updated page: /blog/setting-the-right-margins-on-hardware/ 5:14:04 PM: Updated page: /blog/how-to-address-adoption-barriers-with-your-products/ 5:14:04 PM: Updated page: /blog/the-best-ways-to-train-your-customers-on-new-devices/ 5:14:04 PM: Updated page: /blog/reselling-cloud-device-management-services/ 5:14:04 PM: Updated page: /blog/the-flexibility-of-voip/ 5:14:04 PM: Updated page: /blog/a-message-from-gentek-about-covid-19/ 5:14:04 PM: Updated page: /blog/standardize-your-hardware-solutions-to-save-resources/ 5:14:04 PM: Updated page: /blog/sd-wan-offers-a-platform-for-growth/ 5:14:04 PM: Updated page: /blog/choose-better-phone-equipment-for-your-voip-customers/ 5:14:04 PM: Updated page: /blog/when-fewer-products-is-a-good-thing-for-resellers/ 5:14:04 PM: Updated page: /blog/should-you-upgrade-your-customers-firmware/ 5:14:04 PM: Updated page: /blog/teaching-customers-about-different-manufacturer-warranties/ 5:14:04 PM: Updated page: /blog/how-customer-feedback-improves-your-product-selection/ 5:14:04 PM: Updated page: /blog/product-differentiation-strategies-that-ease-onboarding-pain/ 5:14:04 PM: Updated page: /blog/help-your-customers-extend-their-hardware-lifecycles/ 5:14:04 PM: Updated page: /blog/how-resellers-can-better-handle-hardware-returns/ 5:14:04 PM: Updated page: /blog/why-and-when-you-should-send-out-shipping-notifications/ 5:14:04 PM: Updated page: /blog/the-importance-of-personalized-customer-service-in-distribution/ 5:14:04 PM: Updated page: /blog/why-collect-customer-feedback-on-product-quality-and-how/ 5:14:04 PM: Updated page: /blog/what-are-the-best-channels-for-technical-support/ 5:14:04 PM: Updated page: /blog/how-to-explain-technology-products-as-a-reseller/ 5:14:04 PM: Updated page: /blog/why-define-a-vertical-for-your-var-or-msp-business/ 5:14:04 PM: Updated page: /blog/how-to-pick-a-reseller-channel-program/ 5:14:04 PM: Updated page: /blog/how-culture-adds-value-to-your-reseller-business/ 5:14:04 PM: Updated page: /blog/how-to-reinforce-a-reseller-brand-during-product-delivery/ 5:14:04 PM: Updated page: /blog/open-source-versus-proprietary-ip-pbx/ 5:14:04 PM: Updated page: /blog/lesser-known-ip-pbx-features-that-providers-should-promote/ 5:14:04 PM: Updated page: /blog/windows-versus-linux-based-pbxs-installation-and-maintenance/ 5:14:04 PM: Updated page: /blog/why-unified-communications-is-an-easier-sell-than-vanilla-voice-services/ 5:14:04 PM: Updated page: /blog/why-video-conferencing-trumps-audio-for-business-communications/ 5:14:04 PM: Updated page: /blog/flexible-sipandroid-conferencing-with-the-grandstream-gvc3200/ 5:14:04 PM: Updated page: /blog/top-voip-phone-features-to-tout-to-your-customers/ 5:14:04 PM: Updated page: /blog/accessories-worth-bundling-into-your-conference-phone-solutions/ 5:14:04 PM: Updated page: /blog/what-you-need-to-know-about-ransomware-to-keep-your-data-safe/ 5:14:04 PM: Updated page: /blog/helping-your-customers-choose-the-optimal-headset-for-their-workforce/ 5:14:04 PM: Updated page: /blog/how-to-help-your-customers-get-the-most-from-voip/ 5:14:04 PM: Updated page: /blog/work-smarter-with-meeting-room-collaboration-solutions/ 5:14:04 PM: Updated page: /blog/improving-wi-fi-for-small-businesses/ 5:14:04 PM: Updated page: /blog/team-collaboration-products-are-driving-the-need-for-robust-voip-services/ 5:14:04 PM: Updated page: /blog/the-ultimate-flexibility-in-voice-communications-voice-over-wireless/ 5:14:04 PM: Updated page: /blog/the-office-goes-where-the-employee-goes-the-continued-growth-of-video-conferencing/ 5:14:04 PM: Updated page: /blog/what-iot-means-for-networks/ 5:14:04 PM: Updated page: /blog/ 5:14:04 PM: Updated page: /blog/2/ 5:14:04 PM: Updated page: /blog/3/ 5:14:04 PM: Updated page: /blog/4/ 5:14:04 PM: Updated page: /blog/5/ 5:14:04 PM: Updated page: /terms-and-conditions/ 5:14:04 PM: Updated page: /company/ 5:14:04 PM: Updated page: /signup/ 5:14:04 PM: Updated page: /privacy-policy/ 5:14:04 PM: Updated page: /vendors/preseem/ 5:14:04 PM: Updated page: /vendors/smartrg/ 5:14:04 PM: Updated page: /vendors/alcatel-lucent/ 5:14:04 PM: Updated page: /vendors/hammond-manufacturing/ 5:14:04 PM: Updated page: /vendors/grandstream/ 5:14:04 PM: Updated page: /vendors/vilo-living/ 5:14:04 PM: Updated page: /vendors/algo/ 5:14:04 PM: Updated page: /vendors/tripp-lite-by-eaton/ 5:14:04 PM: Updated page: /vendors/yealink/ 5:14:04 PM: Updated page: /vendors/technicolor/ 5:14:04 PM: Updated page: /vendors/tarana-wireless/ 5:14:04 PM: Updated page: /vendors/fanvil/ 5:14:04 PM: Updated page: /vendors/rabbitrun/ 5:14:04 PM: Updated page: /vendors/snom/ 5:14:04 PM: Updated page: /vendors/vtech-hospitality/ 5:14:04 PM: Updated page: /vendors/vtech/ 5:14:04 PM: Updated page: /vendors/patton/ 5:14:04 PM: Updated page: /vendors/mitel/ 5:14:04 PM: Updated page: /vendors/jabra/ 5:14:04 PM: Updated page: /vendors/digium/ 5:14:04 PM: Updated page: /vendors/cisco-mpp/ 5:14:04 PM: Updated page: /vendors/cbn/ 5:14:04 PM: Updated page: /vendors/audiocodes/ 5:14:04 PM: Updated page: /vendors/3cx/ 5:14:04 PM: Updated page: /vendors/plantronics/ 5:14:04 PM: Updated page: /vendors/sangoma/ 5:14:04 PM: Updated page: /vendors/sonicwall/ 5:14:04 PM: Updated page: /vendors/tp-link/ 5:14:04 PM: Updated page: /vendors/poly/ 5:14:04 PM: Updated page: /404/ 5:14:04 PM: Updated page: /404.html 5:14:04 PM: Updated page: /login/ 5:14:04 PM: Updated page: /password-change/ 5:14:04 PM: Updated page: /password-reset/ 5:14:04 PM: Updated page: /reverify/ 5:14:04 PM: Updated page: /verify/ 5:14:04 PM: Updated page: /account/ 5:14:04 PM: Updated page: /acknowledged/ 5:14:04 PM: Updated page: /checkout/ 5:14:04 PM: Updated page: /contact-thanks/ 5:14:04 PM: Updated page: /contact/ 5:14:04 PM: Updated page: / 5:14:04 PM: Updated page: /order-thanks/ 5:14:04 PM: Updated page: /pay-guest/ 5:14:04 PM: Updated page: /pay/ 5:14:04 PM: Updated page: /recovery/ 5:14:04 PM: Updated page: /reseller-thanks/ 5:14:04 PM: Updated page: /vendors/ 5:14:06 PM: Done in 183.77s. 5:14:06 PM: ​ 5:14:06 PM: ❯ Updated config 5:14:06 PM: build: 5:14:06 PM: base: /opt/build/repo/client/gentek-www 5:14:06 PM: command: yarn build 5:14:06 PM: commandOrigin: ui 5:14:06 PM: environment: 5:14:06 PM: - AWS_LAMBDA_JS_RUNTIME 5:14:06 PM: - CONTENTFUL_ACCESS_TOKEN 5:14:06 PM: - CONTENTFUL_SPACE_ID 5:14:06 PM: - GATSBY_APP_BASE_SECRET 5:14:06 PM: - NETLIFY_BUILD_DEBUG 5:14:06 PM: - NETLIFY_RESERVED__URL 5:14:06 PM: - NODE_OPTIONS 5:14:06 PM: - NODE_VERSION 5:14:06 PM: - NPM_TOKEN 5:14:06 PM: - Q3_ACCESS_TOKEN 5:14:06 PM: - GATSBY_APP_BASE_URL 5:14:06 PM: - DATASOURCE 5:14:06 PM: - Q3_URL 5:14:06 PM: processing: 5:14:06 PM: css: 5:14:06 PM: bundle: true 5:14:06 PM: minify: false 5:14:06 PM: html: 5:14:06 PM: pretty_urls: true 5:14:06 PM: images: 5:14:06 PM: compress: true 5:14:06 PM: js: 5:14:06 PM: bundle: true 5:14:06 PM: minify: false 5:14:06 PM: skip_processing: false 5:14:06 PM: publish: /opt/build/repo/client/gentek-www/public 5:14:06 PM: publishOrigin: ui 5:14:06 PM: headers: 5:14:06 PM: - for: /* values: Referrer-Policy: same-origin X-Content-Type-Options: nosniff X-Frame-Options: DENY X-XSS-Protection: 1; mode=block - for: /0f99a215514c1e0793a3be470b5573eab28a4eeb-64f0528509bc2a363710.js values: Cache-Control: public, max-age=31536000, immutable - for: /750e0039a0e2707f25872beb2f8945aaf84785f0-52ea6aa87852f00b8bb8.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-services-jsx-c688c94a9a6a284d0073.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-services-archive-jsx-9cd0a3d4db953a042aac.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-blog-jsx-c7d0c7c46dc21bf6185c.js values: Cache-Control: public, max-age=31536000, immutable - for: /0bc64b50cb49eca4689462d8398d3842e70a7ac7-e28fe08b704ab56ddd62.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-blog-archive-jsx-4ffce7e8d69c47aba829.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-page-jsx-597aafb53ccdc6381016.js values: Cache-Control: public, max-age=31536000, immutable - for: /styles.20b0d80880bce29cbe28.css values: Cache-Control: public, max-age=31536000, immutable - for: /cdcb5612af46a34a6a031aab28d8eba5fa22d8ac-616cca62f4ee4e152bad.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-vendors-jsx-07976258aba00035e176.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-404-jsx-be7945eb67ea0da338a9.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-login-jsx-6fc26412bd87930d9b88.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-password-change-jsx-32fb7ed3dbfd4c2e4f0a.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-password-reset-jsx-ba669a7c03fb41659475.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-reverify-jsx-78b85dc21e72f978f7a8.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-verify-jsx-4eada9b89668e745b840.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-404-jsx-22ad4ba2a975b27f4563.js values: Cache-Control: public, max-age=31536000, immutable - for: /a18d146f-4fe9d533b928d0a6bed8.js values: Cache-Control: public, max-age=31536000, immutable - for: /2cebf7b33ba37f927dc5d93bacd00eae99b9aed1-7b36d802d7634a3ea184.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-account-jsx-987b57e1d76a23bdf8c3.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-acknowledged-jsx-e532907e37368bd1b3c9.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-checkout-jsx-a60ba13455ec62e9e22d.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-contact-thanks-jsx-e2202352f99f122f0fc0.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-contact-jsx-ff956678fd1107c88e57.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-index-jsx-475d845d9766de22422b.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-order-thanks-jsx-d34fe721558a6627b064.js values: Cache-Control: public, max-age=31536000, immutable - for: /d8aa0b4ee16f01f5fe4bef0287b0007dbb02f6e5-40aa1e6bfe8ab77956f7.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-pay-guest-jsx-9a7c421fb5f7d0679c9b.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-pay-jsx-f773c600937ce01b1f80.js values: Cache-Control: public, max-age=31536000, immutable - for: /c9b50ccc85aefe0b7b222c540939092385a1b726-38575200bb912a157880.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-product-categories-jsx-6aa18fb61fa98f4eea3f.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-product-searches-jsx-224785376ff1239b5880.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-product-vendors-jsx-94ec9b268a9123f55856.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-products-jsx-2e46fd351790608f584e.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-recovery-jsx-257ae3546d36113b3eae.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-reseller-thanks-jsx-c9bf8442c0bd7b278701.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-search-jsx-a456446f27184d0bed8a.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-vendors-jsx-74af91471bce97b8e0da.js values: Cache-Control: public, max-age=31536000, immutable - for: /webpack-runtime-4b9cb799758ee7f1d40d.js values: Cache-Control: public, max-age=31536000, immutable - for: /framework-f8028877892c75d2334f.js values: Cache-Control: public, max-age=31536000, immutable - for: /ec23b2e1-5fd354bf69e388e2d578.js values: Cache-Control: public, max-age=31536000, immutable - for: /c78d26b1-16e44e2039039fc1ed32.js values: Cache-Control: public, max-age=31536000, immutable - for: /0ba0eeba-d4e9d22b89fae93e4bf9.js values: Cache-Control: public, max-age=31536000, immutable - for: /0a8d1f5f-dc4941a5329c9c395b2c.js values: Cache-Control: public, max-age=31536000, immutable - for: /6cc2ee1d-3af6bbf06eb769dcf293.js values: Cache-Control: public, max-age=31536000, immutable - for: /90c98892-a7e7c84c62acfa2deb11.js values: Cache-Control: public, max-age=31536000, immutable - for: /app-b6fab7f0c6340774570a.js values: Cache-Control: public, max-age=31536000, immutable - for: /static/* values: Cache-Control: public, max-age=31536000, immutable - for: /sw.js values: Cache-Control: no-cache - for: /services/returns-management-rma-and-refurbishing/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/provisioning/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/kitting/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/blind-drop-shipping/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/labelling-endpoint-boxes/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/product-customization/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/custom-firmware-loading/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/5-compelling-reasons-why-canadian-businesses-should-choose-a-canadian-distributor/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/aterlo-and-tdl-gentek-partner-to-enhance-telecom-services-in-canada-with-preseem/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/ale-partners-with-vad-tdl-gentek-to-deliver-ale-unified-communications-and-telephony-solutions-to-businesses-across-canada/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/unified-communications-the-year-in-review/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/tdl-canada-acquires-gentek-marketing-inc-creating-a-canadian-tdl-distribution-powerhouse/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/top-10-reasons-to-buy-snom/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/grandstreams-portable-wi-fi-ip-phones-certified-with-zoom-phone/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/tdl-gentek-brings-taranas-g1-next-generation-fixed-wireless-platform-to-canada/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/how-to-ship-voip-and-networking-gear-to-your-customers/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/picking-the-right-hardware-distribution-partner/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/remote-hardware-provisioning-strategies-for-it-providers/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/business-enablement-a-necessary-value-add-for-resellers-and-providers/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/how-to-introduce-your-var-or-msp-to-new-verticals/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/what-zero-touch-provisioning-can-automate-for-service-providers/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/giving-your-voip-users-the-quality-they-deserve/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/upselling-wireless-headsets-with-new-voip-devices/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/why-should-you-bundle-headsets-with-ip-phone-offerings/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/why-integrations-are-essential-to-selling-ip-pbx-solutions/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/why-choose-a-canadian-or-national-distributor-over-an-international-one/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/how-blind-drop-shipping-and-private-labelling-benefits-resellers/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/why-you-should-always-buy-from-an-authorized-distributor/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/the-just-in-time-inventory-method-can-help-resellers-decrease-overhead-costs/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/hardware-comparison-strategies-choosing-between-two-equal-products/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/how-to-get-more-out-of-attending-trade-shows/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/the-benefits-of-attending-a-vendor-trade-show/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/are-you-making-the-most-of-your-distributor-partnership/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/the-best-packaging-inserts-for-your-hardware-shipments/ 5:14:06 PM: valuo es: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/why-it-service-providers-should-deal-with-distributors-over-wholesalers/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/setting-the-right-margins-on-hardware/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/how-to-address-adoption-barriers-with-your-products/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/the-best-ways-to-train-your-customers-on-new-devices/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/reselling-cloud-device-management-services/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/the-flexibility-of-voip/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/a-message-from-gentek-about-covid-19/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/standardize-your-hardware-solutions-to-save-resources/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/sd-wan-offers-a-platform-for-growth/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/choose-better-phone-equipment-for-your-voip-customers/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/when-fewer-products-is-a-good-thing-for-resellers/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/should-you-upgrade-your-customers-firmware/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/teaching-customers-about-different-manufacturer-warranties/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: - for: /blog/how-customer-feedback-improves-your-product-selection/ 5:14:06 PM: values: 5:14:06 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:06 PM: plugins: 5:14:06 PM: - inputs: {} 5:14:06 PM: origin: config 5:14:06 PM: package: "@netlify/plugin-gatsby" 5:14:06 PM: redirects: 5:14:06 PM: - force: true 5:14:06 PM: from: https://gentek-www.netlify.app/* 5:14:06 PM: status: 301 5:14:06 PM: to: https://gentek.com/:splat 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers 5:14:06 PM: status: 301 5:14:06 PM: to: / 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/home.php 5:14:06 PM: status: 301 5:14:06 PM: to: / 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/products.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/partners.php 5:14:06 PM: status: 301 5:14:06 PM: to: /vendors 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/contact.php 5:14:06 PM: status: 301 5:14:06 PM: to: /contact 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/login.php 5:14:06 PM: status: 301 5:14:06 PM: to: /login 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/retrieve.php 5:14:06 PM: status: 301 5:14:06 PM: to: /password-reset 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/about_us.php 5:14:06 PM: status: 301 5:14:06 PM: to: /company 5:14:06 PM: - force: true 5:14:06 PM: from: /sign-up 5:14:06 PM: status: 301 5:14:06 PM: to: /signup 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AARFP35 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aarfp35 5:14:06 PM: - force: true 5:14:06 PM: from: /product/68637 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aarfp35 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/68637-AARFP35-COMPONENTS%20FOR%20CORDLESS%20TELEPHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aarfp35 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aarfp35 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aarfp35 5:14:06 PM: - force: true 5:14:06 PM: from: /products/oem-and-misc./BBKEY2 5:14:06 PM: status: 301 5:14:06 PM: to: /products/bbkey2 5:14:06 PM: - force: true 5:14:06 PM: from: /product/BBKEY2 5:14:06 PM: status: 301 5:14:06 PM: to: /products/bbkey2 5:14:06 PM: - force: true 5:14:06 PM: from: /product/bbkey2 5:14:06 PM: status: 301 5:14:06 PM: to: /products/bbkey2 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/BBKEY2-BBKEY2-OEM%20AND%20MISC..php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/bbkey2 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=bbkey2 5:14:06 PM: status: 301 5:14:06 PM: to: /products/bbkey2 5:14:06 PM: - force: true 5:14:06 PM: from: /products/oem-and-misc./ML025GOPP 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ml025gopp 5:14:06 PM: - force: true 5:14:06 PM: from: /product/M%2025GOPP 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ml025gopp 5:14:06 PM: - force: true 5:14:06 PM: from: /product/m%2025gopp 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ml025gopp 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/M%2025GOPP-ML025GOPP-OEM%20AND%20MISC..php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ml025gopp 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=ml025gopp 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ml025gopp 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/QUICKADD 5:14:06 PM: status: 301 5:14:06 PM: to: /products/quickadd 5:14:06 PM: - force: true 5:14:06 PM: from: /product/ 5:14:06 PM: status: 301 5:14:06 PM: to: /products/sgvega100grmb 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/QUICKADD-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/quickadd 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=quickadd 5:14:06 PM: status: 301 5:14:06 PM: to: /products/quickadd 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AAOMM10 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aaomm10 5:14:06 PM: - force: true 5:14:06 PM: from: /product/68667 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aaomm10 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/68667-AAOMM10-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aaomm10 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aaomm10 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aaomm10 5:14:06 PM: - force: true 5:14:06 PM: from: /products/3cx/3CX_SKU 5:14:06 PM: status: 301 5:14:06 PM: to: /products/3cx_sku 5:14:06 PM: - force: true 5:14:06 PM: from: /product/3CXSKU 5:14:06 PM: status: 301 5:14:06 PM: to: /products/3cx_sku 5:14:06 PM: - force: true 5:14:06 PM: from: /product/3cxsku 5:14:06 PM: status: 301 5:14:06 PM: to: /products/3cx_sku 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/3CXSKU-3CX_SKU-PHONE%20SYSTEMS-3CX.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/3cx_sku 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=3cx_sku 5:14:06 PM: status: 301 5:14:06 PM: to: /products/3cx_sku 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AA50006580 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa50006580 5:14:06 PM: - force: true 5:14:06 PM: from: /product/50006580 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa50006580 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/50006580-AA50006580-VOIP%20CORDLESS%20PHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa50006580 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aa50006580 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa50006580 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AA6390 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa6390 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6390 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa6390 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/6390-AA6390-ANALOG%20PHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa6390 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aa6390 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa6390 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AA6392 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa6392 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6392 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa6392 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/6392-AA6392-ANALOG%20PHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa6392 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aa6392 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa6392 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AA63S 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa63s 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6863I 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa63s 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6863i 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa63s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/6863I-AA63S-VOIP%20DESK%20PHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa63s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aa63s 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa63s 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AA65S 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa65s 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6865 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa65s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/6865-AA65S-VOIP%20DESK%20PHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa65s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aa65s 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa65s 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AA67S 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa67s 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6867I 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa67s 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6867i 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa67s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/6867I-AA67S-VOIP%20DESK%20PHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa67s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aa67s 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa67s 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AA69S 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa69s 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6869I 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa69s 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6869i 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa69s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/6869I-AA69S-VOIP%20DESK%20PHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa69s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aa69s 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa69s 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AA73S 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa73s 5:14:06 PM: - force: true 5:14:06 PM: from: /product/6873 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa73s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/6873-AA73S-VOIP%20DESK%20PHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa73s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aa73s 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa73s 5:14:06 PM: - force: true 5:14:06 PM: from: /products/mitel/AA91LP 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa91lp 5:14:06 PM: - force: true 5:14:06 PM: from: /product/9116LP 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa91lp 5:14:06 PM: - force: true 5:14:06 PM: from: /product/9116lp 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa91lp 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/9116LP-AA91LP-ANALOG%20PHONES-MITEL.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa91lp 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=aa91lp 5:14:06 PM: status: 301 5:14:06 PM: to: /products/aa91lp 5:14:06 PM: - force: true 5:14:06 PM: from: /products/audiocodes/AC108M 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac108m 5:14:06 PM: - force: true 5:14:06 PM: from: /product/M1K%20MEDIANT%201000 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac1k2b 5:14:06 PM: - force: true 5:14:06 PM: from: /product/m1k%20mediant%201000 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac1k2b 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/M1K%20MEDIANT%201000-AC108M-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac108m 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=ac108m 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac108m 5:14:06 PM: - force: true 5:14:06 PM: from: /products/audiocodes/AC124M 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac124m 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/M1K%20MEDIANT%201000-AC124M-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac124m 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=ac124m 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac124m 5:14:06 PM: - force: true 5:14:06 PM: from: /products/audiocodes/AC124O 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac124o 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/M1K%20MEDIANT%201000-AC124O-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac124o 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=ac124o 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac124o 5:14:06 PM: - force: true 5:14:06 PM: from: /products/audiocodes/AC124S 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac124s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/M1K%20MEDIANT%201000-AC124S-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac124s 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=ac124s 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac124s 5:14:06 PM: - force: true 5:14:06 PM: from: /products/audiocodes/AC12SS 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac12ss 5:14:06 PM: - force: true 5:14:06 PM: from: /product/MP112%20MEDIAPACK%20112 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac12ss 5:14:06 PM: - force: true 5:14:06 PM: from: /product/mp112%20mediapack%20112 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac12ss 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/MP112%20MEDIAPACK%20112-AC12SS-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac12ss 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/product_details.php?ITEMNO=ac12ss 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac12ss 5:14:06 PM: - force: true 5:14:06 PM: from: /products/audiocodes/AC14OS 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac14os 5:14:06 PM: - force: true 5:14:06 PM: from: /product/MP114%20MEDIAPACK%20114 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac4sos 5:14:06 PM: - force: true 5:14:06 PM: from: /product/mp114%20mediapack%20114 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac4sos 5:14:06 PM: - force: true 5:14:06 PM: from: /resellers/MP114%20MEDIAPACK%20114-AC14OS-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:06 PM: status: 301 5:14:06 PM: to: /products/ac14os 5:14:06 PM: ​ 5:14:06 PM: (build.command completed in 3m 4.3s) 5:14:06 PM: Build step duration: build.command completed in 184337ms 5:14:06 PM: ​ 5:14:06 PM: @netlify/plugin-gatsby (onBuild event) 5:14:06 PM: ──────────────────────────────────────────────────────────────── 5:14:06 PM: ​ 5:14:06 PM: Step starting. 5:14:06 PM: Step started. 5:14:06 PM: Plugin logic started. 5:14:06 PM: Enabling Gatsby API/SSR/DSG support 5:14:06 PM: Copying native binaries for linux-x64 abi83 5:14:06 PM: Copying /opt/build/repo/client/node_modules/lmdb-store/prebuilds/linux-x64/node.abi83.node to /opt/build/repo/client/gentek-www/.cache/query-engine/assets/prebuilds/linux-x64/node.abi83.node 5:14:06 PM: Skipping /opt/build/repo/client/node_modules/lmdb-store/prebuilds/linux-x64/node.abi83.glibc.node 5:14:06 PM: Plugin logic ended. 5:14:06 PM: Stop closing. 5:14:06 PM: Step ended. 5:14:06 PM: Netlify configuration property "functions.__api" value changed to { 5:14:06 PM: included_files: [ "/opt/build/repo/client/gentek-www/.cache/functions/**" ], 5:14:06 PM: external_node_modules: [ "msgpackr-extract" ] 5:14:06 PM: }. 5:14:06 PM: Netlify configuration property "functions.__dsg" value changed to { 5:14:06 PM: included_files: [ 5:14:06 PM: "public/404.html", 5:14:06 PM: "public/500.html", 5:14:06 PM: "/opt/build/repo/client/gentek-www/.cache/query-engine/**", 5:14:06 PM: "/opt/build/repo/client/gentek-www/.cache/page-ssr/**", 5:14:06 PM: "!**/*.js.map", 5:14:06 PM: "/opt/build/repo/client/gentek-www/.cache/data/**" 5:14:06 PM: ], 5:14:06 PM: external_node_modules: [ "msgpackr-extract" ], 5:14:06 PM: node_bundler: "esbuild" 5:14:06 PM: }. 5:14:06 PM: Netlify configuration property "functions.__ssr" value changed to { 5:14:06 PM: included_files: [ 5:14:06 PM: "public/404.html", 5:14:06 PM: "public/500.html", 5:14:06 PM: "/opt/build/repo/client/gentek-www/.cache/query-engine/**", 5:14:06 PM: "/opt/build/repo/client/gentek-www/.cache/page-ssr/**", 5:14:06 PM: "!**/*.js.map", 5:14:06 PM: "/opt/build/repo/client/gentek-www/.cache/data/**" 5:14:06 PM: ], 5:14:06 PM: external_node_modules: [ "msgpackr-extract" ], 5:14:06 PM: node_bundler: "esbuild" 5:14:06 PM: }. 5:14:06 PM: ​ 5:14:06 PM: ❯ Updated config 5:14:07 PM: build: 5:14:07 PM: base: /opt/build/repo/client/gentek-www 5:14:07 PM: command: yarn build 5:14:07 PM: commandOrigin: ui 5:14:07 PM: environment: 5:14:07 PM: - AWS_LAMBDA_JS_RUNTIME 5:14:07 PM: - CONTENTFUL_ACCESS_TOKEN 5:14:07 PM: - CONTENTFUL_SPACE_ID 5:14:07 PM: - GATSBY_APP_BASE_SECRET 5:14:07 PM: - NETLIFY_BUILD_DEBUG 5:14:07 PM: - NETLIFY_RESERVED__URL 5:14:07 PM: - NODE_OPTIONS 5:14:07 PM: - NODE_VERSION 5:14:07 PM: - NPM_TOKEN 5:14:07 PM: - Q3_ACCESS_TOKEN 5:14:07 PM: - GATSBY_APP_BASE_URL 5:14:07 PM: - DATASOURCE 5:14:07 PM: - Q3_URL 5:14:07 PM: processing: 5:14:07 PM: css: 5:14:07 PM: bundle: true 5:14:07 PM: minify: false 5:14:07 PM: html: 5:14:07 PM: pretty_urls: true 5:14:07 PM: images: 5:14:07 PM: compress: true 5:14:07 PM: js: 5:14:07 PM: bundle: true 5:14:07 PM: minify: false 5:14:07 PM: skip_processing: false 5:14:07 PM: publish: /opt/build/repo/client/gentek-www/public 5:14:07 PM: publishOrigin: ui 5:14:07 PM: functions: 5:14:07 PM: __api: 5:14:07 PM: external_node_modules: 5:14:07 PM: - msgpackr-extract 5:14:07 PM: included_files: 5:14:07 PM: - /opt/build/repo/client/gentek-www/.cache/functions/** __dsg: external_node_modules: - msgpackr-extract included_files: - public/404.html - public/500.html - /opt/build/repo/client/gentek-www/.cache/query-engine/** - /opt/build/repo/client/gentek-www/.cache/page-ssr/** - "!**/*.js.map" - /opt/build/repo/client/gentek-www/.cache/data/** node_bundler: esbuild __ssr: external_node_modules: - msgpackr-extract included_files: - public/404.html - public/500.html - /opt/build/repo/client/gentek-www/.cache/query-engine/** - /opt/build/repo/client/gentek-www/.cache/page-ssr/** - "!**/*.js.map" - /opt/build/repo/client/gentek-www/.cache/data/** node_bundler: esbuild headers: - for: /* values: Referrer-Policy: same-origin X-Content-Type-Options: nosniff X-Frame-Options: DENY X-XSS-Protection: 1; mode=block - for: /0f99a215514c1e0793a3be470b5573eab28a4eeb-64f0528509bc2a363710.js values: Cache-Control: public, max-age=31536000, immutable - for: /750e0039a0e2707f25872beb2f8945aaf84785f0-52ea6aa87852f00b8bb8.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-services-jsx-c688c94a9a6a284d0073.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-services-archive-jsx-9cd0a3d4db953a042aac.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-blog-jsx-c7d0c7c46dc21bf6185c.js values: Cache-Control: public, max-age=31536000, immutable - for: /0bc64b50cb49eca4689462d8398d3842e70a7ac7-e28fe08b704ab56ddd62.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-blog-archive-jsx-4ffce7e8d69c47aba829.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-page-jsx-597aafb53ccdc6381016.js values: Cache-Control: public, max-age=31536000, immutable - for: /styles.20b0d80880bce29cbe28.css values: Cache-Control: public, max-age=31536000, immutable - for: /cdcb5612af46a34a6a031aab28d8eba5fa22d8ac-616cca62f4ee4e152bad.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-templates-vendors-jsx-07976258aba00035e176.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-404-jsx-be7945eb67ea0da338a9.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-login-jsx-6fc26412bd87930d9b88.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-password-change-jsx-32fb7ed3dbfd4c2e4f0a.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-password-reset-jsx-ba669a7c03fb41659475.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-reverify-jsx-78b85dc21e72f978f7a8.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-gatsby-theme-q-3-pages-verify-jsx-4eada9b89668e745b840.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-404-jsx-22ad4ba2a975b27f4563.js values: Cache-Control: public, max-age=31536000, immutable - for: /a18d146f-4fe9d533b928d0a6bed8.js values: Cache-Control: public, max-age=31536000, immutable - for: /2cebf7b33ba37f927dc5d93bacd00eae99b9aed1-7b36d802d7634a3ea184.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-account-jsx-987b57e1d76a23bdf8c3.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-acknowledged-jsx-e532907e37368bd1b3c9.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-checkout-jsx-a60ba13455ec62e9e22d.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-contact-thanks-jsx-e2202352f99f122f0fc0.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-contact-jsx-ff956678fd1107c88e57.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-index-jsx-475d845d9766de22422b.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-order-thanks-jsx-d34fe721558a6627b064.js values: Cache-Control: public, max-age=31536000, immutable - for: /d8aa0b4ee16f01f5fe4bef0287b0007dbb02f6e5-40aa1e6bfe8ab77956f7.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-pay-guest-jsx-9a7c421fb5f7d0679c9b.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-pay-jsx-f773c600937ce01b1f80.js values: Cache-Control: public, max-age=31536000, immutable - for: /c9b50ccc85aefe0b7b222c540939092385a1b726-38575200bb912a157880.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-product-categories-jsx-6aa18fb61fa98f4eea3f.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-product-searches-jsx-224785376ff1239b5880.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-product-vendors-jsx-94ec9b268a9123f55856.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-products-jsx-2e46fd351790608f584e.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-recovery-jsx-257ae3546d36113b3eae.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-reseller-thanks-jsx-c9bf8442c0bd7b278701.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-search-jsx-a456446f27184d0bed8a.js values: Cache-Control: public, max-age=31536000, immutable - for: /component---src-pages-vendors-jsx-74af91471bce97b8e0da.js values: Cache-Control: public, max-age=31536000, immutable - for: /webpack-runtime-4b9cb799758ee7f1d40d.js values: Cache-Control: public, max-age=31536000, immutable - for: /framework-f8028877892c75d2334f.js values: Cache-Control: public, max-age=31536000, immutable - for: /ec23b2e1-5fd354bf69e388e2d578.js values: Cache-Control: public, max-age=31536000, immutable - for: /c78d26b1-16e44e2039039fc1ed32.js values: Cache-Control: public, max-age=31536000, immutable - for: /0ba0eeba-d4e9d22b89fae93e4bf9.js values: Cache-Control: public, max-age=31536000, immutable - for: /0a8d1f5f-dc4941a5329c9c395b2c.js values: Cache-Control: public, max-age=31536000, immutable - for: /6cc2ee1d-3af6bbf06eb769dcf293.js values: Cache-Control: public, max-age=31536000, immutable - for: /90c98892-a7e7c84c62acfa2deb11.js values: Cache-Control: public, max-age=31536000, immutable - for: /app-b6fab7f0c6340774570a.js values: Cache-Control: public, max-age=31536000, immutable - for: /static/* values: Cache-Control: public, max-age=31536000, immutable - for: /sw.js values: Cache-Control: no-cache - for: /services/returns-management-rma-and-refurbishing/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/provisioning/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/kitting/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/blind-drop-shipping/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/labelling-endpoint-boxes/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/product-customization/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/custom-firmware-loading/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /services/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/5-compelling-reasons-why-canadian-businesses-should-choose-a-canadian-distributor/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/aterlo-and-tdl-gentek-partner-to-enhance-telecom-services-in-canada-with-preseem/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/ale-partners-with-vad-tdl-gentek-to-deliver-ale-unified-communications-and-telephony-solutions-to-businesses-across-canada/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/unified-communications-the-year-in-review/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/tdl-canada-acquires-gentek-marketing-inc-creating-a-canadian-tdl-distribution-powerhouse/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/top-10-reasons-to-buy-snom/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/grandstreams-portable-wi-fi-ip-phones-certified-with-zoom-phone/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/tdl-gentek-brings-taranas-g1-next-generation-fixed-wireless-platform-to-canada/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/how-to-ship-voip-and-networking-gear-to-your-customers/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/picking-the-right-hardware-distribution-partner/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/remote-hardware-provisioning-strategies-for-it-providers/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/business-enablement-a-necessary-value-add-for-resellers-and-providers/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/how-to-introduce-your-var-or-msp-to-new-verticals/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/what-zero-touch-provisioning-can-automate-for-service-providers/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/giving-your-voip-users-the-quality-they-deserve/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/upselling-wireless-headsets-with-new-voip-devices/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin - for: /blog/why-should-you-bundle-headsets-with-ip-phone-offerings/ values: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/why-integrations-are-essential-to-selling-ip-pbx-solutions/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/why-choose-a-canadian-or-national-distributor-over-an-international-one/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/how-blind-drop-shipping-and-private-labelling-benefits-resellers/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/why-you-should-always-buy-from-an-authorized-distributor/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/the-just-in-time-inventory-method-can-help-resellers-decrease-overhead-costs/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/hardware-comparison-strategies-choosing-between-two-equal-products/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/how-to-get-more-out-of-attending-trade-shows/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/the-benefits-of-attending-a-vendor-trade-show/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/are-you-making-the-most-of-your-distributor-partnership/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/the-best-packaging-inserts-for-your-hardware-shipments/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/why-it-service-providers-should-deal-with-distributors-over-wholesalers/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/setting-the-right-margins-on-hardware/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/how-to-address-adoption-barriers-with-your-products/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/the-best-ways-to-train-your-customers-on-new-devices/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/reselling-cloud-device-management-services/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/the-flexibility-of-voip/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/a-message-from-gentek-about-covid-19/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/standardize-your-hardware-solutions-to-save-resources/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/sd-wan-offers-a-platform-for-growth/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/choose-better-phone-equipment-for-your-voip-customers/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/when-fewer-products-is-a-good-thing-for-resellers/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/should-you-upgrade-your-customers-firmware/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/teaching-customers-about-different-manufacturer-warranties/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: - for: /blog/how-customer-feedback-improves-your-product-selection/ 5:14:07 PM: values: 5:14:07 PM: Link: ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=script, ; rel=preload; as=fetch; crossorigin, ; rel=preload; as=fetch; crossorigin 5:14:07 PM: plugins: 5:14:07 PM: - inputs: {} 5:14:07 PM: origin: config 5:14:07 PM: package: "@netlify/plugin-gatsby" 5:14:07 PM: redirects: 5:14:07 PM: - force: true 5:14:07 PM: from: https://gentek-www.netlify.app/* 5:14:07 PM: status: 301 5:14:07 PM: to: https://gentek.com/:splat 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers 5:14:07 PM: status: 301 5:14:07 PM: to: / 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/home.php 5:14:07 PM: status: 301 5:14:07 PM: to: / 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/products.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/partners.php 5:14:07 PM: status: 301 5:14:07 PM: to: /vendors 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/contact.php 5:14:07 PM: status: 301 5:14:07 PM: to: /contact 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/login.php 5:14:07 PM: status: 301 5:14:07 PM: to: /login 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/retrieve.php 5:14:07 PM: status: 301 5:14:07 PM: to: /password-reset 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/about_us.php 5:14:07 PM: status: 301 5:14:07 PM: to: /company 5:14:07 PM: - force: true 5:14:07 PM: from: /sign-up 5:14:07 PM: status: 301 5:14:07 PM: to: /signup 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AARFP35 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aarfp35 5:14:07 PM: - force: true 5:14:07 PM: from: /product/68637 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aarfp35 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/68637-AARFP35-COMPONENTS%20FOR%20CORDLESS%20TELEPHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aarfp35 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aarfp35 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aarfp35 5:14:07 PM: - force: true 5:14:07 PM: from: /products/oem-and-misc./BBKEY2 5:14:07 PM: status: 301 5:14:07 PM: to: /products/bbkey2 5:14:07 PM: - force: true 5:14:07 PM: from: /product/BBKEY2 5:14:07 PM: status: 301 5:14:07 PM: to: /products/bbkey2 5:14:07 PM: - force: true 5:14:07 PM: from: /product/bbkey2 5:14:07 PM: status: 301 5:14:07 PM: to: /products/bbkey2 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/BBKEY2-BBKEY2-OEM%20AND%20MISC..php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/bbkey2 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=bbkey2 5:14:07 PM: status: 301 5:14:07 PM: to: /products/bbkey2 5:14:07 PM: - force: true 5:14:07 PM: from: /products/oem-and-misc./ML025GOPP 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ml025gopp 5:14:07 PM: - force: true 5:14:07 PM: from: /product/M%2025GOPP 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ml025gopp 5:14:07 PM: - force: true 5:14:07 PM: from: /product/m%2025gopp 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ml025gopp 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/M%2025GOPP-ML025GOPP-OEM%20AND%20MISC..php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ml025gopp 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=ml025gopp 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ml025gopp 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/QUICKADD 5:14:07 PM: status: 301 5:14:07 PM: to: /products/quickadd 5:14:07 PM: - force: true 5:14:07 PM: from: /product/ 5:14:07 PM: status: 301 5:14:07 PM: to: /products/sgvega100grmb 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/QUICKADD-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/quickadd 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=quickadd 5:14:07 PM: status: 301 5:14:07 PM: to: /products/quickadd 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AAOMM10 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aaomm10 5:14:07 PM: - force: true 5:14:07 PM: from: /product/68667 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aaomm10 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/68667-AAOMM10-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aaomm10 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aaomm10 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aaomm10 5:14:07 PM: - force: true 5:14:07 PM: from: /products/3cx/3CX_SKU 5:14:07 PM: status: 301 5:14:07 PM: to: /products/3cx_sku 5:14:07 PM: - force: true 5:14:07 PM: from: /product/3CXSKU 5:14:07 PM: status: 301 5:14:07 PM: to: /products/3cx_sku 5:14:07 PM: - force: true 5:14:07 PM: from: /product/3cxsku 5:14:07 PM: status: 301 5:14:07 PM: to: /products/3cx_sku 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/3CXSKU-3CX_SKU-PHONE%20SYSTEMS-3CX.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/3cx_sku 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=3cx_sku 5:14:07 PM: status: 301 5:14:07 PM: to: /products/3cx_sku 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AA50006580 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa50006580 5:14:07 PM: - force: true 5:14:07 PM: from: /product/50006580 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa50006580 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/50006580-AA50006580-VOIP%20CORDLESS%20PHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa50006580 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aa50006580 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa50006580 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AA6390 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa6390 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6390 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa6390 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/6390-AA6390-ANALOG%20PHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa6390 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aa6390 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa6390 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AA6392 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa6392 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6392 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa6392 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/6392-AA6392-ANALOG%20PHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa6392 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aa6392 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa6392 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AA63S 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa63s 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6863I 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa63s 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6863i 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa63s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/6863I-AA63S-VOIP%20DESK%20PHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa63s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aa63s 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa63s 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AA65S 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa65s 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6865 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa65s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/6865-AA65S-VOIP%20DESK%20PHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa65s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aa65s 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa65s 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AA67S 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa67s 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6867I 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa67s 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6867i 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa67s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/6867I-AA67S-VOIP%20DESK%20PHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa67s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aa67s 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa67s 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AA69S 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa69s 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6869I 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa69s 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6869i 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa69s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/6869I-AA69S-VOIP%20DESK%20PHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa69s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aa69s 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa69s 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AA73S 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa73s 5:14:07 PM: - force: true 5:14:07 PM: from: /product/6873 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa73s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/6873-AA73S-VOIP%20DESK%20PHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa73s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aa73s 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa73s 5:14:07 PM: - force: true 5:14:07 PM: from: /products/mitel/AA91LP 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa91lp 5:14:07 PM: - force: true 5:14:07 PM: from: /product/9116LP 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa91lp 5:14:07 PM: - force: true 5:14:07 PM: from: /product/9116lp 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa91lp 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/9116LP-AA91LP-ANALOG%20PHONES-MITEL.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa91lp 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=aa91lp 5:14:07 PM: status: 301 5:14:07 PM: to: /products/aa91lp 5:14:07 PM: - force: true 5:14:07 PM: from: /products/audiocodes/AC108M 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac108m 5:14:07 PM: - force: true 5:14:07 PM: from: /product/M1K%20MEDIANT%201000 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac1k2b 5:14:07 PM: - force: true 5:14:07 PM: from: /product/m1k%20mediant%201000 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac1k2b 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/M1K%20MEDIANT%201000-AC108M-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac108m 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=ac108m 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac108m 5:14:07 PM: - force: true 5:14:07 PM: from: /products/audiocodes/AC124M 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac124m 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/M1K%20MEDIANT%201000-AC124M-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac124m 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=ac124m 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac124m 5:14:07 PM: - force: true 5:14:07 PM: from: /products/audiocodes/AC124O 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac124o 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/M1K%20MEDIANT%201000-AC124O-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac124o 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=ac124o 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac124o 5:14:07 PM: - force: true 5:14:07 PM: from: /products/audiocodes/AC124S 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac124s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/M1K%20MEDIANT%201000-AC124S-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac124s 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=ac124s 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac124s 5:14:07 PM: - force: true 5:14:07 PM: from: /products/audiocodes/AC12SS 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac12ss 5:14:07 PM: - force: true 5:14:07 PM: from: /product/MP112%20MEDIAPACK%20112 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac12ss 5:14:07 PM: - force: true 5:14:07 PM: from: /product/mp112%20mediapack%20112 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac12ss 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/MP112%20MEDIAPACK%20112-AC12SS-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac12ss 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/product_details.php?ITEMNO=ac12ss 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac12ss 5:14:07 PM: - force: true 5:14:07 PM: from: /products/audiocodes/AC14OS 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac14os 5:14:07 PM: - force: true 5:14:07 PM: from: /product/MP114%20MEDIAPACK%20114 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac4sos 5:14:07 PM: - force: true 5:14:07 PM: from: /product/mp114%20mediapack%20114 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac4sos 5:14:07 PM: - force: true 5:14:07 PM: from: /resellers/MP114%20MEDIAPACK%20114-AC14OS-TELEPHONY%20GATEWAYS-AUDIOCODES.php 5:14:07 PM: status: 301 5:14:07 PM: to: /products/ac14os 5:14:07 PM: Step completed. 5:14:07 PM: ​ 5:14:07 PM: (@netlify/plugin-gatsby onBuild completed in 633ms) 5:14:07 PM: Build step duration: @netlify/plugin-gatsby onBuild completed in 633ms 5:14:07 PM: ​ 5:14:07 PM: Functions bundling 5:14:07 PM: ──────────────────────────────────────────────────────────────── 5:14:07 PM: ​ 5:14:07 PM: Packaging Functions from .netlify/functions-internal directory: 5:14:07 PM: - __api/__api.js 5:14:07 PM: - __dsg/__dsg.js 5:14:07 PM: - __ssr/__ssr.js 5:14:07 PM: ​ 5:14:09 PM: ​ 5:14:09 PM: (Functions bundling completed in 2.1s) 5:14:09 PM: Build step duration: Functions bundling completed in 2165ms 5:14:09 PM: ​ 5:14:09 PM: @netlify/plugin-gatsby (onPostBuild event) 5:14:09 PM: ──────────────────────────────────────────────────────────────── 5:14:09 PM: ​ 5:14:09 PM: Step starting. 5:14:09 PM: Step started. 5:14:09 PM: Plugin logic started. 5:14:12 PM: Enabling Gatsby API/SSR/DSG support 5:14:12 PM: Plugin logic ended. 5:14:12 PM: Stop closing. 5:14:12 PM: Step ended. 5:14:12 PM: Step completed. 5:14:12 PM: ​ 5:14:12 PM: (@netlify/plugin-gatsby onPostBuild completed in 3.1s) 5:14:12 PM: Build step duration: @netlify/plugin-gatsby onPostBuild completed in 3115ms 5:14:12 PM: ​ 5:14:28 PM: (Netlify Build completed in 3m 38.9s) 5:14:28 PM: Build step duration: Netlify Build completed in 218921ms 5:15:15 PM: Section completed: building 5:15:30 PM: Finished processing build request in 6m27.487s ```

let me know if you need the deploy log, browser seems to hang up when i attempt to copy the deploy log

jeffgo10 commented 5 months ago

@pieh with regards to your comment, I was thinking that this might be a cache issue. but we did try to put this in a new, fresh netlify site, the problem is still there. see the link below:

`test site` ``` master--gtek-test.netlify.app ```

so i conclude this shouldn't be a cache issue.

please let me know on what was the issue about or if this is possible to resolve asap. thanks