From 3b457c3df584bc446ed551cb3e68e28442406312 Mon Sep 17 00:00:00 2001 From: Gonzalo Riestra Date: Thu, 8 Aug 2024 13:49:53 +0200 Subject: [PATCH 1/3] Upgrade Cloudflared and use the new release for ARM64 --- packages/plugin-cloudflare/src/install-cloudflared.ts | 4 ++-- packages/plugin-cloudflare/src/tunnel.ts | 9 --------- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/packages/plugin-cloudflare/src/install-cloudflared.ts b/packages/plugin-cloudflare/src/install-cloudflared.ts index ea3590473d..52996f317f 100644 --- a/packages/plugin-cloudflare/src/install-cloudflared.ts +++ b/packages/plugin-cloudflare/src/install-cloudflared.ts @@ -15,7 +15,7 @@ import {pipeline} from 'stream' // eslint-disable-next-line no-restricted-imports import {execSync, execFileSync} from 'child_process' -export const CURRENT_CLOUDFLARE_VERSION = '2024.6.1' +export const CURRENT_CLOUDFLARE_VERSION = '2024.8.2' const CLOUDFLARE_REPO = `https://github.com/cloudflare/cloudflared/releases/download/${CURRENT_CLOUDFLARE_VERSION}/` const LINUX_URL: {[key: string]: string} = { @@ -26,7 +26,7 @@ const LINUX_URL: {[key: string]: string} = { } const MACOS_URL: {[key: string]: string} = { - arm64: 'cloudflared-darwin-amd64.tgz', + arm64: 'cloudflared-darwin-arm64.tgz', x64: 'cloudflared-darwin-amd64.tgz', } diff --git a/packages/plugin-cloudflare/src/tunnel.ts b/packages/plugin-cloudflare/src/tunnel.ts index 54d929e325..5115e40d5c 100644 --- a/packages/plugin-cloudflare/src/tunnel.ts +++ b/packages/plugin-cloudflare/src/tunnel.ts @@ -134,15 +134,6 @@ class TunnelClientInstance implements TunnelClient { signal: this.abortController.signal, // eslint-disable-next-line @typescript-eslint/no-explicit-any externalErrorHandler: async (error: any) => { - if (error.message.includes('Unknown system error -86')) { - // Cloudflare crashed because Rosetta 2 is not installed - this.currentStatus = { - status: 'error', - message: `Could not start Cloudflare tunnel: Missing Rosetta 2.`, - tryMessage: "Install it by running 'softwareupdate --install-rosetta' and try again", - } - return - } // If already resolved, means that the CLI already received the tunnel URL. // Can't retry because the CLI is running with an invalid URL if (resolved) { From fcec0562704ccf3cf1f0526d1ec10f84095022ed Mon Sep 17 00:00:00 2001 From: Gonzalo Riestra Date: Thu, 8 Aug 2024 13:55:08 +0200 Subject: [PATCH 2/3] Fix tests --- .../src/install-cloudflared.test.ts | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/packages/plugin-cloudflare/src/install-cloudflared.test.ts b/packages/plugin-cloudflare/src/install-cloudflared.test.ts index a8c009c885..67f13fa21f 100644 --- a/packages/plugin-cloudflare/src/install-cloudflared.test.ts +++ b/packages/plugin-cloudflare/src/install-cloudflared.test.ts @@ -36,7 +36,7 @@ describe('install-cloudflare', () => { expect(global.fetch).not.toHaveBeenCalled() }) - test('install works when system is mac', async () => { + test('install works when system is mac and x64', async () => { // Given const env = {} @@ -46,7 +46,22 @@ describe('install-cloudflare', () => { // Then // expect(global.fetch).not.toHaveBeenCalled() expect(global.fetch).toHaveBeenCalledWith( - 'https://github.com/cloudflare/cloudflared/releases/download/2024.6.1/cloudflared-darwin-amd64.tgz', + 'https://github.com/cloudflare/cloudflared/releases/download/2024.8.2/cloudflared-darwin-amd64.tgz', + expect.anything(), + ) + }) + + test('install works when system is mac and arm64', async () => { + // Given + const env = {} + + // When + await install(env, 'darwin', 'arm64') + + // Then + // expect(global.fetch).not.toHaveBeenCalled() + expect(global.fetch).toHaveBeenCalledWith( + 'https://github.com/cloudflare/cloudflared/releases/download/2024.8.2/cloudflared-darwin-arm64.tgz', expect.anything(), ) }) @@ -61,7 +76,7 @@ describe('install-cloudflare', () => { // Then // expect(global.fetch).not.toHaveBeenCalled() expect(global.fetch).toHaveBeenCalledWith( - 'https://github.com/cloudflare/cloudflared/releases/download/2024.6.1/cloudflared-linux-amd64', + 'https://github.com/cloudflare/cloudflared/releases/download/2024.8.2/cloudflared-linux-amd64', expect.anything(), ) }) @@ -75,7 +90,7 @@ describe('install-cloudflare', () => { // Then expect(global.fetch).toHaveBeenCalledWith( - 'https://github.com/cloudflare/cloudflared/releases/download/2024.6.1/cloudflared-windows-amd64.exe', + 'https://github.com/cloudflare/cloudflared/releases/download/2024.8.2/cloudflared-windows-amd64.exe', expect.anything(), ) }) From 93bfa6419d96a556de6f533281311d6380bed818 Mon Sep 17 00:00:00 2001 From: Gonzalo Riestra Date: Thu, 8 Aug 2024 14:09:30 +0200 Subject: [PATCH 3/3] Add changeset --- .changeset/khaki-shirts-taste.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/khaki-shirts-taste.md diff --git a/.changeset/khaki-shirts-taste.md b/.changeset/khaki-shirts-taste.md new file mode 100644 index 0000000000..66d943c580 --- /dev/null +++ b/.changeset/khaki-shirts-taste.md @@ -0,0 +1,5 @@ +--- +'@shopify/plugin-cloudflare': patch +--- + +Upgrade cloudflared to 2024.8.2 and use the arm64 release